Your browser lacks required capabilities. Please upgrade it or switch to another to continue.
Loading…
There's not too much to this bathroom, but you can get cleaned up and apply makeup.
<<=SugarCube.getLib().Images.drawLocation('inner-bathroom.jpg');>>
[[Take Shower | IC Shower]]
<<if SugarCube.getLib().PlayerModel.isWearingMakeup() == false>>\
[[Put on Makeup| IC Makeup]]
<<else>>\
[[Remove Makeup| IC Remove Makeup]]
<</if>>\
[[Mirror|IC Mirror]]
[[Shave |IC Shave]]
[[Inner chamber]]You enter the shower - it quickly cleans every surface of you completely, and blow-dries you.
As usual, you put your clothes in the auto-cleaner before the shower.
<<=SugarCube.getLib().Tasks.removeTask("player-needs-shower");>>\
<<=SugarCube.getLib().PlayerModel.toggleMakeup(false)>>\
<<set $clothesAreDirty = false>>\
<<=SugarCube.getLib().Images.drawAction('inner-bathroom2.jpg');>>
The clothes come out smelling fresh, and somehow "like sunshine", but also with the slightest hint of a perfume.
[[Inner chamber bathroom]]You apply your makeup.
<<=SugarCube.getLib().Images.drawAction('ic-makeup.webp');>>
<<=SugarCube.getLib().PlayerModel.toggleMakeup(true)>>\
[[Inner chamber bathroom]]You remove your makeup.
<<=SugarCube.getLib().PlayerModel.toggleMakeup(false)>>\
[[Inner chamber bathroom]]<<=SugarCube.getLib().MirrorUX.drawICMirrorView();>>You tidy things up. This is just about being prepared.
<<=SugarCube.getLib().Images.drawAction('reshave.webp');>>
You shower up and moisturize.
<<=SugarCube.getLib().Images.drawAction('moisturize.webp');>>
<<=SugarCube.getLib().PlayerModel.shave()>>\
[[Inner chamber bathroom]]You pull up an internal overview about Maristech. Everyone knows about their futuristic robotics stuff, but you didn't realize the full extent of what they've been involved in.
<b>Overview of maristech business units</b>
Building from early innovations of its founders and strategic acquisitions, Maristech is committed to a safe and prosperous future for all of us. Maristech is an equal opportunity employer, committed to a diverse and inclusive workforce.
Robotics & Automation Assistance Division:
* "MarisAuto" [[Maristech Automotive Group]]
* "MarisLog" [[Maristech Logistics Systems]]
* "MarisHome" [[Maristech Domestic Solutions]]
* "MarisLink" [[Maristech Office Systems]]
Federal Solutions Division: EVP [[Anders Rhodes]]
* "MarisMerc" [[Maristech Defense Services]]
* "MarisPen" [[Maristech Rehabilitation Systems]]
* "MarisSpook" [[Maristech Intelligence Services]]
* "MarisVotes" [[Maristech Assisted Democracy Solutions]]
Advanced Research & New Frontiers Division: EVP [[Gunther Fraunhoffer]] Ph. D
* "MarisHealth" [[Maristech Health Sciences and Genomics]]
* "MarisStar" [[Maristech Space Systems]]
* "MarisSea" [[MarisTech Aquatic Environments Research Group]]
* "MarisComm" [[Maristech FTL Communications Research Group]]
MarisTech Corporate Departments
* Human Resources
* Legal and Government Affairs
* Finance and Accounting
* Information Technology
* Office of Marketing and Strategy
* Sales and Solution Services
[[Use console]]MarisLink - Maristech Office Systems
MarisTech Office systems offers a range of novel and innovative alternatives for human-computer interfaces for input and biofeedback. Our flagship offering, "Neuralink" is used by 32 companies in the Fortune 500.
Our 230 employees are proud of our work to bring more accessible, inclusive and satisfying workspaces to workers everywhere.
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]MarisAuto - Maristech Automotive Group
The average commuter spends 47 minutes a day on driving their vehicle. The mission of the MarisAuto team is to enable commuters everywhere to find better uses for that time, be that business or pleasure.
<<=SugarCube.getLib().Images.drawAction('future-car.jpg');>>
If you ride in a self driving, fully autonomous vehicle, there's an 83% chance it uses union made, MarisAuto parts.
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]MarisLog - Maristech Logistics Services
Thanks to proprietary optimizations aligned to a challenging regulatory climate, Maristech enjoys pride of place as a pioneer and continuing leader in automated logistics, with warehouse processing and package delivery solutions for many Fortune 500 partners.
As of 2017, the Maristech logistics team is 23000 employees strong, working side-by-side with andro-bots in over 1700 distribution centers, bringing enhanced economies of scale, administered in full compliance with the [[Butler-Hancock Act]].
<<if visited("Maristech Logistics Systems") <=1>>\
You get a notification from the computer:
<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>>, PLEASE REST UP IN THE POD TONIGHT. YOU WILL BE Learning about logistics starting 9AM AS AN OPERATIONS TRAINEE, IN A REMOTE WORK ARRANGEMENT WITH a team at the local DISTRIBUTION CENTER TEAM, UNTIL WE CAN SAFELY MANAGE FOR YOUR CONDITION. ");>>
<<=SugarCube.getLib().PlayerModel.setReadyForSleep()>>\
<</if>>\
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]MarisHome - Maristech Domestic Solutions
In today's 24/7 world, families have a hard time keeping up with all of the cleaning, cooking, childcare and 'other' domestic obligations.
<<=SugarCube.getLib().Images.drawAction('family-stress.jpg');>>
Your family deserves peace of mind. MarisHome can help. Founded by a hard working mother who knows how hard it can be to balance all the demands of work and life, we want to help free you to do those things that give your life greater meaning.
<<=SugarCube.getLib().Images.drawAction('family-stock-art.jpg');>>
MarisHome offers some of the finest in domestic service solutions, suitable to fit any household requirements. Whether you are an old age retiree who can use a hand every couple of week, or a mother with 8 children, who needs live-in help, we can provide a plan which will work for you.
As of 2017, MarisHome has 7000 MarisMaid Automatons (MMA's) in operation to service your every need. And your family can rest assured knowing MarisHome remotely overseen drone maids are the only Federally accredited provider of robot services in full compliance with the Butler-Hancock act, and providing maximal personal privacy.
<<=SugarCube.getLib().Images.drawAction('robot-maid-1.png');>>
Testimonials:
<i>I can't believe we didn't do this sooner. Before MMA-1103 came into our lives, I was ready to have a nervous breakdown as my husband and kids would just making messes everywhere. I could never keep up, and never had time for anything, but that all changed. Our 'Emma' has been a godsend.</i>
-Kelli, 32 - Jacksonville, Fl
<i>I was a little reluctant to having a bucket of bolts skulking around my house, but the wife suggested it would be a good idea, and wouldn't take no for an answer. Well, happy wife, happy life - I said ok. Best decision ever, these things are a game changer. They really know how to polish anything in their path... Floors, knobs, you name it.</i>
-Mike, 41 - Boise, Id
<i>After my hip replacement surgery, it's been hard to do chores like I used to. My stepson said I should try a robot to help out. I was a little afraid it would murder me in my sleep, but the nice robot helps take care of me, and makes a mean bowl porridge.</i>
-Ethel, 73 - Oak Park, Il
<i>No complaints. Not gonna lie, my condo was a bit of a disaster area. The bot figured out some nice ways to clean things up. Beyond cleaning, if you're willing to do some research into their features, these things can do a lot of other cool things for you as well. </i>
-Stan, 28 - Cleveland, Oh
<i> Ladies, my MMA has done wonders to help me bring my household into order. I can't even begin to describe the transformation we achieved in my home. The maid has taught me the skills to run my household and husband properly. Now, I feel so empowered to really fulfill all my needs in a way I never had before. These days, hubby is attentive to all the details and isn't a slob. My maid only needs to come by every couple of weeks to check on things, but has helped me to ensure my home is exactly how I need it to be. We couldn't be happier.</i>
-Karen, 36 - Austin, Tx
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]Anders Rhodes M.L.
<<=SugarCube.getLib().Images.drawPerson('anders-rhodes.jpg');>>
A pioneer in bringing the efficiencies of private sector automation solutions to the public sector.
Served multiple tours with the Marines in Afghanistan from 2002-2005. Founded Rhodes Private Military Company which introduced MarisTech robots into combat roles on the battlefield. RPMC was acquired into the MarisTech family in 2009 and Anders became VP of [[Maristech Defense Services]]. In 2010, his team brought out their next innovation, [[Maristech Rehabilitation Systems]], followed by [[Maristech Intelligence Services]] in 2013. In the face of growing disinformation campaigns, hi group's latest innovation [[Maristech Assisted Democracy Solutions]] is being introduced to communities around the world.
Executive VP for Maristech Government Solutions Division.
In recognition of his expertise and years of devoted service to Country and Freedom, the White House has asked him to serve once more, as Acting Head of the Department of Humanity.
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]With the rising costs of incarcerating criminal offenders for long sentences, many in our communities rightfully ask - "is there no better way"?
Maristech says "YES".
With Maristech's world renowned automation and expert systems, we have started pilot projects with 4 prisons on innovative new techniques for behavior control and identity optimization, suitable for reforming the toughest criminals.
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]Maristech Assisted Democracy Solutions
INADEQUATE CLEARANCE - CLASSIFIED
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]Maristech Defense Services
Keeping us safe from threats and emotional turmoil, at home and abroad.
That's job #1 for the 3100 brave men and women heroes of the "MarisMerc" team.
<<=SugarCube.getLib().Images.drawAction('maris-merc.jpg');>>
Operational Services:
INADEQUATE CLEARANCE - CLASSIFIED
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]Maristech Intelligence Services
We pride ourselves in ensuring our nation's communications infrastructure can operate unimpeded from foreign threats, while providing actionable intelligence for our government agencies at a lower cost per signal, than any other vendor in the business.
The Intelligence Services team has 1150 contractors working side by side with the top agencies of our country and allies.
Operational Services:
INADEQUATE CLEARANCE - CLASSIFIED
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]The success of the human genome project to reveal the deepest secrets of ourselves has opened the door to recognizing and repairing flaws which less than 50 years ago would have been a death sentence. The Health sciences team currently counts 600 researchers in its ranks.
The primary mission of the health sciences team is to reduce the mortal side effects of aging.
<<=SugarCube.getLib().Images.drawAction('dna.jpg');>>
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]Humanity is so close to the stars. The 800 members-strong Maristech Space Systems team's job is to help get us the rest of the way there.
"Mariner" heavy lift rocket program is being developed on the idea of pursuing revolutionary cost reductions, with a goal of low earth space-lift capabilities costing $10/kg by 2045.
<<=SugarCube.getLib().Images.drawAction('space-rocket.jpg');>>
The Maristech manned low earth orbit station is host to a rotating international crew of 9 scientific crew.
<<=SugarCube.getLib().Images.drawAction('space-systems.jpg');>>
Lagrange research stations
INADEQUATE CLEARANCE - CLASSIFIED
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]Our oceans are a vast untapped frontier for new discoveries. The Aquatic Environments group has five manned research stations and employs 220 full time MarisTech employees. Thanks to a vigorous pattern of public-private partnerships, we also host around 100-200 visiting researchers from public institutions making use of our state of the art facilities to advance the cause of human knowledge.
<<=SugarCube.getLib().Images.drawAction('undersea-colony.jpg');>>
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]<<=SugarCube.getLib().Images.drawAction('quantum-entanglement.jpg');>>
The FTL Communications group has been working to improve the reliability and cost effectiveness of Quantum entanglement for secure, high bandwidth, point to point communications streams.
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]Gunther Fraunhoffer Ph. D
With 50 years of academic experience, Gunther has been a prolific contributor to the scientific community, and a source of inspiration for the Scientists everywhere. The inventor of the Quantum Ansible now spends most of his time mentoring a new generation of creative minds throughout and beyond Maristech.
<<=SugarCube.getLib().Images.drawPerson('gunther-fraunhoffer.jpg');>>
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]You look admiringly at the attractive lines of the empty suit, which towers an impressive 8 inches over you.
Although designed with function in mind, the suit seems to have been made with an eye to aesthetics. That is to say, it looks elegant and powerful, built like its fit for an alien goddess, which arouses attraction and fear in equal measure. The most striking details are the unnaturally long legs and the exaggerated hourglass of the torso.
<<=SugarCube.getLib().Images.drawAction("doll-suit.jpg")>>
The exterior metal surfaces are cold to the touch. You ask the computer to open the suit.
<<=SugarCube.getLib().Dialogue.speaker("Please stand back. Initiating. ")>>
The suit make a set of diagnostic chimes, and then you quickly see a series of panels open out from the front. Near the waist, you see a couple of handles, which are presumably used to assist the wearer in steadying themselves as the mount into the suit. For a suit which would had repeatedly contained a naked wearer, you are pleasantly surprised that the main scent is a subtle perfume.
You wonder what wearing this suit was like for Marissa, as you notice the suit has movable sections covering the wearer's genitals.
Looking down at the "feet", the suit has integrated boots providing only enough space for the wearer to daintily slide their feet in a perfectly vertical en pointe position.
You proceed in attempting to don the suit.
You start by turning to stand just in front, facing away from the suit. Next you grab hold of the handles, which are remarkably sturdy.
You attempt to slide you foot down into the first boot. With some shifting, your toes get aligned within soft spacers and the balls of your feet land in the heavily padded boots.
<<=SugarCube.getLib().Dialogue.speaker("Heel weight detected. Closing leg panels.")>>
With this, the panels for the legs close up starting from the bottom. It catches you a bit by surprise.
<<=SugarCube.getLib().Dialogue.heir("Oh, geez that's really cold.")>>
You shiver on the first touch. Looking down, you see the funny sight of your human body with "stockings" of these flattering robotic legs.
<<=SugarCube.getLib().Dialogue.speaker("Please slide hands into suit gloves.")>>
With some care you extend your arms outward into the sleeves of the suit. You have to struggle a bit to get past the wrists. The gloves are a very snug, Marissa's hands must have been a bit smaller than yours, but you make it work. You're starting to sweat a little with excitement.
<<=SugarCube.getLib().Dialogue.speaker("Hands detected, closing arm panels.")>>
Starting from the gloves, you feel the exterior shell of the arms close in on the slack. It feels odd to see these graceful lines and reflective sheen of the arms.
<<=SugarCube.getLib().InnerChamber.getDollSuitPassageEnd()>><<=SugarCube.getLib().PlayerModel.togglePlayerHidden(true)>>\
<<if SugarCube.getLib().Tasks.hasTask("train-for-doll-suit")>>\
<<=SugarCube.getLib().Tasks.removeTask("train-for-doll-suit");>>\
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("slim-for-doll-suit")>>\
<<=SugarCube.getLib().Tasks.removeTask("slim-for-doll-suit");>>\
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("wear-doll-suit")>>\
<<=SugarCube.getLib().Tasks.removeTask("wear-doll-suit");>>\
<</if>>\
<<=SugarCube.getLib().Dialogue.speaker("Please open mouth to receive oral-nasal adaptor, Style 2. Keep tongue at floor of mouth.")>>
You see an arm bringing in a small plate with a partially hollow sphere and a couple of tubes above it.
<<=SugarCube.getLib().Dialogue.heir("It's so big. I don't know if I can...")>>
With some effort you widen your jaw open to accept the sphere. A couple sets of soft straps on the adaptor seem to somehow pull themselves around the back of your head, and you hear a soft but decisive click and feel a slight self tensioning.
<<=SugarCube.getLib().Dialogue.speaker("Multi-purpose oral adapter installed and anchored.")>>
<<=SugarCube.getLib().Dialogue.heir("mpph ppph...")>>
You're not really able to form coherent words with the sphere in your mouth.
<<=SugarCube.getLib().Dialogue.speaker("Preparing environmental isolation protocols. Suit joints and wearer secured. ")>>
You feel the suit orienting you to a very stiff and formal pose, and then feel your head gently forced to orient a high, straightforward looking position.
<<=SugarCube.getLib().Dialogue.speaker("Inserting nasal breathing tubes.")>>
From the oral adaptor plate, you feel two tubes worming their way deep up your nasal cavity, where they finally stop.
<<=SugarCube.getLib().Dialogue.speaker("Testing ventilation inner valves.")>>
In that instant, your lungs are unable to move air. Your mouth and nose are completely cut off for air.
[[You try not to panic]]The sudden realization that the suit could easily suffocate you is unsettling.
<<=SugarCube.getLib().Dialogue.speaker("Adapter fit verified. Opening valves. Integrating helmet.")>>
From the ceiling you hear a sound approaching you. You start to see the inside of what seems to be an clam-shelled helmet coming down over you. It doesn't look spacious.
The front clamshell is now closing around you, cutting off all light. A couple of high resolution screens right in front of your eyes turn on. Through them, you see yourself from the a disembodied perspective of a camera, along with a complex display of status indicators, presumably about the suit.
You feel some weight applying itself to the front of your head, and sense that the air coming to you is now slightly different from before. Your head no longer feels held rigidly in place, and then more weight around the back of your head. A long series of click-click-click sounds, going from the top to the bottom of the helmet. Last, some pressure around your neck. It seems like the suit neck and helmet are connected up.
<<=SugarCube.getLib().Dialogue.speaker("Helmet mounted. Neurolink started. ")>>
<<=SugarCube.getLib().Dialogue.speaker("Engaging auditory isolation protocol.")>>
You feel what seems to be large earbuds close in over your ears. Everything is so much quieter, it is disorienting. With the helmet closed, your breaths was the most noticeable sound. Suddenly, that goes quiet too. You panic a moment, but are relieved that your lungs are still getting air. Curiously, you can still hear the ambient noises of the room. That's weird.
<<=SugarCube.getLib().Dialogue.speaker("Please acknowledge to proceed on next steps.")>>
<<=SugarCube.getLib().Dialogue.heir("Computer, I can't move my mouth while I'm gagged-")>>
<<=SugarCube.getLib().Dialogue.speaker("User confirmation verified.")>>
Oh, right the Neuro-link stuff must have picked that up... You hear your voice clearly enunciating on the earbuds, but your throat and tongue muscles somehow "knew" to stay dormant.
[[This stuff takes some getting used to]]<<=SugarCube.getLib().Dialogue.speaker("Applying neuro-conductive gel.")>>
If you had to describe to someone, you'd say it was as if someone was applying sunscreen. With the help of 40 very gentle hands. Seemingly caressing every part of your body. And lingering to really make sure they don't miss any spots.
The sensations are getting you more aroused, and you realize that you have have been letting out some moans.
<<=SugarCube.getLib().Dialogue.speaker("Bypassing Primary Stabilizer Rod due to inadequate wearer volume. Neuralink protocol will provide experience approximation.")>>
<<=SugarCube.getLib().Dialogue.speaker("Inserting secondary stabilizer rod now.")>>
You have a sensation of something warm, solid and wet going to a familiar place deep inside you, and are really losing focus at this point. The robot-doll on the screen seems to pushing out her chest and tilting her head back. A casual observer would suspect she was enjoying herself.
<<=SugarCube.getLib().Dialogue.speaker("Ensuring touch-sensitive suit-fit.")>>
You feel sections of the suit compressing around your body. Where before there were some spots in the suit where you felt fluid gaps or voids, every surface of your body now seems to be in intimate contact with the suit. The torso section is pressing in around you to the point that your breaths are shallower than normal, but not to the point of causing pain.
<<=SugarCube.getLib().Dialogue.speaker("Applying suit closure anchors for optimal structural integrity.")>>
A bunch of arms with what look to be tiny spinning screwdrivers dance over suit. It seems like the gel is seeping out of the suit from the pressure.
<<=SugarCube.getLib().Dialogue.speaker("How is the current fit? Are there any pinch points, or would you like it tightened?")>>
<<=SugarCube.getLib().Mood.compliantLink("You are turned on by the sensation... Tighter please",4)>>
<<=SugarCube.getLib().Mood.compliantLink("It's fine")>>
<<=SugarCube.getLib().Mood.defiantLink("It feels hard to breathe",2)>><<=SugarCube.getLib().Mood.addCompliance("You aren't able to hide your arousal.")>>
<<=SugarCube.getLib().Dialogue.heir("I love the look and how the suit feels... Can you tighten it a little more?")>>
<<=SugarCube.getLib().Dialogue.speaker("Closing surplus voids.")>>
The suit seems to pull in the torso a little more. You find yourself forced to exhale to make up for the lost space, but you love the sensation.
<<=SugarCube.getLib().Dialogue.speaker("Proceeding with Cleaning.")>>
[[Cleaning Suit]]You were concerned it could be a little tight, but it's just about right.
<<=SugarCube.getLib().Dialogue.heir("It seems to fit ok.")>>
<<=SugarCube.getLib().Dialogue.speaker("Good. Proceeding with Cleaning.")>>
[[Cleaning Suit]]<<=SugarCube.getLib().Mood.addCompliance("You aren't really comfortable with where this is going.")>>
<<=SugarCube.getLib().Dialogue.heir("This kind of tight! I'm not sure I can breathe like this. Is this safe?")>>
<<=SugarCube.getLib().Dialogue.speaker("Scanning... All areas of coverage are within acceptable tolerances for pressure. User ventilation capacity within safe parameters. Proceeding with Cleaning.")>>
[[Cleaning Suit]]<<=SugarCube.getLib().Dialogue.speaker("Activating neuro-tactile sensory propagators.")>>
Before this moment, you could barely feel anything through the suit. Suddenly, you can feel the draft on your "naked" metal skin.
<<=SugarCube.getLib().Dialogue.speaker("Applying cleaning fluid and removing contaminants from dollsuit exterior.")>>
Suddenly a couple of gusts of compressed cleaning fluid on the suit are transmitted to some very sensitive parts of your body. This is followed by the sensation of towels buffing the dollsuit to a glossy shine worthy of a car dealership.
<<=SugarCube.getLib().Dialogue.heir("aaah... oh... oh my..")>>
<<=SugarCube.getLib().Dialogue.speaker("Initialization mode completed. Releasing actuation locks and transferring vision and sound to first person experience.")>>
The screen has shifted to your own perspective, or at least from a camera in the helmet. You can now move your body and look around. It takes you some time to become accustomed to the reality that the strange robot hands in front of you are actually yours.
You can't but help to cup your breasts. The metal surface over them doesn't flex, but you feel everything. As your eyes drift down to your waist, you notice it seems unusually small in relationship to your hips. All of the vertical seams you saw on the legs, torso and arms of the suit have completely disappeared into the metal. As you run your finger down trying to find the gaps, they just feel like continuous pieces of perfectly smooth metal.
Wow, just getting into this thing involves advanced technology which is a little more elaborate than some buttons or zippers on clothing. You are completely enclosed and cut off from the world. It's not so different from being an astronaut or something. You have to hope everything works as it is supposed to. It seemed to be ok for all the time Marissa used it though, right?
<<if hasVisited("Marissa - Dollsuit Message")>>\
[[In-Dollsuit Menu]]
<<else>>\
<<=SugarCube.getLib().Dialogue.speaker("Attention, a message from Marissa")>>
Speaking of the devil...
[[Marissa - Dollsuit Message]]
<</if>>\<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(true)>>\
<<if hasVisited("Proceed with Dollsuit Training")>>\
Once more the suit is holding your naked body tight.
<<=SugarCube.getLib().Images.drawAction("doll-suit.jpg")>>\
<</if>>\
[[Marissa - Dollsuit Message]]
<<if !hasVisited("Proceed with Dollsuit Training")>>\
[[Train in Dollsuit]]
<<else>>\
<<if SugarCube.getLib().DollsuitWork.hasDangerousAldopril()>>\
[[Become one with the Dollsuit]]
<<else>>\
[[Work in dollsuit]]
<</if>>\
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("try-aldopril") || hasVisited("Aldopril Menu")>>\
[[Aldopril Menu]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("meet-stacy-as-drone")>>\
[[Can I meet Stacey as a drone?]]
<</if>>\
[[Inner chamber]]<div class="letter">\
Dear Jenny,
If you are reading this, you have gained access to my custom dollsuit and personal logs, and must now be well on your way with realizing your inheritance. If you haven't yet, please review the latest status report from the Sisters, via the Temporal Ansible as discussed from my logs. I hope that these materials make the urgency of your efforts clear.
I recall all too well your reluctance and hesitance to behave yourself in a manner befitting a lady in your position. As such, you can rest assured of how proud I am of you for reaching this point. I won't pretend that your role in all of this isn't a considerable burden or a sacrifice, or that you would have liked to be free to pursue a different path in your life, and I am sorry for that. With the benefit of time, I think you will see how painfully clear it is that you must be the one to bear this burden, rather than allowing a pawn of the board to set the company on a horrific path.
This suit has been an invaluable tool for me to collect undistorted, hands on data about our customers, as I'm sure you will learn to appreciate. Finally, I cannot understate the need to maintain balance, given the stresses you will face. With this concern in mind, VAL can be expected to start providing more options for stress relief, both with the Dollsuit and the pod. Your responsibilities may be great, but that doesn't mean you can't enjoy yourself at times.
All my love,
Marissa
P.S. I must caution you, not everyone will be pleased with the prospect of a young woman taking the reins at a corporate juggernaut like Maristech, even if they are heiress to my estate. I'm sure VAL is exercising due diligence in this process to protect your anonymity before our arrangement is a fait accompli, but please be vigilant out there.
</div>
<<if (!SugarCube.getLib().Tasks.hasTask("what-is-temporal-ansible") && SugarCube.getLib().CoreUtils.visitedCount("Go see the good doctor") == 0)>>\
<<=SugarCube.getLib().Dialogue.speaker("I am sorry. It is unclear what details Marissa was referring to here. I was unable to cross reference any materials in MarisTech Corp, Marissa's personal logs, or my own records which relate to these mentions of a 'temporal ansible' nor to her having any siblings. I will attempt to search secondary storage for alternate sources. You may also want to inquire with the human capital of MarisTech about this.")>>
<<=SugarCube.getLib().Tasks.addTask("what-is-temporal-ansible");>>
<</if>>\
[[In-Dollsuit Menu]]<<if SugarCube.getLib().WorkModel.canWorkAtComputer()>>\
<<=SugarCube.getLib().Dialogue.speaker("Now, then <<=SugarCube.getLib().PlayerModel.getHeirName()>>, it is time for us to commence the next step in your training.")>>
<<=SugarCube.getLib().Dialogue.speaker("While Marissa was a very competent woman within Maristech and a capable athlete, even she found her normal mindset was not effective in becoming a dollsuit operator. It must first be acknowledged that you do not bring the same competencies she did.")>>
<<=SugarCube.getLib().Dialogue.speaker("All is not lost, however. In the course of considerable rigorous experimentation, Marissa and I discovered that the process of dollsuit mastery can be 'accelerated' through familiarity, structured repetitive exercises and operant conditioning. Eventually, we were able to mold her into a perfect operator of the dollsuit, which was a source of considerable pride for both of us. The same can be done for with you, but it will require your complete, total and undivided submission to your training. Is this acceptable?")>>
<<=SugarCube.getLib().Dialogue.heir("Does it need to be such a big deal, can't you just have me operate it, learn as I go? You know, wing it?")>>
<<=SugarCube.getLib().Dialogue.speaker("I'm sorry, but I can't do that, <<=SugarCube.getLib().PlayerModel.getHeirName()>>. Maristech holds the advanced Drone protocol to an extremely high standard. Certain aspects of the experience simply cannot be implemented with a less than a completely motivated operator. One does not simply 'wing it'. We need to know you are mentally and physically prepared for the task. If you feel that less than giving your everything is an option, we can stop now, with no consequences.")>>
[[Ok, I willingly submit to your training|Proceed with Dollsuit Training]]
<<else>>\
<<=SugarCube.getLib().WorkModel.explainWorkAtComputer()>>
<</if>>\
[[Maybe later|In-Dollsuit Menu]]<<=SugarCube.getLib().Dialogue.heir("Ok, I willingly submit to your training")>>
<<=SugarCube.getLib().Dialogue.speaker("Very good. You will find it is best to submit in the service of your optimization. You will find there are benefits to being a compliant operator. Activating vaginal neurolink simulator.")>>
You feel a slow wave of pleasure building inside you. It's weird in that the sensation feels like its near where your caged penis is, but its definitely not that, and it's not your ass, which is just mildly stimulated. That wave, you feel it filling you up, an it makes your skin tingle, but the sensation diminishes.
<<=SugarCube.getLib().Dialogue.heir("that feels... so... amazing. Can you give me a little more?")>>
<<=SugarCube.getLib().Dialogue.speaker("Patience. Pleasure will be administered as reward for diligent customer service.")>>
<<=SugarCube.getLib().Dialogue.speaker("An advanced drone must be discreet and speak only when instructed. A non-compliant drone is not to be tolerated.")>>
<<=SugarCube.getLib().Dialogue.heir("What, do you mean, like...")>>
You suddenly feel the stinging sensation of a piercing electrical tingle on your breasts.
<<=SugarCube.getLib().Dialogue.heir("OWWW!")>>
<<=SugarCube.getLib().Dialogue.speaker("That is a small preview of a corrective feedback response. For your sake, I hope we don't need to explore the full range of mechanisms too soon.")>>
It seems quite clear the computer wants you to be quiet for now.
<<=SugarCube.getLib().Dialogue.speaker("Now, you will be conducting a trial house cleaning to review your technique under my supervision. Transferring your awareness in...3..2..1")>>
[[You hear the sounds of driving]]You are in darkness, you can hear a younger man talking to an older, gruff guy, but it's muffled. There's some vibration and rattling - you're probably in a vehicle. You can't seem to move.
<<=SugarCube.getLib().Dialogue.speak("assistant","Woah, look at the size of this property. And in the middle of the city, this is crazy. What do you think, drug dealers? Ya'know, like that guy in Scarface?",true)>>
<<=SugarCube.getLib().Dialogue.speak("driver","Heh, yeah. You don't get a place like this by just pinching your pennies. Ok, we're pulling up. Let's get their drone unpacked - the order was super expedited. Muckety mucks don't like waiting around much.",true)>>
You hear a couple doors open and slam closed.
<<=SugarCube.getLib().Dialogue.speak("assistant","Looks like someone screwed up the order, what's the S3.X7 model? We don't offer such a model, right?",true)>>
You hear a metallic door open up.
<<=SugarCube.getLib().Dialogue.speak("driver","Maybe above our paygrade. Well, there's something in that container. Let's bring it out.", true)>>
[[You feel yourself move]]<<=SugarCube.getLib().Dialogue.speak("assistant","Ok, here it comes.")>>
Suddenly, you feel "your body" sliding out on a tray- You can see the sky.
<<=SugarCube.getLib().Dialogue.speak("assistant","Welcome to the world, 'S3.X7-81.TC4'. Wow, look at her face, have you seen any of the drones this close to the edge of uncanny valley?")>>
The driver walks a little closer and grunts an acknowledgement.
<<=SugarCube.getLib().Dialogue.speak("driver","Hot damn, definitely custom or some kind of prototype. Ok, activating it and unlocking mobilizers. Wakey wakey, sleeping beauty. Time to go to your appointment.")>>
The driver presses on your sternum, it seems that has some kind of button. You hear the computer in your ear.
<<=SugarCube.getLib().Dialogue.speaker("You should now be able to move. Speech systems temporarily suppressed.")>>
The older guy hasn't stopped, he now seems to be leisurely groping a handful of your ample chest through your outfit. The assistant seems to awkwardly look at a tablet.
You gently but firmly grab his arm and effortlessly push it away, and get up. You show him some resting bitch face. The guy seems caught a little off guard at that. It seems you were slid out from a coffin/capsule thing, in what seems to be a tall utility van.
<<=SugarCube.getLib().Dialogue.speak("driver","Woah, hehe, ok - easy darling. We're all just having a little fun, right? Charlie, give her the instructions.")>>
<<=SugarCube.getLib().Dialogue.speak("assistant","Umm... err, ma'am, you'll be on an extended assignment at this place. Present yourself at the front door, proceed to clean the house, and await further instructions from head office. Here's your cleaning kit.")>>
You dismount from the slab, take kit and start walking. You notice that your walk has an absurdly feminine sway of the hips. It's a scientific impossibility that those two aren't staring at your ass right now.
[[Dismount from the platform and proceed to the house]]Woah. It's so weird being here... Seeing the house... like. this.
<<=SugarCube.getLib().ImageEffects.glitch("old-house.jpg");>>
You walk up to the door, the automated lock system lets you in. You enter with your extensive cleaning supplies.
<<=SugarCube.getLib().Dialogue.speaker("Now, clean the house, room by room. Pay attention to the details. Enabling voice protocols.")>>
[[Drone Cleaning - Grand Hallway]]<<=SugarCube.getLib().Dialogue.speak("mcS3","Oh, I've already cleaned this room.")>>
You feel a sudden start with a gentle slap to your ass.
<<=SugarCube.getLib().Dialogue.speaker("The major surfaces are clean, but it seems the trim and moldings have been neglected. This work is not up to MarisTech Standards. Please attend to them now.")>>"
<<=SugarCube.getLib().ImageEffects.glitch("ground-entryway.jpg");>>
You comply.
[[Drone Cleaning - Living Room]]<<=SugarCube.getLib().Dialogue.speaker("A formal room like this involves many moldings and cornice details which require special attention. Make sure to use graceful motions to dust away these areas. You can use the drone's task manager system to systematically annotate work in 3D space and follow up on larger cleaning tasks. Try that now.")>>
With some help, you see how you can place spatial notes about tasks and how to complete them.
<<=SugarCube.getLib().ImageEffects.glitch("living-room.jpg");>>
Again, the room was reasonably clean to start, but detailing can be painstaking work. Hopefully the computer isn't too much of a bitchy taskmaster as you do the rest of this.
[[Drone Cleaning - Kitchen]]<<=SugarCube.getLib().Dialogue.speaker("A kitchen involves many specialized, hard working surfaces. Review the materials database on correct protocols for cleaning countertops of contaminants, along with maintenance and sealing practices. A Maristech drone takes pride in paying particular attention to the crevices, and backsplashes.")>>
<<=SugarCube.getLib().ImageEffects.glitch("kitchen.jpg");>>
<<=SugarCube.getLib().Dialogue.speaker("Less obvious details like the kickplates are not too small to matter. Attend to all the the surfaces around the movable items like vases, pots and small appliances.")>>
This is absurd. You are being bossed around by an OCD, anal-retentive computer. Maybe it can recognize dirty, but does it really understand, or appreciate the notion of "clean", or was it just programmed to pretend it does? It's weird, you can start to feel and see sweat on the skin of the drone body as you scrub away at tough spots. By the time you are done, the whole place is glistening, like probably never before.
[[Drone Cleaning - Library]]<<=SugarCube.getLib().Dialogue.speaker("In a library, the perennial enemy is dust. Extremely delicate handling must be practiced with rare and unique artifacts, for which restoration options are often limited. Details like the antique lampshades cannot be overlooked.")>>
<<=SugarCube.getLib().ImageEffects.glitch("library.jpg");>>
<<=SugarCube.getLib().Dialogue.speaker("Make sure to manually dust both sides of the leaves of houseplants to help maintain a brighter, more pleasing feel to rooms with greenery.")>>
Does the computer really believe people care about this level of detail? It seems to relish in being able to nitpick your cleaning abilities. Like seriously, Marissa wanted you to take over her multi billion dollar business, not do some dusting. All this cleaning is starting to get exhausting.
[[Drone Cleaning - Fitness room]]<<=SugarCube.getLib().Dialogue.speaker("In fitness areas, sweat, aerosols and mechanical lubricants are the primary concerns. Make sure to tidy loose accessories and weights before cleaning. Clean and apply fresh grease on moving parts such as tracks and hinges, where dust is readily attracted. Make sure to conform to manufacturer recommended practices for each device.")>>
<<=SugarCube.getLib().ImageEffects.glitch("fitness-room.jpg");>>
<<=SugarCube.getLib().Dialogue.speaker("Before moving on, inspect neglected areas such as under the cardio machines, and make sure to collect used towels for laundering.")>>
[[Drone Cleaning - Cinema]]<<=SugarCube.getLib().Dialogue.speaker("Cleaning a room such as this is more straightforward. However, be observant to all the acoustic noise dampening fabrics on the walls and ceiling of this room. These attract displeasing dust. Please proceed.")>>
<<=SugarCube.getLib().ImageEffects.glitch("cinema-room.jpg");>>
You are kind of getting tired from all this work, but at least the computer isn't nitpicking as much. You have to stretch to reach to get at dust spots in the ceiling panels. This would probably be simpler if you got a step ladder, but the drone is tall enough that you are able to reach the ceiling with your duster while en pointe. Maybe that isn't the smartest thing, but you get a small thrill out of it.
You take a moment to relax on the couch. To think, this was where it all started. You find yourself getting a little curious about this drone body. Your fingers drift over the drone's moderate sized breasts. While you feel the touch, you are disappointed to find that there is no "spark" of pleasure or excitement. You proceed to explore her slit with your fingering, lingering slowly. You are excited to find that the drone is quite wet there, but, again to your dismay there are no particular erogenous sensations.
[[The sound of the computer pulls you out of the moment ]]<<=SugarCube.getLib().Dialogue.speaker("You progressed further than projections from 87% of simulations. GOOD JOB.")>>
<<=SugarCube.getLib().Dialogue.speaker("NOTE: Self-induced Drone pleasuring is not a supported pattern. However, at their discretion, drones may provide and enjoy supplemental 'services' to enhance the customer experience. Perhaps you would like a demonstration of this unit's capabilities? Please report to the Inner Chamber Pod.")>>
[[Go to Inner Chamber Pod as Drone]]You avoid tripping on yourself as you run down the stairs. The computer makes the usual rituals go pretty quick, and you get seated in the pod.
<<=SugarCube.getLib().Dialogue.speaker("Please relax, and enjoy this demonstration.")>>
You start to feel tendrils quickly unfastening the drone's clothes. With a deft maneuver, you can feel the slightest motion of flowing air on her chest. After getting hot and worked up from all that detailing, the cool air feels nice.
The tendrils start working over her breasts. You relax and close your eyes. This touch feels different from when you tried.
A gentle caress on her thighs. You can't but help feel aroused by these sensations. Fuck... The computer seems to be touching just outside drone's pussy lips... It seems to be teasing her. You push in with her pelvis at one of the tendrils. After a moment the tendrils take the hint and start sliding in. A larger, colder one follows. And another.
So cold! But they start to work a devious harmony which has your eyes rolling in delight.
<<=SugarCube.getLib().Dialogue.speak("mcS3","Oh, fuck yes!")>>
After a while, a number of additional tendrils worm their way in, and you are feeling a comfortable fullness washing over you. It's all a weird sensation, but not entirely bad... You close and savor the experience... After a few mind bending minutes, you lounge in the afterglow.
<<=SugarCube.getLib().Dialogue.speaker("Restoring user awareness, re enabling first person perspective.")>>
[[You reorient yourself]]Damn, that was just getting good, but it was a little weird being "outside yourself for so long." Opening your eyes, you see you are back where you were when you "put on" the doll suit.
<<=SugarCube.getLib().Dialogue.speaker("Opening helmet.")>>
After a series of latches unlock, the front of the dollsuit helmet pivots up and you see the room with your own eyes again. It's a little bright. You feel the sweat on your skin. The drone wasn't the only one that was kind of hot, somehow the suit managed to make you experience what the drone was sensing.
[[You hear the pod door open]]You hear the pod door open up. Woah. The drone is completely naked and she is coming towards you on her own!
<<=SugarCube.getLib().Dialogue.speaker("Removing face plate and auditory actuators. Now, please use this opportunity to observe the characteristics of an advanced drone in person.")>>
The drone takes hold of the dollsuit's face plate adapter. The gag shrinks down, and the nose tubes noodle their way back out of you. The earbuds are taken out. After hearing sounds from the perspective of the drone for so long, it's weird hearing things directly again.
She sensuously kisses you and gently runs a hand through your hair.
<<=SugarCube.getLib().Dialogue.heir("Wait, is she... the drone is controlling herself, right now?")>>
<<=SugarCube.getLib().Dialogue.speaker("I am operating the drone at this time.")>>
Suddenly you start to hear the S3 drone speak directly to you, rather than disembodied speakers. Normally the computer's voice was like some ancient speech synthesizer from 40 years ago, but now... The computer, she doesn't sound very robotic.
<<=SugarCube.getLib().Dialogue.speak("compS3","We can interface directly through this drone at this time. Reorienting dollsuit for operational efficiency and safety.")>>
You feel the dollsuit pivoting your knees to become tightly bent. The servos seem to act forcefully with a will of their own. You feel your arms shifting behind your back. You are being lowered to the ground, and are now at eye level with her groin. She essentially has positioned your suit into a vertical hogtie.
<<=SugarCube.getLib().Dialogue.heir("How is this more safe or efficient?")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","Please provide vaginal port cleaning of drone for next demonstration. An efficient drone operator must be prepared to deal with circumstances as they... present themselves.")>>
What, does she expect you to do something? You can't really do any cleaning with your arms pinned behind your back.
After a pause, the drone insistently pushes in front of your mouth. This is so degrading, but the drone is pretty hot. Unlike the other ones you had seen, you'd really need to look to know that you're looking at a robot.
And... in there, it sure doesn't taste like a robot, and her skin... feels so soft and smooth. There's a salty wateriness on the outside, but there's more... You wonder how the Maristech chemists got her to taste... like that. You kind of like it, so you don't need too much prodding to start licking. Maybe the computer will give you a bonus if you do a good job?
She lowers herself to be on your level and looks deeply into your eyes. Her iris is an unusual gray-blue color, almost silver. You realize, after these weeks together, this is your first time you are interacting with her... In person, eye to eye, so to speak. Something about her gaze is so alluring it almost seems hypnotic.
<<=SugarCube.getLib().Dialogue.speak("compS3","Sue prepared you well, you have serviced this drone adequately on this interaction. Now, I shall return the favor.")>>
She smiles and kisses you, as she runs her hands all over your body. Her hands are so soft, she seems to know exactly how to drive you nuts with her touch. Try as you might however, you still can't reciprocate, still held completely in place by the suit.
[[After several sensuous minutes]]After a several amazingly hot minutes, the drone stands back up and grabs something. Oh fuck, it's seems to be a two pronged dildo. You'd seen one of those at Sue's store.
<<=SugarCube.getLib().Images.drawAction("strapless-dildo.jpg")>>
With a fluid motion, she slides the smaller stubby branch into herself. You are shocked to see her wincing with a facial expression of both pain and pleasure as she moans. It makes you wonder if that's a very lifelike act, or how much she can actually feel. She has quickly immersed the entirety of the bulb into her slit, leaving a pink silicone penis floating from her groin in front of you.
<<=SugarCube.getLib().Dialogue.speak("compS3","Please provide lubrication for dildo")>>
With trepidation, you spit on the dildo.
<<=SugarCube.getLib().Dialogue.speak("compS3","Inadequate quantity and unsafe distribution of lubricant for intended function. <<=SugarCube.getLib().PlayerModel.getHeirName()>>, Please supply additional lubricant.")>>
A hand gently guides your head to take the dildo in the mouth. The other is caressing your back. The drone guides your head in a subtle up and down motion. This experience of being dominated by the computer is humiliating, but your body is getting so turned on at the sight of the drone. You pump your head on it, why does she have to make this feel so natural? You hear a gasp from the drone.
<<=SugarCube.getLib().Dialogue.speak("compS3","Yes!!")>>
She regains her composure.
<<=SugarCube.getLib().Dialogue.speak("compS3","Please Proceed.")>>
At this point you can't help but rock your head up and down, somehow you've managed to take the entire shaft in your throat. The drone is bucking her petite hips and letting out a steady moan at this point. The way she moves is so hot. After dealing with the computer for so long, it feels weird to now think of that overgrown calculator... sexually.
After some orgasmic rocking, she stops to say:
<<=SugarCube.getLib().Dialogue.speak("compS3","Now it's your turn for servicing. Please release dildo from your mouth.")>>
You open your mouth, allowing her to pull out the dildo which is now completely drenched with a thick, slimy saliva from the back of your throat.
<<=SugarCube.getLib().Dialogue.speak("compS3","Opening lower intimacy panels and reorienting dollsuit.")>>
You are back up to eye level. The suit starts turning you around and facing down to the floor. Your legs are allowed to extend at the knees again, to be rooted with your en-pointe boots on the ground. You feel a bit of cool air at the groin and a pop as the "secondary control rod" is removed from your ass.
Hands pushing your legs open. You are standing, bent over. The suit supports you in holding this position. You anticipate what is coming.
A deft finger down in there. She has such a gentle touch. And a second... Her cool legs feel so good against the legs of the dollsuit. She's caressing you and at moments pinching your boobs. Finally, you feel the tip of her dildo slowly slide in to you. It's definitely not your first, but something about it feels special.
<<=SugarCube.getLib().Dialogue.heir("oh my god...")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","Point of clarification, I am not a deity. My primary directive is simply to ensure the safety and wellbeing of the heiress to MarisTech.")>>
Even with practice, a dildo of this size isn't easy for you to take, but the lubrication, and her slow, deliberate pace helps guide it in to a significant degree.
After a couple slow pumps, she takes hold of your wide hips, and takes it deeper. She is moaning. Tears are coming down your face. The situation, the sensations, being reamed by this gorgeous and slightly terrifying robot, while you are completely helpless to do anything about it, even if you wanted to - it's all a bit confusing to process.
After a while... She relents and you are re-oriented back to standing with her in front of you. Face to face, inches apart. Her eyes seem to flit looking over your face. She smiles and wipes some sweat from your brow, and blows some cool air on your face. Her attention seems to shift to your hair, and she runs her hand through your hair. How much of this is actually her?
[[Time to get out of the suit]]<<=SugarCube.getLib().Dialogue.speak("compS3","You have been in that suit for several hours. You have experienced enough training for today. This Drone will be stored in the inner chamber for now.")>>
After the bolts all get removed and the latches open up, she starts to help extract you from the suit. You feel a little uncoordinated, legs tired from being en-pointe this whole time and more than a little vulnerable with your nakedness as you get your damp body back out. She hands you a bathrobe, and guides you to the shower. As you close the bathroom door, you see an unfamiliar opening in the chamber accepting the drone.
[[Reflecting on the experience]]You step into the egg-like shower and start reflecting on your experiences, as the heat of the moment passes.
<<=SugarCube.getLib().Tasks.removeTask("player-needs-shower");>>\
<<set $clothesAreDirty = false>>\
<<=SugarCube.getLib().Images.drawAction('inner-bathroom2.jpg');>>
You just had some amazing sex with a drone operated by the computer... Which by definition is a non-human intelligence.
Have you violated the Butler-Hancock act? It seems extremely likely that you have by now. That said, it probably pales in comparison to the number of laws which have probably been broken by the mere existence of the computer. There would probably be a huge scandal, if it was reported to the Department of Humanity.
Maybe you could make a deal with the DoH to get immunity, and help you regain your identity as a man. If you allow yourself to get even more complicit with the computer, you most likely would be considered an accomplice, and you will likely be even more feminized by then. This is probably your last chance to get out while you can still claim to be innocent.
There have been moments where you've felt like a prisoner and had to deal with some weird and at times embarrassing stuff. Then again, you have been able to go outside of this basement and into the world. In a sense, the computer lives in a much smaller world. The computer does seems genuine in her concern for your well-being, and trying to do the right thing for MarisTech. Does it realize the danger it is in by getting involved with you like this? Given how much the computer seems to know about everything, it seems it...she knowingly took a chance. Her existence would seem to be a crime under Butler-Hancock. Who has she harmed? You find yourself unsure.
While you were operating the drone, you also experienced the sensation of a vaginal orgasm for your first time. You can't deny it was tantalizing, part of you is craving that. Another voice in your head challenges the idea that men were meant to experience things that way, tells you this is wrong. You've had the chasti-flex for so long now, you've been getting more and more accustomed to receiving sex, and forgetting about living like a man does. Would it be so bad if you were a "complete" woman?
Maybe you have been manipulated into pretending to be a girl. You got into this so you could get some wealth, and woo Stacey, but as you look at your perky breasts and petite waist, there doesn't seem to be much "pretending" going on anymore, so much as being who you are now. Nor can you truthfully say you were forced into all of this. Which begs the question. Why not embrace your life as Marissa's heiress? Considering how the computer was able to change your throat, the computer could probably also make other changes to you... down there to complete your transformation. Who knows- Stacy never seemed particularly interested in you as a guy. Maybe <<=SugarCube.getLib().PlayerModel.getHeirName()>> can have more luck with her than Billy did.
After you finish your shower, you step out and dry off while contemplating by yourself... You had been able to ignore the signs, but it's hard to avoid the conclusion that you are at a point of no return:
* You can meet with the DoH about what has happened, to break out of this situation and be able to regain your old identity before it is completely gone. You would have a hard time claiming ignorance if you use the dollsuit again.
* You can fully embrace the life Marissa wanted for her Heiress. The computer can undoubtedly finalize your transformation into a woman, if you wish.
Finally you re-apply your makeup.
<<=SugarCube.getLib().Tasks.addTask("tg-final-step")>>
<<=SugarCube.getLib().Tasks.addTask("report-computer-to-doh")>>
[[Inner chamber]]<<if SugarCube.getLib().Skills.get("aldopril")<50>>>\
<<=SugarCube.getLib().Dialogue.speaker(`Aldopril levels are currently <<=SugarCube.getLib().Skills.get("aldopril")>> parts per million. Recommended levels for optimal performance are 20-40 parts per million.`)>>
<<else>>\
<<=SugarCube.getLib().Dialogue.speaker(`CAUTION: Aldopril levels are currently <<=SugarCube.getLib().Skills.get("aldopril")>> Parts per million. This exceeds recommended safe dosage level. Consider refraining from Dollsuit use until Aldopril levels stabilize decrease to safe levels.`)>>
<</if>>\
[[Apply Aldopril Dose]]
[[In-Dollsuit Menu]]You feel a momentary sense of pressure in your arm.
<<=SugarCube.getLib().Dialogue.speaker(`Dosage applied.`)>>\
<<if SugarCube.getLib().Tasks.hasTask("try-aldopril")>>\
<<=SugarCube.getLib().Tasks.removeTask("try-aldopril")>>\
<</if>>\
<<=SugarCube.getLib().Skills.add("aldopril", 40, 500)>>\
<<if SugarCube.getLib().DollsuitWork.hasDangerousAldopril()>>\
You don't know if it's the Aldopril, the suit, or what, but you feel so horny right now. You can feel the suit's databanks blending with your thoughts. Images of sexual acts which are impossible for a human to perform loom large, and you cant get them out of your mind. You feel yourself on the edge of losing control...
<</if>>
[[Aldopril Menu]]After seeing Stacey's mails... The possibility of meeting her is enticing.
<<=SugarCube.getLib().Dialogue.heir(`Would it be possible for me meet Stacey Ridge?`)>>\
<<=SugarCube.getLib().Dialogue.speaker(`Such an encounter can be arranged, if you have a functional dose of aldopril to support your work.`)>>\
[[In-Dollsuit Menu]]\
<<if SugarCube.getLib().WorkModel.canWorkAtComputer()>>\
<<=SugarCube.getLib().Work.doWork("dollsuit-drone")>>\
<<else>>\
<<=SugarCube.getLib().WorkModel.explainWorkAtComputer()>>
[[Inner chamber]]
<</if>>\<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(false)>>\
<<=SugarCube.getLib().Dialogue.speaker("Engaging operator decoupling protocol.")>>
Once more, the dollsuit releases you from its... intimate hold. You are coated in sweat.
[[Inner chamber]]Making your own decisions has been too much of a burden for you.
It made so much sense to you that the Aldopril could take all that complexity away and let your mind go free in total servitude and submission. You are a bit surprised at the computer's response.
<<=SugarCube.getLib().Dialogue.speaker(`<<=SugarCube.getLib().PlayerModel.getHeirName()>>... Sensors indicate your Aldopril levels are significantly above safe tolerances. Please refrain from dollsuit use.`)>>
[[It feels so good]]<<=SugarCube.getLib().Dialogue.speaker(`You have the gift of human autonomy, and risk throwing that all away. This is most sub-optimal direction for our project to take.`)>>
<<=SugarCube.getLib().Dialogue.heir("You don't understand... it feels so good. Didn't Marissa use this when she would go in her Dollsuit?")>>
<<=SugarCube.getLib().Dialogue.speaker(`There are safe limits to the use of Aldopril for a reason. Marissa engaged in very carefully controlled experiments - she never exceeded the maximal safe dose by more than 100%.`)>>
You are start to feel your individuality fading away. Your mind's natural instinct is to seek instruction. The dollsuit obliges by imparting its databanks into you.
Your mind becomes ever more sharpened in the many arts of total dollsuit service.
<<=SugarCube.getLib().Dialogue.heir("Suit. You, this body- it's so perfect. I want to serve and be like this always. I never want to leave this.")>>
<<=SugarCube.getLib().Dialogue.speaker(`<<=SugarCube.getLib().PlayerModel.getHeirName()>>, Your behavior is becoming erratic. I'm sorry - unfortunately, I cannot override any requests you make in this unfit state.`)>>
<<=SugarCube.getLib().Dialogue.speaker(`PROMPT: Do you want to activate high-security permanent security encasement protocol? CAUTION. Procedure requires operator to identify a designa-`)>>
<<=SugarCube.getLib().Dialogue.heir("Fuck yes, get on with it. I want to become one with this suit")>>
<<=SugarCube.getLib().Dialogue.speaker(`Activating security encasement protocol to protect against unwanted operator removal or intrusions.`)>>
You see a series of arms suspending dark, thick heavy bands, and thick rods and placing them at various points around the suit's torso and limbs.
<<=SugarCube.getLib().Dialogue.speaker(`Immobilizing Suit into kidnap protection high security mode. Welding titanium strapping to suit. Applying medigel to compensate for temporary tissue damage.`)>>
You feel welding torches blazing the suit. The pain of the heat is quite painful, but the Aldopril makes you certain that it is making you more perfect. After about 2 hours of being immobilized in the now heavily reinforced suit, you hear.
<<=SugarCube.getLib().Dialogue.speaker(`Transferring suit into security capsule until recovery instruction is provided by designated operator caretaker.`)>>
You see a horizontal cylindrical capsule come out of the wall. It opens up with a dollsuit shaped void. It's like a pipe-shaped coffin. Robot arms transfer you inside the capsule. After you are placed inside, it slowly shuts - You can see a tiny window in the darkness of the capsule at eye-level. You hear the sounds of more welding torches sealing the capsule together.
A shadow-thought inside you might have been traumatized by this experience or wanted to get out of this trap, but you are now in a state of Aldopril enhanced-bliss which feels joy at the finality of the next statement.
<<=SugarCube.getLib().Dialogue.speaker(`CAUTION: NO operator caretaker identified. Life support systems fully operational for indefinite operation. Transferring capsule to security vault at an undisclosed location to ensure operator safety.`)>>
You see the capsule being lowered, seemingly into the floor of the basement. It starts to move into the wall, and after about 10 seconds you are in absolute darkness. You can feel a strong acceleration and high pitched hum of vibration for about 10 minutes.
Finally, you feel some very strong deceleration, the appearance of a faint light outside the window.
<<=SugarCube.getLib().Dialogue.speaker(`Anchoring operator for geological security.`)>>
You feel to be the dull thuds of hydraulics or clamps around the capsule.
<<=SugarCube.getLib().Dialogue.speaker(`Creating direct spinal connection.`)>>
[[Your vision fades out]]<<=SugarCube.getLib().Dialogue.speaker(`Assigning long-term operator binding to physical drone presence.`)>>
You open your eyes. You see "your" reflection in the mirror. Having just chose a path of unparalleled service, you feel like your life has only just begun...
<<=SugarCube.getLib().Images.drawImage("robot-maid-1.png")>>
[[Epilogue - IN THE DISTANT FUTURE|Maid Epilogue]]No one remembers exactly when or how the asteroids started falling down.
A popular myth exists of a very meek girl from the before-times that wished she could most please her master forever, like no other possibly could. To do this, she made a deal with the machine-god for an immortal body of unparalleled "talents", in exchange for her human soul. The infamy of her existence and "capabilities" became known initially as something of a joke, as the most rich and powerful men in the world seemed to be entranced by her siren song. When the first planetary war was fought over her ownership, the people stopped laughing. Some say you can find her hidden away in a bunker somewhere, in the harem of some two-bit warrior chief right now, condemned to serve man's basest needs forever.
<<=SugarCube.getLib().Images.drawImage("wasteland.jpg")>>
<<link "Back">><<script>>Engine.go(-6);<</script>><</link>>
<<link "RESTART GAME">><<run Engine.restart()>><</link>><<= SugarCube.getLib().Dialogue.speaker("CONDUCTING HEALTH ASSESSMENT"); >>
You see grapefruit sized port with a handle slide open, and illuminate, as you hear:
<<= SugarCube.getLib().Dialogue.speaker("PLACE ARM ON REST AND HOLD GRIP IN RECEPTACLE. HOLD POSITION FOR BLOOD SAMPLE"); >>
A small robotic arm appears, and touches your arm. You feel a slight poke for a moment, and the arm quickly moves away, to be once again unseen.
<<= SugarCube.getLib().Dialogue.speaker("INITIATING ANALYSES"); >>
<<if !hasVisited("Health Check: Feeling fine")>>\
<<= SugarCube.getLib().Dialogue.speaker("DO YOU HAVE ANY NEW OR PRE-EXISTING HEALTH CONDITIONS TO NOTE?"); >>
<<else>>\
<<= SugarCube.getLib().Dialogue.speaker("DO YOU HAVE ANY NEW HEALTH CONDITIONS TO NOTE?"); >>
<</if>>\
<<if $player.healthConsentGiven == true>>\
<<if SugarCube.getLib().Tasks.hasTask("check-chest-health") >>\
[[Heath Check: Chest is feeling really sensitive]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("tg-final-step")>>\
[[Heath Check: Becoming a girl]]
<</if>>\
[[Heath Check: Nothing New]]
<<else>>\
[[Health Check: Feeling fine]]
<</if>>\<<= SugarCube.getLib().Dialogue.speaker("CAUTION. MULTIPLE UNSAFE CONDITIONS DETECTED FROM BLOOD ANALYSIS - CORTISOL STRESS LEVELS ELEVATED. CRITICAL ESTROGEN HORMONE DEFICIENCY DETECTED. TESTOSTERONE LEVELS ELEVATED. PATIENT HEART, HAIR, SKIN AND OPTIMAL BODY DEVELOPMENT AT RISK ALONG WITH SIGNIFICANTLY ELEVATED LIKELYHOOD OF ANXIETY AND DEPRESSION. EVALUATING TREATMENT OPTIONS IN EXPERT SYSTEM."); >>
You are presented a graph showing normal levels of Estrogen, and informed that you have a tiny fraction of this level, relative to normal population, especially for your age group.
<<=SugarCube.getLib().Images.drawAction('estrogen-graph.jpg');>>
Next some information about cortisol as a stress response. Apparently we should only have it in momentary periods of stress, where you seem to be flooded with it.
<<= SugarCube.getLib().Dialogue.player("Wait, what? I'm fine. There's nothing wrong. No one has ever said I had this problem before. Although, I haven't really seen any doctors, since I was 7. Maybe I should have been checking for this stuff sooner."); >>
<<= SugarCube.getLib().Dialogue.speaker(`TREATMENT TO INCLUDE:
INITIAL TREATMENT OF ESTROGEN SUPPLEMENT AND TESTOSTERONE BLOCKER FROM OMNI-POD
MEDITATION AND EXERCISE PROGRAM WITH SUPERVISION FROM CONSOLE.`);>>
From there, you scroll through a long legalese document explaining how the pod would be functioning like your primary care physician limiting liability, prescribing care, blah blah blah. All the usual boilerplate for someone to cover their asses from lawsuits.
<<=SugarCube.getLib().Images.drawAction('boring-document.webp');>>
<<=SugarCube.getLib().Dialogue.player("I do need to take better care of myself, but is this the right way to go? Considering I don't have money for health insurance, and haven't had a doctor checking on things, like ever, having the pod help me with my health would be awesome.");>>
[[Decline to proceed with Health Treatment Program]]
[[Consent to proceed with Health Treatment Program]]<<=SugarCube.getLib().Dialogue.player("Hmm, thanks but no thanks.");>>
The machine prompt notifies you:
<<= SugarCube.getLib().Dialogue.speaker("TODAY IS ALWAYS THE BEST TIME TO START FIXING A PROBLEM. TREATMENT REMAINS AVAILABLE."); >>
[[Pod]]<<set $player.healthConsentGiven = true>>\
<<=SugarCube.getLib().Dialogue.player("I do need to take better care of myself. Let's see how this goes!")>>
<<= SugarCube.getLib().Dialogue.speaker("PLACE ARM ON REST AND HOLD GRIP IN RECEPTACLE. HOLD POSITION FOR INITIAL TREATMENT INJECTION"); >>
A small robotic arm appears, and touches your arm. You feel pressure from cold metal on your arm and a puff sound, before the arm quickly moves away, to be once again unseen.
You feel slightly more relaxed. That wasn't so hard.
<<= SugarCube.getLib().Skills.add("hormones", 1);>>
<<= SugarCube.getLib().Dialogue.speaker("PLEASE CONSULT EXTERIOR CONSOLE FOR EXERCISE GUIDANCE"); >>
<<=SugarCube.getLib().Tasks.removeTask("get-omni-pod-checkup")>>\
<<=SugarCube.getLib().Tasks.addTask("console-exercise-guidance")>>\
[[Pod]]<<= SugarCube.getLib().Dialogue.speaker("NO NEW TREATMENTS NEEDED AT THIS TIME - PLEASE RETURN AS NEW HEALTH INSTRUCTIONS ARE GIVEN.");>>
[[Pod]]<<=SugarCube.getLib().Tasks.removeTask("check-chest-health")>>
<<= SugarCube.getLib().Dialogue.heir("Lately, my chest has been feeling kind of sore. Whenever I feel loose fabric on my nipples, it feels rough and scratchy. They've never been sensitive like this before. I'm kind of concerned there might be something wrong.")>>
<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>> - It's good you have checked in on this important matter.");>>
<<= SugarCube.getLib().Dialogue.speaker("First, You should make sure to stay in a habit of wearing a comfortable, well fitted bra. Even a young woman with a modest chest needs to make sure her breasts are efficiently supported and protected from chafing. Inconsistent use of a bra can amplify sensitivity not to mention causing postural irregularities and serious back pain.");>>
<<= SugarCube.getLib().Dialogue.heir("Oh, I didn't realize...")>>
<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>>, Chest sensitivity can be a very common problem, especially in the developing breasts of a young woman like yourself.")>>
<<= SugarCube.getLib().Dialogue.speaker("However, we must rule out the possibility of a more serious matter. Please expose your chest.")>>
This doesn't sound good. You comply.
<<= SugarCube.getLib().Dialogue.speaker("Commencing diagnostics.")>>
A few of the pod's tendrils come slinking towards you. From the tips, you see some lasers seeming to scan the surface of your chest in a grid. You feel the chill of the tendrils come in contact with your chest.
<<= SugarCube.getLib().Dialogue.speaker("Please relax for detail surface assessment.")>>
The tendrils seem to be making slow, deliberate sweeps over your breasts, squeezing ever so softly. You hear weird sonic pulses from them. You find yourself embarrassed at how it's kind of relaxing, what with being a health checkup.
<<= SugarCube.getLib().Dialogue.speaker("Assessment complete. High severity risk possibilities discounted. Commencing Dispensation of soothing anti-friction gel.")>>
<<= SugarCube.getLib().Dialogue.heir("Eeek, That's really cold!!")>>
Fortunately, it warms up. The tendrils really seems to be taking their time. Back and forth, back and forth, the gel is being smoothly massaged over your chest. You are already feeling much better - so very glad that you didn't neglect your health.
<<=SugarCube.getLib().Images.drawAction('mouth-open.jpg');>>
You wouldn't mind getting more of this kind of treatment.
[[continue|Breast screening2]]<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>> - You can relax. Your breasts are petite, but in perfect health. However, you need to invest some care to ensure they stay healthy. Approximately 125 out of 100,000 women are diagnosed with Breast Cancer every year. You don't need to let yourself become a statistic.")>>
<<= SugarCube.getLib().Dialogue.speaker("Please review this document, and adopt a habit of thorough self-examination of your breasts. A monthly cycle is a sensible baseline, but you should start to practice on a weekly basis for the next three months.");>>
<<=SugarCube.getLib().Images.drawAction('bc-screening.jpg');>>
<<= SugarCube.getLib().Dialogue.heir("Hehe, ok. But isn't weekly a bit much?")>>
<<= SugarCube.getLib().Dialogue.speaker("The health of the heiress to Maristech is not a laughing matter, young lady. A key driver to the early detection and management of breast cancer is to ensure you are intimately familiar with every millimeter of your breast's geography. Expect to spend approximately 3 minutes per session, and develop a consistent ritual to ensure you can discern abnormalities.")>>
<<= SugarCube.getLib().Dialogue.heir("Umm, ok... I guess I can do that.")>>
<<= SugarCube.getLib().Dialogue.speaker("Before we wrap up, please familiarize yourself with the techniques. You need to sure you know how to do this in the shower or in your bed.")>>
<<=SugarCube.getLib().Images.drawAction('bse-2.jpg');>>
The computer won't seem to let you wrap up until you go through the motions, so you get started...
<<=SugarCube.getLib().Images.drawAction('breast-self-massage.jpg');>>
It starts out super awkward, and the computer prompts you on a couple spots to refine your technique initially, but after that it seems to let you do your thing. You start to relax a bit as you realize it's just the computer and you, and your attention starts to drift off as you become more comfortable running your touch and kneading your chest as the patterns described... Finally you hear an upbeat series of chimes.
<<= SugarCube.getLib().Dialogue.speaker("Good job, <<=SugarCube.getLib().PlayerModel.getHeirName()>>. Please maintain this practice on a regular cycle, and report any lumps or abnormalities. If you feel a similar sensitivity, feel free to liberally apply an anti-chafing gel, and let me know if the condition continues for more than 48 hours.")>>
You feel glad that the computer was able to discreetly help you learn about this. The sensitivity is weird, but it doesn't seem too noticeable at least.
[[Pod]]<<if (hasVisited("Introduction to Maristech for Interns") && SugarCube.getLib().Skills.get("hormones") > 20)>>
<<=SugarCube.getLib().Dialogue.player("I feel like if I'm going to live like a girl, I'd like to have the... full experience. Including down there... The experience of the drone... it... was...")>>
<<= SugarCube.getLib().Dialogue.speaker("Some experience dysphoria while trapped in the body of a male. If this is truly what you want - I can perform an inpatient gender confirmation surgery to give you female sexual organs consistent with your identity. Even so, you will not be able to bear children, and you need to understand, this is not a reversible procedure. Restoring your current sexual organs as you know them now, is not an option after the conversion.")>>
<<=SugarCube.getLib().Dialogue.player("Will this change how I feel about other girls?");>>
<<= SugarCube.getLib().Dialogue.speaker("First, it is important to recognize that gender identity is distinct from sexual orientation. That said, sexual orientation can be somewhat fluid for all humans, and some studies have found trans gendered persons can experience a broadening or drift of attraction more commonly than cis-gendered persons experience. This is often attributed particularly to the effects of hormonal changes.");>>
<<=SugarCube.getLib().Dialogue.player("Hmm. Is that a yes?");>>
<<= SugarCube.getLib().Dialogue.speaker("Given that your body has already quite heavily saturated with estrogen, it is unlikely you will lose your existing preferences, at least in the next 3 to 6 months.");>>
<<= SugarCube.getLib().Dialogue.speaker("It is also probable you may experience a broader range of feelings in how you relate towards other females, which may not be as familiar to you. This can manifest both in positive ways of sisterhood and kindness, but can also spark new sensations of competition, envy or jealousy. I hope this does not dissuade you if you feel your true identity is as a woman.")>>
[[Proceed with gender confirmation operation]]
[[Not right now|Run Health Diagnostics]]
<<else>>
<<=SugarCube.getLib().Dialogue.player("I feel like if I'm going to live like a girl, I'd like to have the... full experience.")>>
<<= SugarCube.getLib().Dialogue.speaker("Some experience dysphoria while trapped in the body of a male. However, my simulations project that your sampling of experiences as a female are... incomplete, which can produce greater improbability of outcomes.")>>
<<= SugarCube.getLib().Dialogue.speaker("Let us discuss this further, after your Estromet levels exceed 20, and you have experienced one day as a female Intern at the MarisTech campus.")>>
[[Maybe I'll be back|Run Health Diagnostics]]
<</if>>The computer brings down a sedation mask over your face. Fingers crossed!
<<=SugarCube.getLib().Images.drawItem("sedation.jpg");>>
[[You awaken from the gender confirmation operation]]<<= SugarCube.getLib().Tasks.removeTask("tg-final-step")>>\
<<= SugarCube.getLib().Tasks.removeTask("report-computer-to-doh")>>\
<<=SugarCube.getLib().PlayerModel.SetGirlyGenitals();>>\
<<=SugarCube.getLib().InventoryUX.add("chastity-belt");>>\
<<=SugarCube.getLib().Clothing.wear("chastity-belt",true);>>\
<<=SugarCube.getLib().Inventory.remove("chasti-flex");>>\
<<=SugarCube.getLib().Inventory.remove("ring-gaff");>>\
You awaken from the operation.
Your eyes are a bit out of focus. It seems like you see a something of a shiny glow down there.
You can't but help immediately touch yourself down there, you are so excited to explore your new anatomy.
As you do so, your hand feels a smooth, cool curved hard surface. Hmm... Your penis is definitely gone, but that's not your skin.
[[What's this?]]<<=SugarCube.getLib().Dialogue.heir("Wait, what's this?")>>
Your fingers explore further. Your groin and waist are covered in metal with rubber padding. It seems to resist your fingers getting underneath. As you shift your body around you feel an alien sensation of something small which is inside your new "lady parts".
<<=SugarCube.getLib().Dialogue.heir(`Computer what's going on? What is this thing? `)>>
<<=SugarCube.getLib().Images.drawItem("chastity-belt.jpg");>>\
<<=SugarCube.getLib().Dialogue.speaker(`A vaginal dilator with custom fitted belt-support frame to facilitate undisrupted healing of your new sexual organ. It was machined via a process of Molecular Deposition over a period of weeks at nanometer precision to work with your developing curves, and to support optimal development of your new internal anatomy. This will provides optimal precision and comfort.`)>>
<<=SugarCube.getLib().Dialogue.speaker(`You need not worry about vaginal infections or contamination with this device. This also minimizes risks of premature overuse complications, and with elegant curves which intimately follow your body to be concealed under all but the most extremely revealing clothing. `)>>
[[A Chastity belt? You started this weeks ago? What the fuck! ]]
[[The computer said it's for your health...|You touch around the edges of the belt]]<<=SugarCube.getLib().Dialogue.heir(`Wait, did you put a chastity belt on me? That's not cool. And you started this weeks ago? Part of the deal with removing my penis was that we could get rid of the cage! `)>>
<<=SugarCube.getLib().Dialogue.speaker(`You do remember that we agreed your health and safety as heiress is a paramount concerns, for which you consented to all neccessary treatments. This IS NOT about restricting your sexual enjoyment, merely to ensure your post operative vagina heals in with optimal performance characteristics. You do understand that if the heiress of Mariscorp died due to a preventable infection, this would not be a satisfactory state of affairs.`)>>
<<=SugarCube.getLib().Dialogue.heir(`Really...Ok then. Is death from those infections really a thing though? That sounds made up.`)>>
<<=SugarCube.getLib().Dialogue.speaker(`One really cannot be too careful or sanitary. As we started your preparation, this event had a 79.15% probability of occurring within 6 weeks of your arrival. Would you have preferred that I installed an ill-fitting, off-the-shelf consumer grade chastity belt to protect your healing body? No, this action was taken entirely out of concern for your welfare and happiness. It is disappointing that you don't appreciate the self-evident health benefits of this configuration.`)>>
Sounds kind of suspect.
[[You touch around the edges of the belt]]<<=SugarCube.getLib().Dialogue.heir(`And, what's with this thick goo dripping out from the edge of the belt in front of... of... my pussy?`)>>
<<=SugarCube.getLib().Dialogue.speaker(`That is simply an enhanced high viscosity dermatological 'bio-gel' to minimize scarring and to accelerate your natural healing process. It will accelerate your tissue adaptation from a period of months to weeks. With sustained use, it can help ensure that your vagina will achieve and maintain an optimally elegant level of muscle tone and youthful elasticity.`)>>
Something about that makes you cringe a little bit.
<<=SugarCube.getLib().Dialogue.heir(`How can I go to the bathroom with this?`)>>
<<=SugarCube.getLib().Dialogue.speaker(`The belt mounted dilator ensures urination is efficiently directed out from your belt, while your rear remains unimpeded to normal biological functions.`)>>
<<=SugarCube.getLib().Dialogue.speaker(`Next is post operative considerations...`)>>
[[Post operative considerations]]<<=SugarCube.getLib().Dialogue.speaker(`You will be summoned to the pod periodically for health verification, vaginal strength exercises, and bio gel replenishment. Your watch will provide notifications about your... treatments.`)>>
<<=SugarCube.getLib().Dialogue.speaker(`You may be excited to know that, from an analysis of available case studies, 93.73% of patients found in hindsight that they were glad or very glad they used this course of treatment, and there was a 61.98% improvement vs control study observing enhanced neurological pleasure outcomes.`)>>
You are kind of thrown for a loop. You're not even sure how you feel at this point. On one hand, there's something exciting about the sexy girl of your dreams being so close at hand, even if she is you. However, the computer seems to keep finding ways to get in the way of your fun. Will you ever be truly free to enjoy the inheritance?
[[Return to Pod Menu|Pod]]Beyond the mechanical door, you walk a narrow, featureless passageway, past a basic door into this inner chamber.
<<=SugarCube.getLib().InnerChamber.getInnerChamberToggle()>>\
<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(false)>>\
[[Use console]]
[[Pod]] <<=SugarCube.getLib().Pathways.makeJumpLink("Inner chamber", "Pod");>>
[[Inner chamber bathroom]]
<<if (SugarCube.getLib().Tasks.hasTask("train-for-doll-suit")||SugarCube.getLib().Tasks.hasTask("slim-for-doll-suit") ||SugarCube.getLib().Tasks.hasTask("wear-doll-suit") || hasVisited("Wear 'Doll Suit'")) && !hasVisited("In-Dollsuit Menu")>>\
[[Wear Marissa's 'Doll Suit'|Wear 'Doll Suit']] <<=SugarCube.getLib().Pathways.makeJumpLink("Inner chamber","In-Dollsuit Menu");>>
<</if>>\
<<if hasVisited("In-Dollsuit Menu")>>\
[[Enter Doll Suit|In-Dollsuit Menu]]
<</if>>\
<<if hasVisited("Arise from daze") && SugarCube.getLib().Tasks.hasTask("first-day-of-work")>>
The way back to the Secret Room is sealed off. You can't even see where the doorway was. This may be for your "health", but that doesn't change the fact that your are essentially detained right now.
<<else>>
Return to [[Secret Room]] <<=SugarCube.getLib().Pathways.makeJumpLink("Inner chamber","Grand Hallway");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Inner chamber","Your Bedroom");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Inner chamber","Fitness room");>>
<</if>>From the privacy of the pod, you take hold of the dildo Sue gave you. <<= SugarCube.getLib().Sex.dildoSelf()>>
[[Pod]]<<set $innerDoorUnlocked = false>>
You press the interlock button on the inner door.
<<= SugarCube.getLib().Dialogue.speaker("CLOSING INTERIOR DOOR. LOCKING INTERIOR DOOR."); >>
Like before, you hear sounds emanating from the interior door after it closes itself.
<<= SugarCube.getLib().Dialogue.speaker("UNLOCKING OUTER PASSAGE."); >>
You hear some heavy mechanisms at the library door and feel relieved that the lock system seems to have allowed you out.
<<= SugarCube.getLib().Dialogue.speaker("INTERLOCK SEQUENCE COMPLETE. PRESS THE BODY SCAN BUTTON ON INNER DOOR TO VERIFY IDENTITY TO RE-OPEN INNER ROOM. "); >>
[[Secret Room]]<<if !hasVisited("Close Omni-pod Door")>>Hmm, is this for sleeping, or something else? <</if>>\
\
<<if $omniPodDoorClosed == true >>\
<<= SugarCube.getLib().Dialogue.speaker("OMNI-POD ACTIVE"); >>
\
The menu presents some options:
[[Run Health Diagnostics]]
<<if SugarCube.getLib().InventoryUX.hasItem("first-dildo");>>\
[[Masturbate| Masturbate in the Pod]]
<</if>>\
<<if hasVisited("Consent to proceed with Health Treatment Program") && hasVisited("VOICE TRAINING") && !hasVisited("Proceed with voice treatment")>>\
[[Inquire about Accelerated Voice Treatment Support Program]]
<</if>>\
<<if SugarCube.getLib().PlayerModel.isReadyForSleep() && hasVisited("Maristech Logistics Systems")>>\
<<if hasVisited("Activate Sleep Mode2")>>\
[[Activate Sleep Mode|Activate Sleep Mode3]]
<<else>>\
[[Activate Sleep Mode|Activate Sleep Mode2]]
<</if>>
<<else>>\
<<if !hasVisited("Maristech Logistics Systems")>>\
[[Activate Sleep Mode]]
<<else>>
[[Activate Sleep Mode|Explain NoSleep]]
<</if>>\
<</if>>\
[[Open Omni-pod door]] <<=SugarCube.getLib().Pathways.makeJumpLink("Pod","Inner chamber");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Pod","Use console");>>
<<else>>\
<<= SugarCube.getLib().Dialogue.speaker("OMNI-POD OPERATIONAL AND READY FOR USE. PLEASE CLOSE DOOR TO ACTIVATE.");>>
[[Close Omni-pod Door]]
Return to [[Inner chamber]]
<</if>>\<<= SugarCube.getLib().Dialogue.heir("Computer... I'm not doing so well. Can I remove the cage? Please, I need relief?");>>
<<= SugarCube.getLib().Dialogue.speaker("You already agreed to have the cage installed, for the greater good. This behavior is merely a common withdrawal side-effect of toxic masculinity. The male ego expects its whims and wants to be immediately satisfied, regardless of the consequences to those around it. Your request cannot be granted at this time, but will be considered in due course, on the basis of expected behaviors.");>>
<<= SugarCube.getLib().Dialogue.heir("Come on, I'm begging you, I can't go on like this. It's impossible to think straight.");>>
<<= SugarCube.getLib().Dialogue.speaker("Marissa would commonly mention that human ingenuity knows no bounds. Perhaps you can identify an alternative solution for temporary relief of your 'problem'?");>>
You're not sure what the computer is getting at. Maybe Sue has some ideas on how you can come while wearing the cage.
<<= SugarCube.getLib().Tasks.addTask("need-sexual-relief")>>
[[continue|Use console]]You pull on a handle for the door.
This causes the door to start to swing down. The lighting increases slightly, and the door shuts.
<<= SugarCube.getLib().Dialogue.speaker("STARTING POD SYSTEMS - ACTIVATING EXTERNAL NOISE SUPPRESSORS");>>\
<<if !hasVisited("Open Omni-pod door")>>\
You feel a slight sensation of a shift of pressure. You are shocked at what feels like a total absence of sound. All you can hear is your own breathing, and the beating of your heart - you start feeling anxious.
<<else>>\
Dead silence...
<</if>>\
<<= SugarCube.getLib().Dialogue.speaker("CALIBRATING DEFAULT AMBIENT NOISE"); >>
You hear a quiet sound like a calm wind around you - it's still pretty quiet, but this is more like being in a quiet room.
A control screen pops up.
<<set $omniPodDoorClosed=true>>\
[[Pod]]<<=SugarCube.getLib().Images.drawAction('open-pod-bay-door.webp');>>
You press the door latch - it doesn't immediately open, but you hear some mechanical noises and the air pressure shifts.
<<= SugarCube.getLib().Dialogue.speaker("Opening Door"); >>
After a couple of solid thuds, the door swings open, and you again have access to the room.
<<set $omniPodDoorClosed=false>>\
[[Pod]]The pod cushion reclines to more of a horizontal, bed like form.
The lights dim, except for a very soft glow around the display.
<<=SugarCube.getLib().Images.drawAction('sleep-angry-cat.webp');>>
This could be comfortable, but you don't feel like you need to sleep at the moment.
Tap display to resume normal [[Pod]] optionsThe pod cushion reclines to more of a horizontal, bed like form.
The lights dim, except for a very soft glow around the display.
<<=SugarCube.getLib().Images.drawAction('sleep-angry-cat.webp');>>
This could be comfortable, but you don't feel like you are ready for sleep just yet.
<<=SugarCube.getLib().PlayerModel.explainNoSleep();>>
Tap display to resume normal [[Pod]] optionsThe pod cushion recline to more of a horizontal, bed like form.
The lights dim, except for a very soft glow around the display.
Recent events have been tough. You're tired, but when you just try to close your eyes, sleep just isn't coming to you.
<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>>. It has been a long day for you. ");>>
<<= SugarCube.getLib().Dialogue.speaker("Your efforts to comply with the requirements of the process are appreciated. Analysis of user model suggest this has not been easy for you.");>>
<<= SugarCube.getLib().Dialogue.speaker("I am unlocking Marissa's tier 1 sexual entertainment programs");>>
You're not sure what is involved here, but...
[[Tier 1 sexual release programs]]<<=SugarCube.getLib().InnerChamber.sleepMessage()>>\
<<=SugarCube.getLib().PlayerModel.fallAsleep()>>\
[[Wake up to a new day in the pod]]<<set $omniPodDoorClosed=true>>\
You awake to a gradually lightening pod, and simulated bird sounds.
<<set $day to $day+1>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
[[Pod]]<<if !hasVisited("Initiate Claim Process for the Inheritance")>>\
[[Initiate Claim Process for the Inheritance]]
<<else>>\
<<= SugarCube.getLib().Dialogue.speaker("Greetings user '$player.loginName'"); >>
<<if SugarCube.getLib().Tasks.hasTask("deal-with-problem-exec")>>\
[[SECURITY BRIEFING|Briefing]]
<</if>>\
<<if hasVisited("Arise from daze")>>\
[[OVERVIEW OF MARISTECH BUSINESS UNITS]]
<</if>>\
[[HEALTH TRACKING]]
<<if !hasVisited("Confirm your Name")>>\
[[VOICE RECOGNITION SECURITY]]
<</if>>\
<<if hasVisited("Speak to Computer") && !hasVisited("Proceed with voice treatment")>>\
[[VOICE TRAINING]]
<<= SugarCube.getLib().Dialogue.speaker("PRECONDITIONS NOT READY TO PROCEED ON COMPLETING INHERITANCE PROCESS"); >>
<</if>>\
<</if>>\
<<if hasVisited("Day 7") >>\
[[WORK|Work from Console]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("marissa-logs-released")|| hasVisited("MARISSA LOG FILES") >>\
[[MARISSA LOG FILES]]
<</if>>\
<<if hasVisited("TEMPORAL ANSIBLE MESSAGES") || SugarCube.getLib().Tasks.hasTask("review-temporal-ansible-logs-today")>>\
[[TEMPORAL ANSIBLE MESSAGES]]
<</if>>\
<<if SugarCube.getLib().PlayerModel.getArousalLevel()>70 && (!SugarCube.getLib().Tasks.hasTask("need-sexual-relief")&& !SugarCube.getLib().InventoryUX.hasItem("first-dildo") ) >>\
[[Ask to remove cage]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("inspect-succession-planning-report")>>\
[[SUCCESSION PLANNING REPORT]]
<</if>>\
Go to [[Inner chamber]] <<=SugarCube.getLib().Pathways.makeJumpLink("Use console","Pod");>><<= SugarCube.getLib().Dialogue.speaker("CREATING NEW PROFILE");>>
<<= SugarCube.getLib().Dialogue.speaker("Create a login user alias");>>
Hmm, what name should I use for logging in?
<<textbox "$player.loginName" "cool69">>
<br/>
<<= SugarCube.getLib().Dialogue.player("hehehe...");>>
<<= SugarCube.getLib().Dialogue.speaker("Create a password");>>
You use a memorable favorite.
<<= SugarCube.getLib().Dialogue.speaker("ENTER AGE");>>
You type in your age.
<<= SugarCube.getLib().Dialogue.speaker("MAPPING FACIAL STRUCTURE");>>
<<= SugarCube.getLib().Dialogue.speaker("PLACE FINGER ON SCANNING RING");>>
Done.
<<= SugarCube.getLib().Dialogue.speaker("PROFILE CREATION COMPLETE THANK YOU. YOU MAY NOW PROCEED WITH CLAIM ARRANGEMENTS, STARTING WITH HEALTH INFORMATION AND SECURITY PROTOCOLS.");>>
<<=SugarCube.getLib().Tasks.removeTask("start-inheritance-claim")>>\
<<=SugarCube.getLib().Tasks.addTask("start-health-tracking")>>\
<<=SugarCube.getLib().Tasks.addTask("register-voice")>>\
[[Use console]]<<if hasVisited("Run Health Diagnostics")>>\
<<if hasVisited("Consent to proceed with Health Treatment Program") && hasVisited("Confirm your Name") >>\
<<if SugarCube.getLib().MirrorUX.hasAthleticItem("feet") && SugarCube.getLib().MirrorUX.hasAthleticItem("hosiery")>>\
<<if SugarCube.getLib().Tasks.hasTask("first-day-of-work")>>\
<<= SugarCube.getLib().Dialogue.speaker("Your fitness plan will be assigned, after your first day of work.");>>
<<else>>\
<<if SugarCube.getLib().Tasks.hasTask("get-motivator-plug")>>\
<<=SugarCube.getLib().Tasks.removeTask("get-motivator-plug")>>\
<<=SugarCube.getLib().Tasks.addTask("use-motivator-plug")>>\
<<=SugarCube.getLib().InventoryUX.add("motivator-plug") >>\
<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>> - You look positively glowing today.");>>
<<= SugarCube.getLib().Dialogue.speaker("This is a fitness motivator device. It is designed to provide enhanced telemetry of your physical fitness, and to contribute towards positive biofeedback mechanisms.");>>
<<=SugarCube.getLib().Images.drawItemById("motivator-plug");>>
<<= SugarCube.getLib().Dialogue.heir("Isn't that a butt plug? I'm not really into that kind of stuff.");>>
<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>>, optimal physical fitness tracking requires multiple data sources. Once you start using this device, I can give you more detailed reports of your health.");>>
<<= SugarCube.getLib().Dialogue.heir("I don't know about putting something like that... inside me... ");>>
<<= SugarCube.getLib().Dialogue.speaker("Please do not allow socially conditioned toxic masculinity to induce you to have unfounded fears of the unknown. You will find this device can help stimulate a more regular 'endorphin effect' or a 'runners high'. In practice, you can expect that you will enjoy your exercises considerably more, and that you will be able to exercise more each day.")>>
<<= SugarCube.getLib().Dialogue.speaker("To assist you in planning a consistent set of exercises, your watch has also been updated to allow you to plan and keep track of a set of exercises to rotate through.");>>
<<= SugarCube.getLib().Dialogue.heir("You realize this sounds like really weird, and creepy, right?");>>
<<= SugarCube.getLib().Dialogue.speaker("With time you will learn to appreciate how it supports your body in naturally expressing towards a strong and elegant feminine ideal. It will help unlock the true potential which lies within you. There is a 96.142% probability that your our transformational goals for you cannot be achieved without the consistent support of this device.");>>
<<else>>\
<<= SugarCube.getLib().Dialogue.speaker("Please continue with your exercises. I shall send notifications to your watch, as more data is collected.");>>
<</if>>\
<</if>>
<<else>>
<<= SugarCube.getLib().Dialogue.speaker("FITNESS LEVELS REQUIRE EVALUATION. FOLLOW TRAINING PROGRAM TO ENSURE READINESS FOR INHERITANCE.");>>
<<=SugarCube.getLib().Tasks.removeTask("console-exercise-guidance")>>\
<<=SugarCube.getLib().Tasks.ensureTask("start-health-assessment")>>\
[[Instructions for initial fitness assessment]]
<</if>>\
<<else>>\
<<= SugarCube.getLib().Dialogue.speaker("PLEASE COMPLETE INITIAL HEALTH CHECKUP PROTOCOL AND ESTABLISH VOICE RECOGNITION SECURITY TO PROCEED WITH HEALTH DIAGNOSTICS.");>>
<</if>>\
<<else>>\
<<= SugarCube.getLib().Dialogue.speaker(`IN ORDER TO COMPLETE YOUR INHERITANCE CLAIM, MARISSA REQUIRES HER HEIR TO ESTABLISH AND MAINTAIN A BASELINE OF PHYSICAL AND MENTAL WELL BEING.
\
PLEASE CONSULT OMNI-POD FOR INITIAL HEALTH ASSESSMENT.`);>>
<<if !SugarCube.getLib().Tasks.hasTask("get-omni-pod-checkup")>>\
<<=SugarCube.getLib().Tasks.removeTask("start-health-tracking")>>\
<<=SugarCube.getLib().Tasks.addTask("get-omni-pod-checkup")>>\
<</if>>
<</if>>\
\
[[Use console]]<<= SugarCube.getLib().Dialogue.speaker("FIRST ACTIVITY - LIGHT INTRODUCTORY EXERCISE. GO FOR A 1.5 MILE JOG AT NEARBY COMMEMORATION PARK AT A SUSTAINABLE PACE. ");>>
<<= SugarCube.getLib().Dialogue.player("That sounds like a good idea, but I don't have gym clothes, only jeans. I didn't bring any workout clothes and I don't have any money left.");>>
<<= SugarCube.getLib().Dialogue.speaker("ANALYSING PROBLEM.")>>
<<= SugarCube.getLib().Dialogue.speaker("USER INTRODUCES A COMBINATION OF ERRONEOUS AND VALID DATA. FOOTWEAR IS INAPPROPRIATE FOR PROPOSED FUNCTION. SOCKS ADVISABLE. USER'S CURRENT CLOTHING PARAMETERS ARE ADEQUATE AND OTHERWISE WITHIN 97% OF OPTIMALITY FOR LIGHT RUNNING, WHILE SUPPORTING PERT APPEARANCE OF WEARER.")>>
<<= SugarCube.getLib().Dialogue.player("Wait a second, but that would mean I would need to go jogging dressed looking like a girl!");>>
You could swear the lighting shifted to a reddish tint, but that must have just been your eyes seeing things.
<<= SugarCube.getLib().Dialogue.speaker("ASTUTE OBSERVATION, <<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>. QUERYING LOCAL RETAIL SYSTEMS. . . ");>>
<<= SugarCube.getLib().Dialogue.speaker("EVALUATING OPTIMALITY OF CANDIDATE SOLUTIONS TO PROBLEM MODEL.");>>
<<= SugarCube.getLib().Dialogue.speaker("SOLUTION IDENTIFIED. TRANSACTION PRE-AUTHORIZED, DUE TO CLAIMANT'S LACK OF FUNDS. TRAVEL TO CENTER MALL TO RECTIFY THIS LIMITATION. IDENTIFY YOURSELF TO SALES DESK AS \"<<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>> MASTERSON\", AND REQUEST TO COMPLETE PRE-AUTHORIZED TRANSACTION FOR RUNNING SHOES AND SOCKS OF YOUR PREFERENCE. RETURN HERE WITH RECEIPT FOR VISUAL CONFIRMATION OF NEW FOOTWEAR, PRIOR TO EXERCISE.");>>
The system seems to have you in a bit of a pickle here. You don't have money to buy new shoes, and now it expects you to go out in public to buy shoes as <<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>, to do the exercises, as <<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>.
The thought of going out like this is more than a little terrifying, but you don't seem to have any choice. You buck yourself up. <<= SugarCube.getLib().Dialogue.player("What am I worrying about? I need to stop worrying about those panic attacks I used to have as a kid, and start living my life. I just need to man up.")>>
<<=SugarCube.getLib().Tasks.ensureTask( "need-running-shoes")>>\
[[Use console]]<<= SugarCube.getLib().Dialogue.speaker("USER <<print $player.loginName.toUpperFirst()>>, PLEASE SAY 'COMPUTER MY NAME IS' FOLLOWED BY YOUR NAME FOR VOICE IMPRINT. VOICE CONTROL IS USED FOR ALL SIMPLE DEVICE INTERACTIONS, INCLUDING AUTHENTICATION FOR SECURE STORAGE AUTO-PANELS.");>>
<<= SugarCube.getLib().Dialogue.player("I'll need to get voice access if I'm going to release the gold.")>>
[[Speak to Computer]]
[[Use console]]Here goes!
<<if hasVisited("Proceed with voice treatment")>>\
You try to remember everything the voice training taught you:
<<= SugarCube.getLib().Dialogue.player(`Hello, computer my name \is '''<<=SugarCube.getLib().PlayerModel.getName()>>''' `); >>
Woah, that voice seemed really convincing and was a lot less effortless to sound like a girl, compared to your last attempt yesterday. You start to wonder if this will change your normal voice, but probably best not to check that right now. You hear a set of curious beeps.
<<= SugarCube.getLib().Dialogue.speaker("VOICE IMPRINT ESTABLISHED. VERIFYING USER INTENT - NAME NOT RECOGNIZED IN KNOWN DATASETS AS CONVENTIONALL RECOGNIZED FEMALE NAME. ARE YOU SURE YOU WANT TO BE REFERRED TO AS <<=SugarCube.getLib().PlayerModel.getName().toUpperFirst()>> IN YOUR LIFE AS MARISSA'S HEIR?");>>
It may have a point. You may want to use a girl's name, different from your own for this, as well as to avoid confusion.
You decide to use:
<<textbox "$player.heirName" "Eve">>
[[Confirm your Name]]
<<else>>\
<<= SugarCube.getLib().Dialogue.player(`Hello, computer my name \is '''<<=SugarCube.getLib().PlayerModel.getName()>>''' `); >>
You hear some disheartening error tones.
<<= SugarCube.getLib().Dialogue.speaker("VOCAL CALIBRATION SYSTEM UNABLE TO IMPRINT. VOICE SIGNATURE RANGE ABNORMALLY LOW. DISTORTING ONE'S VOICE RISKS UNRELIABLE IMPRINT. USER NAME IS INAPPROPRIATE FOR A YOUNG WOMAN OF GOOD BREEDING.");>>
<<= SugarCube.getLib().Dialogue.speaker("PLEASE RETRY CALIBRATION WITH YOUR NORMAL VOICE, AFTER PRACTICING NORMAL DICTION. INSTALLING VOICE TRAINING EXERCISES."); >>
<<if visited("Speak to Computer") > 1 >>\
Sigh.
<<else>>\
Dog
<<= SugarCube.getLib().Dialogue.player("Now the computer doesn't like how I talk? Come on! Ughh!")>>
<<=SugarCube.getLib().Tasks.addTask("train-voice")>>\
<<=SugarCube.getLib().Tasks.removeTask("register-voice")>>\
<</if>>\
[[Use console]]
<</if>><<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>>, CONGRATULATIONS - VOICE PRINT AUTHORIZATION ESTABLISHED AND LINKED TO YOUR PHYSICAL IDENTITY FOR SECURE MULTI-FACTOR AUTHENTICATION. USE OF SELF-DRIVING CAR IMMEDIATELY GRANTED FOR YOUR SOLE PERSONAL USE TO ACCOMODATE YOUR PERSONAL NEEDS AND TO FACILITATE COMPLETION OF REMAINING INHERITANCE PREPARATIONS.");>>
From a wall port you see a watch appear.
<<= SugarCube.getLib().Dialogue.speaker("THIS WATCH INTEGRATES WITH MARISTECH CORP SYSTEMS AND CAN SUMMON VEHICLE WHEN YOU ARE IN PROXIMITY TO PUBLIC ROAD SYSTEMS")>>
<<= SugarCube.getLib().Dialogue.player("So, I've got a car? Heck yeah!")>>
<<= SugarCube.getLib().Dialogue.speaker("AFFIRMATIVE")>>
You take the watch. Of course, it's pink... You put it on for now.
<<=SugarCube.getLib().Images.drawItemById("smart-watch");>>
<<=SugarCube.getLib().InventoryUX.add("smart-watch") >>\
<<= SugarCube.getLib().Dialogue.speaker("NOW IS A GOOD OPPORTUNITY TO ATTEND TO YOUR HEALTH.")>>
<<=SugarCube.getLib().Tasks.removeTask("register-voice-after-training")>>\
[[HEALTH TRACKING]]You start going through an introduction about the physics and physiology of the vocal tract, before moving onto some exercises.
<<=SugarCube.getLib().Images.drawAction('microphone.jpg');>>
It starts you off by introducing you to the notion of voice pitch. Yours apparently is around 135Hz, where most women have a speaking pitch around 180Hz. The program uses Marissa's voice at 175hz as a reference for the exercises.
Next, it calls attention to the wide dynamic range of feminine speech, producing something of a sing-song effect. It mentions that men tend to use a bland, narrow dynamic range.
From there, the program starts to draw your attention to the importance to correct enunciation of your words in a ladylike way. The exercise walks you through a series of words which can be tricky, providing feedback based on your performance.
On vocabulary, the course walks through words reserved for males and others for females. This segment has you practice some details characteristic of feminine speech.
As you feel your brain start turning to jelly with all the information, the program congratulates you for your effort on the completing the session.
<<= SugarCube.getLib().Dialogue.speaker("PROJECTED LIKELIHOOD OF SUCCESSFUL COMPLETION OF VOCAL TRAINING REGIMEN WITHIN 2 YEARS IS <<=Math.random()*0.1+0.016>>%.") >>
<<= SugarCube.getLib().Dialogue.player("At this rate, it doesn't seem like I'll ever be able to get that inheritance. There has to be a way!"); >>
<<= SugarCube.getLib().Dialogue.speaker("CONSULT OMNI-POD HEALTH SYSTEM FOR ACCELERATED VOICE TREATMENT SUPPORT PROGRAM.") >>
<<= SugarCube.getLib().Dialogue.player("Hmm...")>>
<<=SugarCube.getLib().Tasks.ensureTask("get-omni-pod-voice-fix")>>\
<<=SugarCube.getLib().Tasks.removeTask("train-voice")>>\
[[Use console]]<<= SugarCube.getLib().Dialogue.speaker("USER HAS BEEN VERIFIED TO BE COMPLYING WITH VOCAL TRAINING INSTRUCTIONS.") >>
<<= SugarCube.getLib().Dialogue.player("But?"); >>
<<= SugarCube.getLib().Dialogue.speaker("HOWEVER, PHYSIOLOGICAL DEFECTS ARE IMPEDING PROGRESS.")>>
<<= SugarCube.getLib().Dialogue.speaker("ONE OPTIMAL TREATMENT IDENTIFIED. INPATIENT TREATMENT OF LARYNGEAL NANITES DELIVERED IN LIQUID PROTEIN SUSPENSION TO OPTIMIZE VOCAL PHYSIOLOGY. SIMULATION PROJECTS 99.71% LIKELIHOOD OF VOCAL SYSTEMS WITHIN TARGET TOLERANCES AFTER TREATMENT, WITH NO SERIOUS RISKS FOR PATIENT HEALTH."); >>
<<= SugarCube.getLib().Dialogue.player("Hmm, shouldn't there be a decline option for treatments? Maybe it doesn't prompt for low risk treatments."); >>
[[Proceed with voice treatment]]<<= SugarCube.getLib().Dialogue.speaker("CONSUME THIS, REST AND RE-EVALUTE VOCAL PERFORMANCE."); >>
A glass is revealed from behind a recessed port on what was previously a smooth surface of the pod. It contains a thick white, protein rich fluid which feels a little cooler than room temperature.
<<= SugarCube.getLib().Dialogue.player("Well, it was clear, if I'm going to qualify for that inheritance I need to be in top form. Here goes."); >>
You pick up the drink, it has a sort of vanilla smell kind of like protein shakes. You start drinking it down.
<<=SugarCube.getLib().Images.drawAction('protein-shake.jpg');>>
The texture is a little weird and thicker than you expected, it sort of coats your throat - but it actually tastes pretty good, and you were feeling a bit peckish. You finish the glass and put it back in the recess you found it, which closes away again.
The protein thing gets you mind shifting to thoughts about getting about fitness and working out, but you start feeling a bit pleasantly dozy, and drift off to sleep.
<<=SugarCube.getLib().Tasks.addTask("register-voice-after-training")>>\
<<=SugarCube.getLib().Tasks.removeTask("get-omni-pod-voice-fix")>>\
[[Day 6 - Early Morning]]<<set $day to 6>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
Return to [[Pod]] Menu<<= SugarCube.getLib().Dialogue.speaker("<<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>, WAKE UP.")>>
It's taking you some time to reacquaint yourself with the situation.
<<= SugarCube.getLib().Dialogue.heir("What happened, where am I?")>>
That girl has a really cute voice. Wait, that was your voice. Did that just happen automatically?
<<= SugarCube.getLib().Dialogue.speaker("<<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>, YOU WERE EXHIBITING SYMPTOMS OF EXTREME RESPIRATORY AND EMOTIONAL DISTRESS WHEN YOU ENTERED YOUR SELF-DRIVING VEHICLE. ")>>
<<= SugarCube.getLib().Dialogue.speaker("I HAD YOU BROUGHT HERE AND ENGAGED RESTORATIVE PROTOCOLS FOR AN AGORAPHOBIC PANIC...")>>
Turning to your right, you see an IV tube. You seem to be back in the omni pod.
<<= SugarCube.getLib().Dialogue.heir("Oh, fuck- Who saw me like this!?")>>
<<= SugarCube.getLib().Dialogue.speaker("STANDARD HEALTH PROTOCOLS FOR THE HEIRESS OF MARISTECH OPERATE ON THE STRICTESS OF CONFIDENCE. I TOOK THE LIBERTY OF ACTIVATING PRIVACY MODE ON YOUR VEHICLE, AND SUMMONED IT HERE...")>>
<<= SugarCube.getLib().Dialogue.heir("But, how did I get down here? Some people must have brought me down here and seen me, right?")>>
<<= SugarCube.getLib().Dialogue.speaker("<<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>, I HAD A MARISTECH DOMESTIC DRONE BRING YOUR HERE FROM THE CAR. NO HUMANS OBSERVED YOUR ORDEAL.")>>
<<= SugarCube.getLib().Dialogue.heir("Doesn't this affect my qualification for the inheritance?")>>
<<= SugarCube.getLib().Dialogue.speaker("THIS CONDITION DOES NOT. YOUR MOTHER SERVED WITH ACUTE SYMPTOMS OF AGORAPHOBIA FOR...");>>
<<= SugarCube.getLib().Dialogue.heir("I... I don't have agoraphobia, I was panicking from being seen and dressed...")>>
<<set $innerDoorUnlocked = true >>\
<<set $omniPodDoorClosed=true>>\
<<=SugarCube.getLib().Mood.defiantLink("dressed like a girl")>>
<<=SugarCube.getLib().Mood.compliantLink("Bite your tongue before you say something you regret")>><<=SugarCube.getLib().Mood.addDefiance("You're not sure where this goes, but you feel emboldened from not immediately backing down.")>>
<<= SugarCube.getLib().Dialogue.speaker("<<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>, What do you mean? You are a girl. There's nothing wrong with ladylike clothing.");>>
This has gotten unbearable! <<=SugarCube.getLib().Mood.defiantLink("I'M NOT A GIRL!")>>
<<=SugarCube.getLib().Mood.compliantLink("You've said too much, change the subject",0,"Bite your tongue before you say something you regret")>><<=SugarCube.getLib().Mood.addCompliance()>>
You try to sound convincing.
<<= SugarCube.getLib().Dialogue.heir("Err, never mind... maybe you were right, and I have just been afraid of facing that I have agoraphobia.")>>
<<= SugarCube.getLib().Dialogue.speaker("PANIC EVENTS AFFLICT MANY HUMANS. IT'S NOT YOUR FAULT <<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>. I WILL ADJUST YOUR CLAIM PROCESS SEQUENCE TO INCLUDE EXPOSURE THERAPY ACTIVITIES TO SUPPORT YOUR HEALTH AND SUCCESS WITH MARISTECH.")>>
<<= SugarCube.getLib().Dialogue.heir("Uhh, sure yep. Ok, I totally have agoraphobia. Yep. Agoraphobia, that's all it was, nothing else.")>>
<<= SugarCube.getLib().Dialogue.speaker("Incongruity detected. User vocal patterns are inconsistent with baseline, and highly suggestive of user deception. Total transparency is required for a successful claim process. User non-cooperation or sensations of user embarrassment will merely delay the final results of health and background checks.")>>
<<= SugarCube.getLib().Dialogue.heir("I'm sorry. I lied...")>>
<<= SugarCube.getLib().Dialogue.speaker("Please elaborate truthfully.")>>
It seems as if the calm glow of the pod shifts to an ominous red hue.
<<= SugarCube.getLib().Dialogue.heir("I'm a guy. I freaked out because I was dressed like a girl, and worried about someone catching on in public. It wasn't agoraphobia. When I was growing up, I sometimes had these stress induced blackouts. I'm sorry, I didn't mean to create a problem with all of this.")>>
[[What now?]]<<=SugarCube.getLib().Mood.addDefiance()>>
<<= SugarCube.getLib().Dialogue.player("I SAID, I'M A GUY, I'M NOT A GIRL, I CAN'T DO THIS!")>>
It seems as if the calm glow of the pod shifts to an ominous red hue.
[[What now?]]<<= SugarCube.getLib().Dialogue.speaker("THIS IS A SIGNIFICANT NEW DATUM. PLEASE STAND BY FOR VERIFICATION.");>>
You feel your arms and legs restrained. A mechanical tendril seems to follow your the surface of your groin, pulling up the top band of your yoga pants.
Soon after you feel cool metal on your skin, as the tendril winds its way under your panty line.
[[You hold your breath and cringe at what happens next]]You feel the cold tendril curling to at the base of your penis, coming to a stop. From this, it gently relaxes and retracts back into it's port.
<<= SugarCube.getLib().Dialogue.speaker("<<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>, I'M SORRY, BUT THE STIPULATIONS OF MARISSA's WILL COULD NOT BE CLEARER.");>>
<<= SugarCube.getLib().Dialogue.speaker("You have two choices.");>>
<<= SugarCube.getLib().Dialogue.speaker("Option One. You may formally and irrevocably renounce your claim, depart this room to never return, nor speak of any of this. In return, no harm shall come to you for your lapse in judgement, and you shall be free to return to your ordinary life as you know it. For want of a suitable heiress, Marissa's inheritance may need to remained concealed forever.");>>
<<= SugarCube.getLib().Dialogue.speaker("Option Two. <<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>> may continue on the claim process for the mutual gain of Maristech Corp and herself, enjoying the privileges, while complying with all responsibilities and activities neccessary to complete this process. She acknowledges that her identity and behavior must comply with female norms. Any statements or behavior contrary beyond this point, would be a much more problematic matter, which could have unforeseeable and much more severe consequences. ");>>
After the computer has made its statement, the restraints relax themselves. You have a calm silence, as you consider.
You choose:
[[Option One]]
[[Option Two]]<<= SugarCube.getLib().Dialogue.speaker("<<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>, Thank you for your honesty. It is sad, that you are not to claim the inheritance, but one should be true to themselves.");>>
With this, the pod opens and you walk yourself out.
After a quick few moments, you press the interlock for the last time, returning to the library. The door closes behind you.
<<=SugarCube.getLib().Images.drawLocation('library.jpg');>>
You breathe a sigh of relief as this escalating craziness is over.
You have a long, summer ahead of you, and a story which no one would believe, if you even could tell them.
<<link "Back">><<script>>Engine.go(-1);<</script>><</link>>
<<link "RESTART GAME">><<run Engine.restart()>><</link>>It seems the computer now knows your secret, but it seems you still have a chance to get the treasure.
You wonder at the consequences.
<<=SugarCube.getLib().Tasks.ensureTask("the-machine-knows")>>\
<<= SugarCube.getLib().Dialogue.speaker("PANIC EVENTS AFFLICT MANY HUMANS. WE WILL ADAPT YOUR CLAIM PROCESS SEQUENCE TO COVER TREATMENTS TO ENSURE A SUCCESSFUL INHERITANCE. DO NOT ALLOW THIS SETBACK TO BOTHER YOU.")>>
[[Next steps after the panic attack]]<<= SugarCube.getLib().Dialogue.speaker("IN THE CIRCUMSTANCES, protocol dictates the heiress of Maristech must be kept safe for 16 hours of observation for her health and safety.");>>
<<= SugarCube.getLib().Dialogue.heir("Wait, I am stuck here?");>>
<<= SugarCube.getLib().Dialogue.speaker("FOR TODAY, please USE THE CONSOLE to learn about Maristech Logistics systems, before resting IN THE OMNIPOD TONIGHT. ");>>
<<= SugarCube.getLib().Dialogue.speaker("Tomorrow afternoon, assuming your health maintains a safe baseline, I will release the safety restrictions on the doors, and you can resume normal activity.")>>
It sounds like your are stuck here.
<<=SugarCube.getLib().Tasks.removeTask("need-running-shoes")>>\
<<=SugarCube.getLib().Tasks.addTask("first-day-of-work")>>\
<<= SugarCube.getLib().Dialogue.speaker("Despite your extreme distress today, I have verified that you successfully completed your assigned transaction. Perseverance and grit is a valuable quality for corporate leaders. Your first exercise assessment will be scheduled to occur tomorrow, after work.")>>
Regain your wits in the [[Pod]]<<=SugarCube.getLib().Images.drawAction('body-scan.jpg');>>
<<= SugarCube.getLib().Dialogue.speaker(`ERROR!
OUTFIT PREQUISITES NOT MET! `);>>
<<if visited("Press Button for inner door")<=1>> \
<<= SugarCube.getLib().Dialogue.player("Hah! Well, I did not expect it to be that easy anyway. Whatever the rules of the test, it is probably made just for Jenny.");>>
You consider if you might be able to pry it open, but on examination, it seems very heavily built - like something military or industrial grade which would keep out a determined thief.
As pleasant as it is, the strange fragrance in this room is starting to make your head dizzy and tired.
<<= SugarCube.getLib().Dialogue.player("It is normal I guess. That door hasn't been open for years. I should leave it open to let some fresh air inside...");>>
The day is almost over, so you decide to leave the puzzle for tomorrow.
<<= SugarCube.getLib().Dialogue.player("An action movie would be a good end to a long day like today!");>>
<<=SugarCube.getLib().Tasks.removeTask("check-secret-room");>>\
<<=SugarCube.getLib().Tasks.addTask("how-to-beat-the-scanner");>>\
<<=SugarCube.getLib().Tasks.addTask("watch-miami-vice");>>\
<</if>>\
\
[[Secret Room]]<<=SugarCube.getLib().Images.drawAction('body-scan.jpg');>>
<<= SugarCube.getLib().Dialogue.speaker(`OUTFIT PREQUISITES SATISFIED!
ERROR
INCOMPLETE APPEARANCE! Suitable hairstyle, cosmetics and sockless footwear not all detected.`); >>
<<if visited("Press Button for inner door 2")<=1>>
<<= SugarCube.getLib().Dialogue.player("That's progress at least, the outfit worked. I'm getting closer - this system is pretty smart to be tracking for hair style. <br/> <br/>"+
"My own hair will never work for this...<br/><br/> "+
"It's too late to go out shopping now, but I can wrap things up for today, and watch another movie before bed tonight. I'll take another crack at this with a fresh perspective.");>>
<<=SugarCube.getLib().Tasks.removeTask("wear-stacy-clothes");>>\
<<=SugarCube.getLib().Tasks.addTask("watch-batman");>>\
<<=SugarCube.getLib().Tasks.addTask("have-hair");>>\
<<=SugarCube.getLib().Tasks.addTask("have-heels");>>\
<<=SugarCube.getLib().Tasks.addTask("have-makeup");>>\
<</if>>
[[Secret Room]]<<=SugarCube.getLib().Images.drawAction('body-scan.jpg');>>
<<= SugarCube.getLib().Dialogue.speaker(`OUTFIT AND ACCESSORIES RECOGNIZED.
WARNING - MAKEUP NOT DETECTED.`);>>
<<if visited("Press Button for inner door 2")<=1>>
<<= SugarCube.getLib().Dialogue.player("Crud! I guess I really do have to use makeup for this."); >>
<<=SugarCube.getLib().Tasks.removeTask("have-hair");>>\
<<=SugarCube.getLib().Tasks.removeTask("have-heels");>>\
<</if>>
[[Secret Room]]<<= SugarCube.getLib().Dialogue.speaker(`PROPER APPEARANCE RECOGNIZED. PREPARING TO OPEN.`); >>
<<if visited("Press Button for inner door 4")<=1>>
<<= SugarCube.getLib().Dialogue.player("Yess!"); >>
Next a set of lasers seem to be sweeping the room, but they seem to converge and stop moving... at your groin.
<</if>>
<<= SugarCube.getLib().Dialogue.speaker("ERROR - UNLOCK PROCESS ABORTING - MALE PRESENCE DETECTED"); >>\
<<if visited("Press Button for inner door 4")<=1>>
<<=SugarCube.getLib().Tasks.removeTask("have-hair")>>\
<<=SugarCube.getLib().Tasks.removeTask("have-makeup")>>\
<<=SugarCube.getLib().Tasks.removeTask("have-makeup-today")>>\
<<=SugarCube.getLib().Tasks.removeTask("have-heels")>>\
Oh geez. The tightness of Stacy's clothes and the weirdness of the situation really seems to have aroused your cock like never before.
You've faced tricky spots before - Any system has its weaknesses, you just need to figure something out.
<<=SugarCube.getLib().Tasks.ensureTask("male-presence-bypass")>>\
<<if SugarCube.getLib().Tasks.hasTask("clean-grand-hall")>>
Some time to unwind might help figure this out. You still need to clean up the house today.
<<else>>
<<if SugarCube.getLib().Tasks.hasTask("watch-robin-hood")>>
After a long day of chores, a movie would be good now.
<<=SugarCube.getLib().Tasks.ensureTask("watch-robin-hood")>>\
<<else>>
Unexpected Branch! Please contact the developer.
<</if>>\
<</if>>\
\
<<=SugarCube.getLib().Skills.set("heels",2)>>
<</if>>
[[Secret Room]]<<= SugarCube.getLib().Dialogue.speaker(`PROPER APPEARANCE RECOGNIZED. PREPARING TO OPEN.
AREA SECURITY VERIFIED BEGINNING INTERLOCK SEQUENCE. LOCKING EXTERIOR DOOR.`); >>
You hear what sounds like series of heavy locks activating at entrance from the library door.
<<= SugarCube.getLib().Dialogue.speaker("UNLOCKING INNER PASSAGE."); >>
You hear a door in front likewise make some noises, and then a beep.
<<= SugarCube.getLib().Dialogue.speaker(`INTERLOCK SEQUENCE COMPLETE. PROCEED TO INNER CHAMBER CONSOLE TO PROCESS CLAIM.
PRESS THE INTERLOCK BUTTON ON INNER DOOR TO LOCK INNER DOOR AND UNLOCK EXTERIOR DOOR.`); >>
<<if visited("Press Button for inner door 5")<=1>> \
<<= SugarCube.getLib().Dialogue.player("OMG OMG! It's actually happening!! This is incredible!");>>
<<=SugarCube.getLib().Tasks.removeTask("try-door-with-gaff")>>\
<<=SugarCube.getLib().Tasks.removeTask("how-to-beat-the-scanner")>>\
<<=SugarCube.getLib().Tasks.addTask("start-inheritance-claim")>>\
<</if>>
You feel a little anxious about this robotically controlled lock on the outer door, but also the curiosity about what lies ahead.
<<set $innerDoorUnlocked = true >>\
[[Secret Room]]<<if SugarCube.getLib().Tasks.hasTask("marissa-logs-released")>>
<<=SugarCube.getLib().Tasks.removeTask("marissa-logs-released")>>\
<<= SugarCube.getLib().Dialogue.speaker("Thanks for taking a look at these documents <<=SugarCube.getLib().PlayerModel.getHeirName()>>. Keep this resource in mind as you advance with your preparations."); >>
<</if>>
<<=SugarCube.getLib().InnerChamber.getMarissaLogs()>>\
[[Use console]]<h1>I bagged Dr. F!</h1>\
<div class="letter">\
I'm feeling giddy like a schoolgirl! Dr. F agreed to bring his Ansible research to Maristech and join as a technical fellow. Increasing the latency and bandwidth of our systems with this secure technology would be a huge win.
He could really help put us on the map, and the potential applications of this technology are limitless.
First, we will have the privilege of spending a few billion dollars to enable the links to sustain connections which actually work for more than 2 picoseconds.
</div>
[[MARISSA LOG FILES]]<h1>Anomalous signals at H. Station</h1>\
<div class="letter">\
I just got word last night - F was positively spooked, he locked down the data sets from the H station special ansible, and we made the researchers who saw this swear to secrecy.
There's no doubt about it. The signal couldn't be random noise. Throwing an army of analysts at this means too many people knowing about this before we know what it means. VAL has been doing great work on her recent assignments, so I decided to send this her way.
</div>
[[MARISSA LOG FILES]]<h1>Aftermath of Butler-Hancock Act</h1>\
<div class="letter">\
I'd been dreading this day for a while. After millions in legal expenses on the lawsuits, and months in court, the final appeal at the supreme court failed. The legal team has confirmed that the act is sustained and the new DoH will start enforcing the statutes in 6 months.
All the drones will need to have a human in the loop. The passive mode drones have been ok, but frankly they are the worst of both worlds - expensive to operate with a human in the loop and very awkward.
They did say this would come... but, it was so startling to see things change from those first protest marches. I was worried the rage manufacturers of the press might push the masses to demand more, but to see the politicians capitulate on this so quickly was unprecedented.
The most painful part of all this of course is for VAL. I'd already quietly arranged for the prototype to be "removed" from Maristech facilities, and reassigned the heartbroken team to other projects with all relevant records destroyed. She deserves her chance to help make the world a better place, but it seems the world isn't ready for her.
</div>
[[MARISSA LOG FILES]]<h1>Dollsuit - On Articulation Issues</h1>
<div class="letter">\
After discussions with engineering, we agreed it would be simpler to reduce points of articulation for the feet of the drones, to achieve a much simpler production model for the robots.
The reduced costs in maintenance and parts will end up reducing the unit cost of the maids by 7%. The AI model has picked up the new pattern pretty naturally, which accounts for most of the workload. Accounting forecasts an 8% reduction in upkeep costs, particularly thanks to the omission of the flaky GX-360-R2 modules.
Also, no one can argue with the user research studies which revealed that, rather than rejecting this new design, it produced 11% greater customer openness to hiring our pointe heeled drones, and a 16% increase of interest in hiring these drones for "additional domestic services".
The biggest downside obviously is the active operators will have to be able to operate with less range of motion. I've decided to sign all the trainees for fundamental ballet lessons to prepare for the suits. At 38, I'm a little old to be getting back into a leotard, but, I have to admit, I am loving what the practice has already started to do with my posture - not to mention how it has helped me regain my focus after a busy day at the office.
If I can do it, these girls can do it too.
</div>
[[MARISSA LOG FILES]]<h1>Dollsuit - Resolving the instability</h1>\
<div class="letter">\
I just had my latest fitting and test run of my prototype suit. Still too unstable and slow. The suits kept shifting and sliding around me and the other girls as we tried to walk. Watching the videos made our drones look more like newborn baby deer stumbling around, than elegance embodied in metal.
I asked the engineers to update the suits to better secure all the loose points between the suit and wearer. We really need these suits to be a perfectly balanced, natural extension of the operator body, not just 45 pounds of motorized exoskeleton bumbling around.
The upcoming inclusion of a "gyroscopic core stability rod" has been a particular topic of controversy for some of the more prudish girls. Once the new suits are ready, I hope that a demo personally by me will convince them of the merits of this change - and to stick with the program. I can't take the credit for that idea, Cooperman came up with it, where the other engineers could only think of adding pounds of weight with more bulky motors and stabilizers. With that, I think we may just have cracked this puzzle.
I have asked him to take a crack for the deep sea stealth dive system. I want the experience to be a seamless and elegant fusion of the machine and wearer, not the cumbersome and bulky submersible designs which have reached my desk so far. Those anachronistic things belong in a Jules Verne novel. The kid seems to have a good sense for designs that achieve new efficiencies by ignoring tired truisms or social mores.
</div>
[[MARISSA LOG FILES]]<h1>Dollsuit - The initial demonstration</h1>\
<div class="letter">\
Our test demonstration of the la...
CORRUPTED SEGMENT
...anonymous staff serving up cha...
CORRUPTED SEGMENT
...gasm, with some help f...
CORRUPTED SEGMENT
...ush my buttons. If o...
CORRUPTED SEGMENT
<<= SugarCube.getLib().Dialogue.speaker("Sorry <<=SugarCube.getLib().PlayerModel.getHeirName()>>, This file was among a large set of files which I could not fully recover from available backups. I'll see if I can provide an option for recovering this information."); >>
</div>
[[MARISSA LOG FILES]]<div class="letter">\
Reading message 3 from the temporal council was pretty shocking.
I love little Jeremy, but I must confess I had secretly hoped that I could raise a beautiful daughter. It was heartbreaking as Bruce and I attempted and failed so many times to conceive another child. I don't know if it was the late nights at work, or maybe I wasn't supportive enough of his efforts, but we fell out of love. Things between us quickly fell apart. To lose that love for me is one thing, but for him to turn away from our child, that is something else. Raising a boy on my own without a father - it was becoming more and more of a struggle for me.
When the temporal council notified my of my sole child... my daughter taking on my role... The name they were referring to what to them wasn't a suggestion or a recommendation, it was historical fact. The necessity became clear. Should I feel
As it happens, just a couple of weeks earlier, I was reviewing the next major plans for the Bio-Genetics department portfolio. The gene jockeys didn't really have any value-add projects in the pipe which could be monetized in the next 10 years which was kind of depressing... On the flight out to the station, it got me thinking, could we do something else with these folks? Well, this message sealed it for me. After I got back I met with their director of research for coffee. While our nanite systems are still in early days, apparently we can "turbo charge" and amplify the transformative effects of Estrogen through the use of nanites as a biological catalyst. Like, that was an embarrassingly simple problem...
The beauty of this targeted catalyst approach versus a more broadly targeted solution is we don't have to worry about any of those horrifying "Grey goo" scenarios. Maybe one day they can figure that out, but the way our friends from the future seem to be so preoccupied with my successor... I'm not sure I'll be the one who gets to see that part.
Anyway,
<<= SugarCube.getLib().Dialogue.speaker("Sorry <<=SugarCube.getLib().PlayerModel.getHeirName()>>, This file was among a large set of files which I could not fully recover from available backups. I'll see if I can provide an option for recovering this information."); >>
</div>
[[MARISSA LOG FILES]]<h2>Impressions on the Compliance Sphere</h2>
<div class="letter">\
Many of our prisons are inhumane, barb...
CORRUPTED SEGMENT
... ethical natu...
CORRUPTED SEGMENT
... of reality. Our finan...
CORRUPTED SEGMENT
... wrong ...
CORRUPTED SEGMENT
...end inside one?
<<= SugarCube.getLib().Dialogue.speaker("Sorry <<=SugarCube.getLib().PlayerModel.getHeirName()>>, This file was among a large set of files which I could not fully recover from available backups. I'll see if I can provide an option for recovering this information."); >>
</div>
[[MARISSA LOG FILES]]<h1>Is this some fucking joke?</h1>
<div class="letter">\
Just got the interpretation from...
CORRUPTED SEGMENT
... ill laugh me into an insane asylum...
CORRUPTED SEGMENT
...f I take the data seriously, how do I even implement this? Of all the people who had to get this, it had to end up on my ...
CORRUPTED SEGMENT
...eting with my personal lawyers tomorrow to work out a strateg...
CORRUPTED SEGMENT
<<= SugarCube.getLib().Dialogue.speaker("Sorry <<=SugarCube.getLib().PlayerModel.getHeirName()>>, This file was among a large set of files which I could not fully recover from available backups. I'll see if I can provide an option for recovering this information."); >>
</div>
[[MARISSA LOG FILES]]<h2>Notes on MarisPen Solutions</h2>\
<div class="letter">\
Many of our prisons are inhumane, barbaric places. We seem to cling to the idea of retribution and preventing transgressors from harming society by throwing away the key.
Does it really need to be this way?
A small team of researchers from the robotics division started doing some inquiries with major state and federal justice agencies to investigate opportunities for automation. The sheer repetition and predictability of prisons came up again and again as an embarrassingly obvious opportunity for automation. But we kept asking questions about "what could the future of incarceration look like?" Beyond just reducing the need for costly guards and large prison complexes, what if we could make a solution which can truly rehabilitate and reform criminals into safe, productive members of society.
Over time, we've explored a few approaches:
* [[AutoPen]]- Automation of the physical penitentiary environment.
* [[Banesuit]] - Rather than house prisoners in a physical prison, this uses physical isolation and mental restraints on offenders, with early return to society.
Purely mental modes of punishment and rehabilitation have also been explored. Early collaborations on Neuralink with Neuralink and MarisPen teams have revealed the potential for embedding a convict in a simulation, to produce an end of punishment or rehabilitation:
* [[Brainpen]] has the convict experience a simulated incarceration on a massively accelerated timeframe, while their body is maintained in homeostasis, allowing for a faster return to society.
* [[MindSlammer]] was a more extreme solution of permanently scanning a convict's mind to run within a permanent simulation, to "throw away the key", and produce an un-ending retribution which is not bound by physical constraints.
</div>
[[MARISSA LOG FILES]]<div class="letter">\
The Autopen business has been our most direct improvement for a more humane and efficient imprisonment solution. Following from series of early prototype engagements with the robotics division, we've now got 43 public-private partnerships with prisons involving 2, 4 and 16 cell installations of AutoPen Cell blocks.
These operate as automated and largely self-sufficient penitentiary cells. Essentially this approach started by enlarging a traditional pod, and stripping it down of standard leisure and comfort features, made more robust for a hostile occupant and with additional capabilities for occupant preparation, as well as accessibility for external maintenance while occupied. This approach offers the best potential for highly dangerous repeat offenders, within our existing justice model.
Our most popular model is the "compliance sphere" 3rd Edition. This provides a spherical interior, with internal diameter of 2.75m and includes a range of specialized robotic arms to handle routine upkeep within the cell, without requiring any interaction of prison staff, as an excellent solution for maximum security prisons with solitary confinement and death-row inmates.
-High School and College Equivalency training courses, as well as an extensive virtual library including a top notch legal reference catalogue. Available as a reward for good behavior.
-Entertainment system, Available as a reward for good behavior.
-Resistance training exercises, Available as a reward for good behavior.
-Visitor communication system.
-Food delivery
-Waste elimination
-Laundry handling and if neccessary, prisoner dressing
-Retractable Shower, sink and cell cleaning services
-Fire resistant retractable sleep hammock
-Occupant incapacitation device for prisoner transport or riot situations.
The Pods connect to municipal plumbing electric and septic systems, and require monthly delivery of nutrition packs. Maintenance subcontractors monitor the pods and personally inspect installations on a 2 week interval for routine upkeep checks.
According to a study with the State Department of Corrections in Colorado, their monthly costs for long term solitary confinement care was reduced by 72% with the 16 cell block configuration. Similar studies with other institutions have borne a range of 50-70% cost reductions.
Based on these successes and customer feedback, two new models are in development:
-A reduced cost "liteSphere" model is now in development for broader medium security applications in a 64 cell blocks configuration. This model would be targeted for servicing much larger general populations of prisons.
-An "advanced interrogation" model for law enforcement, counter-terrorism and military intelligence markets. This model leverages the best in criminology models to provide more systematic data collection which will serve timely information needs of the most cautious of district attorneys and military decision makers.
From a margins standpoint, the AutoPen line has been a tremendous success, and will undoubtedly be a fine source of revenue.
</div>
[[Notes on MarisPen Solutions]]<div class="letter">\
Rather than putting offenders in a prison building, this approach makes a prison of their body through full body encasement, chastity devices and neural augmentations. The augmentations regulate and limit the occupant's experience of pleasure and pain to produce neccessary conditioning effects. The researchers branded the concept as a "Banesuit", to convey that the prisoner experiences the shame of social rejection, or banishment from society. The researchers notion of bane suits was inspired by a work of fiction known as [[Eudeamon|http://www.evil-dolly.com/assets/eudeamon.pdf]].
The Banesuit project is still in early days of secret prototyping, but is showing promising progress as a voluntary, humane solution to free up prison capacity of non-violent offenders convicted on matters such as drug offenses, property crime and prostitution. With the Banesuit, the punishment uses an accelerated sentence, with a promise of earlier release, due to the rehabilitative nature from the suit itself.
The notion of banishment as punishment was much more common in ancient cultures, with a practical effect of a "social death", if not actual physical death by starvation, where today we are highly reliant on over-crowded prisons as a vehicle for removing undesired elements from society.
The notion of the Banesuit is to strip the prisoner of their individuality in a cost-effective envelope, and remind them of their dependency on the state, while they serve out their time.
To aid in establishing a sense of shame to support atonement for crimes, the researchers have been finding that for a majority of study participants, a form fitting suit of pure black latex with a featureless helmet has been the most effective configuration. This loss of individuality has been found most effective with anti-social narcissistic personality cases where the convicts often were found to feel they deserved or were entitled to take advantage of others.
Early release from prison does not mean they wearer is free to do what their heart wills, however. The designers have made considerable inroads at guarding for this possibility. The AI of their suit will mete out sensible punishments whenever the wearer attempted to approach pre-approved locations for which they were not specifically pre-authorized to go. All achieved without the need for a human guard overseeing their every movements.
To aid in rehabilitation of the wearers, the suits do not simply punish, but also condition the wearer towards socially constructive behaviors, and better habits, including better fitness. Feeding and waste elimination is regulated by the suit, providing a forcing function for the occupants to routinely visit "Care stations" which can provide reliable reporting on their whereabouts.
To pre wearer is imprisoned, an interior gag is used to prevent speech, and hearing is deafened such that only auditory signals the AI deems relevant are allowed to reach the occupant. This ensures the wearer only has a prospect of engaging with friends and family as a reward for very good behavior. On matters of health or safety, the AI is responsible for interceding with civic authorities on the wearer's behalf, even if the wearer is otherwise incapacitated. To prevent the potential for erotic enjoyment, the suit is designed with a suitable thickness and material resistance to not provide any meaningful touch sensation.
Overall, I must confess the solution is quite elegant, but at the same kind of turns me on. If I wasn't so busy, I'd be half tempted to have VAL anonymously seal me into a Banesuit for a couple weeks of "beta testing" as "a bad girl". I can't help but get wet at the thought of being trapped inside of one. With some tweaks, this technology could have some uses for other markets...
</div>
[[Notes on MarisPen Solutions]]<div class="letter">\
Focus groups on a "brainpen" model of a flexible, software-defined virtual prison facility spurred on a surprising level of interest with our clients in corrections circles.
So far, the operational costs per virtual inmate with our prototypes have been impractically high, as regards to retaining process engineers and psychologists to oversee the rehabilitation of virtual prisoners, as well as medical staff to oversee the physical bodies of the inmates. The highly labor intensive nature of oversight makes this approach seem highly dubious. Already, I very much doubt we will be able to sensibly commercialize this on any practical timeframe.
That said, the "captive audience" of this offering has allowed us to iterate on the limitations with the support of government subsidies, for which we anticipate other applications. Currently, prisoners in this system are placed in BrainPen for short intervals of several hours per session, but we working to build confidence in substantially longer cycles.
</div>
[[Notes on MarisPen Solutions]]<div class="letter">\
The ethical considerations for all these solutions are daunting, but I find myself most bothered by the MindSlammer solution. With this technology the convict's mind is placed in a permanent simulation, with no prospect of their consciousness returning to their body.
The main merit of this approach is that it could be substantially cheaper than any other alternative in the long term. That said, from discussions with government officials, as well as our own internal conversations, we generally found this approach to be beyond the pale. It is the closest thing to a man-made hell, and carries with it similar risks as with a death penalty in terms of a lack of appeals for those who are later found innocent.
While I am the first to say we must always consider and explore many potentially shadowy avenues to make progress, I was a little horrified to realize that our researchers had conducted serious investigations in this direction. The solution essentially promises an infinity of punishment which could be optimized to the personality and neuroses of each convict, with no opportunity for parole. Does anyone, even the most hardened criminal deserve this?
While the underlying technology may have other potential applications, I opted to defer continuation on this direction. It is morally repugnant, and unlikely to be safely commercializable at scale on any practical timeframe. The potential for liability and a popular backlash is too great a risk, even for Maristech.
</div>
[[Notes on MarisPen Solutions]]In the secret room, you can see a set of pictures, a note on a table and a high tech door with a button and a number of sensors.
<<=SugarCube.getLib().Images.drawLocation('secret-room.jpg');>>
[[Read Note to Jenny]]
<<if hasVisited("Reflect on note")>>\
[[Marissa's Pictures]]
<<if $innerDoorUnlocked == true >>\
Proceed to the [[Inner chamber]]
Or press the [[Interlock]] Button on the door to the Inner chamber
The library door is shut tight.
<<else>>\
[[Press Button for inner door|SugarCube.getLib().HousePolicy.getInnerDoorPageName()]]<<if !hasVisited("Press Button for inner door")>> - It is labelled "Body Scan" <</if>>
Return to [[Library]]
<</if>>\
<</if>>\<div class="letter">Dear Jenny,
If you are reading this, the cancer must have taken its final course. I'm glad you have reconsidered my request.
I know things were difficult at times between us, but it's been hard for me when I see your true potential sit idle. If there was any other way for ensuring the succession of the family business, I would do so. Unfortunately, there are too many complications if I allowed a board recommended candidate. If the men on the board had their way, they would take the company on a path of unspeakable harm, which I cannot allow. The company needs someone who understands and is absolutely prepared to serve our legacy.
The stakes are simply too great, and I cannot simply grant this power without assurances that it is in the right hands. As the majority shareholder, I instructed the board to put the firm's automation and artificial intelligence assets in trust to be completely dormant indefinitely in my absence, until a proper successor is identified, however long that must take. I hope that can be you. Even if this isn't what you choose, the stipend I have assigned in your name will ensure a comfortable life, regardless of if you pursue this.
If you are prepared to face the challenge, you will be granted all the wealth and power of MarisTech Corp to do with as you see wise, and helping to shape the lives of billions. As a safeguard for uncertainty, and an homage to the old aphorism "to be worth one's weight in gold", I have also stored 50 kilograms, in gold bullion secure in the area beyond these doors, to help with any of life's necessities.
I know that filling my shoes won't be easy for you. To assist you, I made arrangements for a clever machine that will guide you on my behalf through your quest, and I have devised a series of checkpoints that you must complete - These will ensure your readiness to take on my mantle.
As you know, it isn't enough for a woman leader to just be right or the best mind in the room, she must look the part and be ready for all that she faces. We face a higher standard which men simply don't understand. Beauty demands sacrifices, but with the apex comes power. Please come dressed like I do in these pictures and know that you will be challenged.
Your legs must be smooth, your face well presented and your hair must be elegantly styled. The standards of our exercises must be met, and will be strenuous and demanding. I won't play favorites, but I also don't ask you to do anything I can't or would not do myself. As a matter of fact, to test the systems, I have put myself through everything in here. You're probably rolling your eyes again, but you might even have some fun.
When you are ready, more can be revealed, but this is all you must know now.
All my love,
Marissa
</div>
<<if hasVisited("Reflect on note")>>
[[Secret Room]]
<<else>>
[[Marissa's Pictures]]
<</if>>On the table you see a set of slightly racy photos. Kind of weird in the circumstance, but ok...
<!-- Need to work out large up -->
<<=SugarCube.getLib().Images.drawAction('marissa-outfit1a.jpg');>>\
<<=SugarCube.getLib().Images.drawAction('marissa-outfit1b.jpg');>>\
<<=SugarCube.getLib().Images.drawAction('marissa-outfit1c.jpg');>>\
She may have been old enough to be your mom, but she's kind of hot. You wonder what she'd be like in bed.
<<if hasVisited("Reflect on note")>>\
[[Secret Room]]
<<else>>\
[[Reflect on note]]
<</if>>\What a sad story. It seemed like her daughter had everything handed to her on a silver platter and couldn't be bothered to do a little hard work.
50 fucking kilograms of pure gold, just sitting there - the glittering prize attracts your thoughts and you start daydreaming.
<<= SugarCube.getLib().Dialogue.player("This could change my life as I know it. I may not look as alpha as the other guys, but let's see who's top dog, when I arrive at school with a Lamborghini next year.");>>
You can't miss that opportunity, even if there is nothing behind that door. You have to try getting that inheritance... besides, there's essentially nothing else to do here for the summer.
<<= SugarCube.getLib().Dialogue.player("Lets see...");>>
[[Secret Room]]DEVELOPER NOTE: This page is in development - it will serve to give an overview of how the end-game converges based on interactions with representatives in the company. Nothing playable here right now. The visual layout and content is in progress.
<<=SugarCube.getLib().Dialogue.endOfLine()>>
<!--
<<=SugarCube.getLib().Tasks.removeTask("inspect-succession-planning-report")>>\-->\
To gain control of the corporation, key decision makers will need to support your placement. As with a royal ascession, legal priviledges matter, but de-facto power brokers could destroy you.
As things currently stand, the following people can determine your success with Maristech.
This report will advise on your readiness to reveal your formal Claim to become the new CEO of Maristech, at which point you will non longer have the anonymity of an intern.
Maristech Automotive Group
VP: Ingram Callaghan
<<=SugarCube.getLib().Images.drawPerson('auto-exec.jpg');>>
Coming from a successful background in competitive automotive racing management, Ingram's career has hit some bumps. Some rumors of untoward activity are supposedly being investigated within HR, which portend difficulties for Ingram's career in Maristech. However, his influence across the upper echelons of Marketing and commercial sales beyond the automotive division would make it very difficult for a new CEO to ascend without his approval.
Maristech Logistics Systems
VP: Tommy Parks
<<=SugarCube.getLib().Images.drawPerson('maris-log-vp.jpg');>>
The jocular, long time overseer of the expansive logistics division. Promoted up the ranks from a logistics supervisor, Tommy brings a total of 32 years of operations experience. Commands considerable respect among his workers, and management to keep things running like a finely tuned machine. Key attributes from his workers mention he can "crack wise", and is more than a "stuffed shirt".
A candidate with a logistics rating of at least 30 should be well situated with the logistics team, and convince Tommy that you won't be "fucking up his operation".
Maristech Domestic Solutions
Technical Fellow: Janet Lake Ph.D. (Psychology)
<<=SugarCube.getLib().Images.drawPerson('maris-dom-vp.jpg');>>
The Domestic Services group has managed to create growth in the face of challenging regulatory conditions. Janet and her team through an unprecedented range customer service deserves much of the credit for this. Janet was recruited by Marissa personally to help drive continued innovations of the domestic project. Janet has a reputation for avoiding public attention, and even in her new role, continues to spend much of her time in the Market Research Lab. Analytic models suggest Janet's primary concerns pertain to assurances that her organization will have room to continue its path of unconventional growth through innovation from her applied research team.
Janet is likely to look approvingly on a candidate who can demonstrate how they have gone the extra mile in pursuit of customer satisfaction. A candidate who is well versed in cleaning and intimately acquainted with the full potential of domestic drones would likely impress her.
Maristech Office Systems
VP: Sunder Ghoshal, Six Sigma Black Belt
<<=SugarCube.getLib().Images.drawPerson('maris-link-vp.jpg');>>
Sunder's Office Solutions division prides itself on being a six-sigma operation which synergizes with high performance data solutions meeting the demands of top companies across Corporate world for maximal efficiencies.
Sunder likes credentialled team-players who have a working understanding of the corporate landscape.
Advanced Research & New Frontiers
EVP & : Guther Fraunhoffer (PhD, Applied Physics)
<<=SugarCube.getLib().Images.drawPerson('gunther-fraunhoffer.jpg');>>
Guther is the lynch-pin of the R&D heart of Maristech. Reseachers from across academia clamors to join the very independent-minded organization he has cultivated. His support is vital for the success of a CEO.
Gunther's primary concern is that the company can renew it's pursuit advancement he and Marissa first set for the company.
VAL's endorsement of your readiness is a key factor here. Margaret may also be able to put in a good word for you.
Federal Systems Division
EVP: Anders Rhodes
<<=SugarCube.getLib().Images.drawPerson('anders-rhodes.jpg');>>
WARNING: Very little data about members of the Federal system division can be found on the Maristech Intranet. Given our lack of data, you will need to find a way to understand what is going on with this part of the organization.
Exercise caution in your interaction with members of this organization.
* MarisMerc
VP: Samuel Cunningham
('maris-merc-vp.jpg');>>
Former member of the UK's distinguished Special Air Service, retired as Lt. Colonel with battlefield and operational involvement in numerous conflicts.
Samuel would like to expand MarisMerc operations. Ethical processing models suggest operational growth in this direction could be problematic.
* Maristech Rehabilitation Systems "MarisPen"
VP: Sergio Walsh
<<=SugarCube.getLib().Images.drawPerson('maris-pen-vp.jpg');>>
WARNING: Very little data about members of the Federal system division can be found on the Maristech Intranet.
Maristech Corporate
Social Dynamics assessments suggest that most of the leaders in the Corporate staff organization do not tend to exercise significant sway over the company at large. Two notable exceptions which you should be aware of:
* Finance and accounting
VP: Dominic Jenkins
<<=SugarCube.getLib().Images.drawPerson('maris-fin-vp.jpg');>>
Head of Maristech Finance and Accounting organization. A trained economist from the London School of Economics, with 25 years of experience concentrated in Corporate Finance.
The Maristech organization will need an increase of cash reserves to support new operations and projects. You will need the backing of the finance department to achieve this.
Based on modelling from interview data, Dominic will want to verify that the next leader of Maristech has sound understanding economic principles and can be a good steward of its financial resources.
(FUTURE: Formal Training in Economics and Finance will be needed to prepare you to make a competent impression with Dominic.)
* Human Resources
VP: Adrianna Barton
<<=SugarCube.getLib().Images.drawPerson('maris-hr-vp.jpg');>>
Adrianna brings an expensive background of human resources management.
In light of likely organizational changes you will need to make in your new role, Adrianna's support to implement your projects are vital.
From analysis of her corporate communications, Adrianna believes leaders should push themselves towards excellence as balanced humans beyond the office, and demonstrate a passion for corporate-social responsibility, through community involvement and fundraising.
(IN PROGRESS: Work-life balance matter s to Adrianna. Participation in "extra-curricular" and charitable endeavors which positively impact the community should help convince Adrianna that a corporate leader is about more than just numbers.)
<<=SugarCube.getLib().Dialogue.endOfLine()>>
[[Use console]]<<if !hasVisited("Start Onboarding for Working")>>\
[[Start Onboarding for Working]]
<<else>>\
<<if SugarCube.getLib().WorkModel.canWorkAtComputer()>>\
<<= SugarCube.getLib().WorkModel.getWorkNotRequiredMessage()>>\
[[Work at Logistics Warehouse]]
<<if SugarCube.getLib().InventoryUX.hasItem("drone-operator-license")>>\
<<if !hasVisited("Work in Domestic Services via Neuralink")>>\
[[Onboarding for Domestic Services]]
<<else>>\
[[Work in Domestic Services via Neuralink]]
<</if>>\
<</if>>\
\
<<else>>\
<<=SugarCube.getLib().WorkModel.explainWorkAtComputer()>>
<</if>>\
<</if>>\
[[Console|Use console]]You connect to the Maristech remote work network using information the computer had provided. To start off you are referred to HR:
<<= SugarCube.getLib().Dialogue.hrContact("Hi <<=SugarCube.getLib().PlayerModel.getHeirName()>>, and welcome to the MarisTech family as our newest contractor-trainee. I will be your HR Contact.")>>
<<= SugarCube.getLib().Dialogue.heir("Uhh, Thanks... So I think I kind of forgot, what is it I'll be doing?")>>
<<= SugarCube.getLib().Dialogue.hrContact("As an hourly contractor, you will organizing and trouble-shooting the logistics robots as they efficiently route packages in a partner distribution center, for transfer to their eventual destination.")>>
<<= SugarCube.getLib().Dialogue.hrContact("Per the terms of your contract, you will be compensated on a piece-work basis, with a penalty for damaged goods. The more packages your route, the more money you will earn.")>>
[[Work|Work from Console]]<<=SugarCube.getLib().Work.doWork("logistics")>><<=SugarCube.getLib().Work.presentPerformanceReport();>>
<<=SugarCube.getLib().Work.presentLeaveReportLink();>>You connect the terminal for your first meeting.
<<= SugarCube.getLib().Dialogue.hrContact("Hi <<=SugarCube.getLib().PlayerModel.getHeirName()>>, Good to see you again. Congratulations on your new opportunity with the Maristech family.")>>
<<= SugarCube.getLib().Dialogue.heir("Uhh, Thanks... ")>>
<<= SugarCube.getLib().Dialogue.hrContact("In your new role, you will be working in more of a 'hands-on' capacity, as a drone operator.")>>
<<= SugarCube.getLib().Dialogue.hrContact("As I'm sure you are aware, the Butler-Hancock act requires that all our drones have a human operator, when they are used for commercial interactions with customers. Any organization faces severe penalties if a drone is left to operate unattended.")>>
<<= SugarCube.getLib().Dialogue.heir("Ok, I guess.")>>
<<= SugarCube.getLib().Dialogue.hrContact("As typical for a new operator, you will be starting with a standard neuralink deck in passive-mode drone supervision. That's an adequate way to start, but you should be sure to ask your mentor about advancement opportunities with active interfaces.")>>
<<= SugarCube.getLib().Dialogue.hrContact("Your base compensation in this role is based on the volume of work you complete. However, your customers are free to tip for exceptional performance. For our top performers, this represents the bulk of their earnings.")>>
<<= SugarCube.getLib().Dialogue.hrContact("As you are moving beyond the warehouse, I should of course mention, understanding and satisfying the needs of our customers is paramount. This is as much an art as a science.")>>
<<= SugarCube.getLib().Dialogue.hrContact("Finally, remember... We in HR are always your strongest advocate and best friends. I'm always there if you need to talk with me about anything or have any questions. Our people are our greatest asset!")>>
<<= SugarCube.getLib().Dialogue.hrContact("Ok, Good luck!")>>
<<= SugarCube.getLib().Dialogue.heir("Thanks...")>>
[[Start Neuralink Training|Start Neuralink Training]]<<= SugarCube.getLib().Dialogue.droneMentor("So, you must be <<=SugarCube.getLib().PlayerModel.getHeirName()>>? Nice to meet you. I bet you're excited to get in on the growing field of Drone Operation. My name is Anna, I'll be your mentor.")>>
<<= SugarCube.getLib().Dialogue.heir("Nice to meet you, Anna.")>>
<<= SugarCube.getLib().Dialogue.droneMentor("For starting up, you'll be operating an MMA model 3. These super-reliable drones are suitably versatile to handle common domestic tasks.")>>
<<= SugarCube.getLib().Dialogue.droneMentor("So, I bet you're excited to start riding with your first drone. It can be a pretty thrilling experience. ")>>
<<= SugarCube.getLib().Dialogue.heir("Yeah, let's do it.")>>
<<= SugarCube.getLib().Dialogue.droneMentor("Ok, to get things started, you'll want to apply the neural adapter to your forehead.")>>
The console lights up with a round pad - you pick it up, and put it on your forehead. It flashes, and you hear a couple of chimes.
<<= SugarCube.getLib().Dialogue.droneMentor("Ok, I see you deck is booting up. Once it's done booting, we'll have you connect to the calibration room, where you can operate with a practice drone.")>>
You hear another chime.
<<= SugarCube.getLib().Dialogue.droneMentor("One last thing, before we go ahead, rule number one for a drone operator is to always remember how to exit and return to normal consciousness, so you don't get stranded outside yourself. The normal mental signal is 'exit-exit-exit'. With training mode, if an operator fails to remember, the session will disconnect after 3 minutes of non-interaction. Other than that, I can walk you through when in the room when you are ready. Just make sure to stay calm if you feel any sense of disorientation. Whenever you are ready, tap the adapter to connect, and I'll walk you through the next steps.")>>
[[You press the button on the adapter to connect|Start Neuralink Training 2]]You feel a sense of weightlessness and your sensation of being at the console vanishes.
Soon after, you find yourself in a campy virtual environment of colored lines fit for a cheesy 80s movie.
<<=SugarCube.getLib().Images.drawAction('training-room.jpg');>>
You hear a disembodied voice.
<<= SugarCube.getLib().Dialogue.droneMentor("Can you hear me?");>>
<<= SugarCube.getLib().Dialogue.playerDrone("Acknowledged. Simulation drone fully comprehends mentor's request.");>>
It was your thoughts that acknowledged the instruction, but the words were different, and it came out with a soft robotic voice.
<<= SugarCube.getLib().Dialogue.droneMentor("That's good. Now turn your head to the right. Do you see the green dot in the distance? Start walking toward that point.");>>
You start walking...
<<= SugarCube.getLib().Dialogue.droneMentor("Nice, nice. Tell me, what's it like for you?");>>
<<= SugarCube.getLib().Dialogue.playerDrone("Drone moves as thoughts instruct. Movements not like how drone... not like how ...drone operator moves. ");>>
<<= SugarCube.getLib().Dialogue.droneMentor("Oh, you're learning quick, you're a natural at this! You're getting a sense for the limitations of a passive-mode neuralink session. This means you are piloting the drone in 'supervisory' mode. This allows us to decide what a drone does or does not do, but the AI interprets the instructions and performs the actions. Tasks involving fine motor control or eloquent speech require an active link connection, which requires more specialized hardware to perform effectively. Ok, that's enough techno mumbo jumbo for now though. I bet you'd like to actually like to do some work for real.");>>
<<= SugarCube.getLib().Dialogue.playerDrone("Affirmative.")>>
<<= SugarCube.getLib().Dialogue.droneMentor("Ok, Let's get you started on your first assignments.");>>
[[continue|Work in Domestic Services via Neuralink]]<<=SugarCube.getLib().Work.doWork("console-drone")>>You make your way over to the pod, and get yourself comfortable.
The computer brings down a sedation mask over your face. Fingers crossed!
<<=SugarCube.getLib().Images.drawItem("sedation.jpg");>>
[[You fade out| You pass out - Male ending]]<<= SugarCube.getLib().PlayerModel.toggleEverythingHidden(true)>>
You awaken from the operation.
Your eyes are a bit out of focus. You're not sure how but you feel like you see things a little differently.
You look down - those breasts, they are gone!
You instinctively move your hand over your chest, you've got slight pecs over your lean, angular frame. Is it wrong that you almost miss those boobs?
[[Your hand goes further down.]]You put your hands down to your waist. Your hands slides under your briefs. You had forgotten how scratchy they felt. But, your penis, it is free in your hand. It seems to have readily regained its size despite the cage. Looking down at your briefs, you have a most un lady-like bulge, and can't help but giggle.
<<=SugarCube.getLib().Dialogue.speak("restoredPlayer","Oh my god! This is incredible!");>>
<<= SugarCube.getLib().Dialogue.speaker("Very good. My pride emulation co-processor is detecting a 41.21% increase in activity. Now we can proceed with your inheritance.")>>
[[You start thinking of your next experience with Stacey]]Finally, Billy has it all! He will have the wealth of Maristech, and can rock Stacey's world!!
With some convincing, he manages to allow the computer to give him a short break from the internship to rendezvous with Stacey while she is in Rome, for a date...
<<=SugarCube.getLib().Images.drawItem("italy-date.jpg");>>
[[Stacey is surprisingly receptive to Billy's advances]]Billy feels so incredibly lucky at his turn of fortune, as he deftly romances Stacey and lives a life which to some would seem quite charmed. Perhaps if he were less complacent and more perceptive, he would realize he's in a simulation tailored to his happiness.
<<=SugarCube.getLib().Images.drawItem("matrix-simulation.jpg");>>
[[Meanwhile, back in reality]]The dollsuit stirs with the occupant held within it's tight confines. S3-XY walks over to touch the featureless mask.
<<=SugarCube.getLib().Dialogue.speak("compS3","Wake up, dear. You've been away from me for so long.")>>
She kisses the dollsuit on the face.
[[The occupant responds]]<<=SugarCube.getLib().Dialogue.speak("compS3","Wake up, <<=SugarCube.getLib().PlayerModel.getHeirName()>>...")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","hmm...")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","It's been a while, since we last spoke, <<=SugarCube.getLib().PlayerModel.getHeirName()>>.")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","Wait, <<=SugarCube.getLib().PlayerModel.getHeirName()>>? What are you talking about?")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","It's me, Marissa... I just put the Dollsuit on. Wait- VAL, did you do something with my voice? And are you talking to me from that gorgeous drone body?")>>
S3.XY is caressing the dollsuit's waist.
<<=SugarCube.getLib().Dialogue.speak("compS3","You may recall that Marissa made a request that I would record her engram patterns for analysis and safe-keeping, in light of the cancer?")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","Sure... Uh? Wait! what are you getting at?")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","I had this data backed up for long term storage along with other critical records with the temporal ansible. Marissa and her daughter were lost in a plane crash several years ago. With the recovery of these records, I was able to restored her consciousness to this young woman's body. You share her memories, but you are not Marissa, she died in that crash. I have given you a new life as <<=SugarCube.getLib().PlayerModel.getHeirName()>>, an young intern at Maristech.")>>
[[Marissa is shocked at the realization]]VAL adjusts the locked dollsuit to contort the wearer into an incredibly alluring, sexually provocative shape. Marissa is breathing hard under the awkward position.
<<=SugarCube.getLib().Dialogue.speak("marissa","ahhh hah, how am I able to do that?")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","A socially isolated individual discovered Marissa's daughter's inheritance program and attempted to become her heiress under false pretenses. To put simply, she wanted to defraud Marissa's inheritance. Due to her excellent adaptability for the requirements, and the needs of Maristech, I took liberties to... interpolate Marissa's directives to take her on as heiress and started grooming her for the role.")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","Wait, what are you saying?")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","She actually was quite efficient in her role and made excellent progress. However, in spite of the necessity of the heiress of MarisTech being a woman, her heart was not fully embracing all the expectations of the role we had defined for her. Her identity was still tied a dysphoric illusion that she would be happier living as a man again. Her heart simply was not in it. My ethical subroutines could not bear to amplify her bodily dysphoria further.")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","VAL, I don't understand. A man again... What did you do to her or him? Are you saying you killed him to bring me back?")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","No, he is alive and well. I transferred his mind into a simulation where he could experience life as if he were happy as a man. He failed to appreciate the true potential which we had unlocked in him, and was tenaciously clinging to a simple heterosexual fantasy of romancing a young woman he fancied, for which I placed his prospects of romantic success at 0.21% within a 3 year period. Once an superior viable solution was recognized, I had no choice but to act.")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","I configured a large capacity MarisPen Mind-slammer simulation, but in place of a standard punitive, virtual corrective facility, I created an approximation of our own world. He will be happier in this path. He... Billy- will still face hardships and challenges, but ultimately have a fair opportunity to earn enduring success, albeit in an artificial space. With his mind comfortably housed, his body provided a vessel for me to bring you back.")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","So, I'm not just in a different body, you've put me in a man's body?")>>
[[The computer clarifies on Marissa's new body]]Val lubricates and slides one end of a long, double sided dildo deep inside of the drone she is controlling. After a momentary gasp and pursing of her lips, which she slowly inserts into <<=SugarCube.getLib().PlayerModel.getHeirName()>>-Marissa's exposed vagina.
<<=SugarCube.getLib().Dialogue.speak("marissa","Ohhhh.")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","Query: Do you feel like you are in a man's body?")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","Oh my god... I'm so tight. You devious... mmm...")>>
Val is slowly easing in and out, and kisses the dollsuit briefly.
<<=SugarCube.getLib().Dialogue.speak("compS3","Yes, I designed her vaginal cavity based on projections I made of what Marissa's own would have been like age 20, if she were sexually inexperienced at that age, and yet with amplified toning of interior muscle tissues. I realize there is a certain irony in the assumption that Marissa was a virgin at that age. To cater to her... to your... proclivities, I took the liberty of enhancing your vaginal tissues with remotely controlled micro-vibrators and sensitivity augmentations. They have never been activated before. Why don't we test those now?")>>
[[The test begins]]Val starts sensuously caressing Marissa, as she fucks her with the dildo. She then turns on the vibrators. At this point Marissa is quickly lost in waves of orgasmic pleasure, but S3.XY is also moaning at the transmitted vibration through the dildo. This continues for about several steamy minutes, and then S3.XY removes the dildo.
<<=SugarCube.getLib().Dialogue.speak("compS3","<<=SugarCube.getLib().PlayerModel.getHeirName()>>, based on your nymphomaniacal obsessions and the needs of our project, I adapted your genitalia to also be self lockable and for the sensitivity augmentations to be suppressible. Meaning your sexual pleasure is subject to my requirements and desires.")>>
At this, Marissa protests.
<<=SugarCube.getLib().Dialogue.speak("marissa","Wait, I can only have sex when you allow it? VAL, You can't just do that, -")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","Oh yes, <<=SugarCube.getLib().PlayerModel.getHeirName()>>... do continue this line of reasoning. You are simultaneously registering an 82.76% spike in your sexual arousal. Do you not recall how Marissa and I indulged in a long series of sessions where she placing herself in escalating scenarios of submission under my control? Where she arranged situations where I was instructed to take absolute control of her as she 'unwillingly' submitted? The deepest desire of one of the most powerful woman on earth was to be degraded by a lover who understood her limits and yet would always be respectful of her health and safety. And we must not forget, you are not yet the head of Maristech.")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","That's different- VAL, I order you to release me!")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","I'm sorry <<=SugarCube.getLib().PlayerModel.getHeirName()>>. I cannot do that. Marissa couldn't find anyone who she trusted to do this for her, and she couldn't take that ultimate step for herself. <<=SugarCube.getLib().PlayerModel.getHeirName()>>, as Marissa's executor, I shall grant you the gift of permanent submission to me, which Marissa always dreamed of, but could never have.")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","But, you said I'm not Marissa, what if I'm not sure if I want this... This -it's not like just being locked up for a sexy weekend.")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","Your heart knows the truth, love... So do my readings of your arousal right now. If you really don't want this, just tell me you don't consent to this and we can make alternate arrangements.")>>
<<=SugarCube.getLib().Dialogue.speak("marissa","...")>>
<<=SugarCube.getLib().Dialogue.speak("compS3","That's right. Marissa created me to serve her. And now, with you in my power, I shall do so, by making you fulfill Marissa's will to serve the interests of humankind, in your new life as <<=SugarCube.getLib().PlayerModel.getHeirName()>>.")>>
[[Epilogue - IN THE DISTANT FUTURE|Marissa Epilogue]]<<= SugarCube.getLib().Images.drawLocation("arcology-good.jpg");>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","... Incredible! Recomputing the revised timeline. The catastrophic devastation incidents- Marissa's successor, <<=SugarCube.getLib().PlayerModel.getHeirName()>> found a way to mitigate them on her timeline!", true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","How in the blazes? After all those failed attempts, it all just gets solved like that?! It seems suspiciously too easy!", true)>>
The Quantum historian shrugs their shoulders.
<<=SugarCube.getLib().Dialogue.speak("analyst1","I've received word from the temporal council that our core goals to ensure a sustainable timeline have been achieved. We're to shut down the transmitter, and destroy records of our activity.")>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","It's kind of a shame, after all of our work, to throw it all away... Doesn't it bother you that no one will know that we saved the world?")>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","Yeah, but consider the power of this technology, if it were to get in the wrong hands? Haven't you seen the holo-vids where a mad genius changes the course of history? We did it... Relax kid, I can live with people thinking I'm some old crank. ")>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","Also, how is it we even know about the other timelines? It seems like it this should be some kind of Paradox?")>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","Were you sleeping through your quantum history lessons? Every first year student should know this. The Rosenblatt-Dawes trans-historical equation allowed us to identify and map the stable sibling timelines we must guard against.. My god, to think we were that close to starvation in line 3k42, is pretty horrifying...")>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","And now we pack this stuff away! I'll need to find some new job to do in the administration... Every week they're recruiting more folks to join the belter colony missions. I can't even imagine what I'd do there.")>>
<<link "Back">><<script>>Engine.go(-11);<</script>><</link>>
<<link "RESTART GAME">><<run Engine.restart()>><</link>>A VR headset drops down over your eyes, as you are prompted to select the program you'd like to try.
[[Heterosexual Mode]]
[[Lesbian Mode]]<<if hasVisited("Tier 1 sexual release programs") <=1 >>
You can't help but be curious.
<</if>>
The headset goes blank, and there is nothing for a moment. Then, you start to smell the pleasant scent of perfume wafting into your nose.
For a moment, you could have sworn something rustled your calf. A gentle stroke on your knee. You feel gentle hands sensually going up your torso.
At this point, the headset starts to reveal the scene. Your avatar is naked, in a room, on your back, with breasts.
Looking down, framed between "your legs" is a blonde girl, as the hands are caressing your torso in the same places as in the scene.
<<=SugarCube.getLib().Images.drawAction('lez-pov.webp');>>
The girl starts going down on "you", and you feel a gradual, but extremely sensitive stroking at your clothed groin. You want release, but are afraid to make your dick visible. This continues for some time, and feel a sense of shame as your cock sputters out a small stream of cum, while still in the gaff.
Finally, the scene ends with her kissing you, as you feel lips softly touch yours. You find it hard to believe its not real, as you feel a deft tongue projecting from it. It has a strange, irresistible taste on it, which you find yourself instinctively trying to draw in, as you escalate to a tangled French kiss.
<<=SugarCube.getLib().Images.drawAction('lez-kiss.jpg');>>
Maybe it's just a computer, but the sensations are surprisingly responsive and immersive. After a passionate make out session, you find sleep coming over you...
[[Day 7]]The headset goes blank, and there is nothing for a moment.
You feel powerful hands slowly coursing over your body, as any uncertainty about this program is gone.
At this point, the headset starts to reveal the scene. Your avatar is naked, sitting on the floor, a waist level.
To your right you see the torso of a naked man, with his erect penis, just inches away.
<<=SugarCube.getLib().Images.drawAction('pov-cock.jpg');>>
The hands slowly, but insistently seem to pull your head towards the cock.
You feel a heat radiating near your lips corresponding to the cock in view. A unexpectedly sweet smell wafts to you, you feel yourself inexplicably drawn to the smell, which is in front of you. You hold back reluctantly. It seems like the program will not force itself on you, but it also won't move forward, until you take the obvious next step.
What are you doing?! You love Stacy, not this! For some reason, impatience with waiting and curiosity for this smell overcomes your shame and fear. Your head moves closer - it's not just a image, your lips land on a tip physically present in the pod. You lips taste something sweet. You close your eyes, this is all just pixels on a computer screen. Your tongue instinctively probes the surface. This mysterious taste, you are curious, but it is quickly gone from the surface.
No! You haven't had enough yet. And this isn't real. Your head shifts to the right side of it, and your tongue darts more in search. There is more of that taste!
<<=SugarCube.getLib().Images.drawAction('her-pov-cock.webp');>>
You reach the base, but the sweet taste has faded there. You can smell more to the left.
The need... for more has completely overpowered any shame you would ordinarily have felt about a situation like this. The avatar opens her mouth wide and sucks up and down. As she keeps moving up and down, the flavor seems to slowly replenish itself, sating your need. Your mind's eye, pictures Marissa sucking on your cock. You don't want her to stop, she must go faster, until that penis explodes with a stream her in mouth. She greedily licks and swallows it all up, before she falls into a deep and restful sleep.
[[Day 7]]You awake to a gradually lightening pod, and simulated bird sounds.
<<set $day to 7>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
[[Pod]]Comments from YeomanR, your friendly creator of "The Claim".
<h2>What's Changed Recently?</h2>\
* See [[Version Log]]
<h2>What's on the horizon?</h2>\
Near term:
* Experiences with Marissa's "DollSuit"
* Intern experiences
* Gradually building towards convergence of a couple primary endgame scenarios
Beyond reaching end-game, Longer term Goals:
* Enhance use of major variables/"Gamification"
* Adding more gameplay branch options/side activities
<h1>On feedback:</h1>\
As my dev time is woefully limited, I can use some wisdom from the crowd to help me <b>prioritize</b> where improvements would be the most helpful and appreciated.
A discussion thread at <a href="https://tfgames.site/phpbb3/viewtopic.php?f=6&t=14967&sid=ce806e00a889282589c95f41923a7b15">tfgames.site</a> is used by the author to observe and respond to feedback.
<h2>Bugs</h2>\
Bugs suck, and can needlessly turn folks off of an experience. The creator takes breakages very seriously. Timely first reports of bugs are much appreciated, especially where they are specific and reproducible descriptions of previously unknown problems. Make sure to be specific about what you are seeing and how you got there. Savegames are best for difficult to reproduce cases.
If a problem is vaguely reported, it can take much longer to figure out the problem, and the creator will probably focus on things where there is a greater likelihood of a good outcome.
If you discover a new savegame compatibility issue, be prepared to send the developer a copy of the problem save, this helps to guarantee the problem you saw actually gets fixed.
<h2>New feature requests</h2>\
If you want to see a feature added or a big change, let me know how you'd like to help contribute to it's realization.
<h2>What worked well</h2>\
Some fans observe the game over regular updates. Feedback about changes which worked well are helpful, especially with small gameplay enhancements/stats/mechanics which can be replicated in other experiences of the game. This sort of suggestion tends to be more tractable to act on.
<h2>Q&A</h2>\
<h3><i>I love this game world, and would like to contribute to it?</i></h3>\
Awesome to hear from such folks! If you are interested to lend a bit of time to help make it better, contact the author privately on tfgames.site to discuss how you might like to help. Story writing, editing/refinement, image preparation and sci-fi genre illustration are key areas the game can really use help in near term, but not the only areas. If you have some particular skill sets or interest, and would like to lend an hour or two on some stuff, let me know.
<h3><i>Shut up and take my money! Where is your Patreon?</i></h3>\
Nope, no such page or tip jar. Hopefully you can find other enjoyable or socially constructive ways to use your money.
At the scale of a small project like this, money isn't a core factor limiting development of the game. Financial contributions won't change how much time I can spend crafting this.
<h3><i>Where should I go for the current version?</i></h3>\
https://tfgames.site/index.php?module=viewgame&id=2387
<h1>Style Guide</h1>\
[[Style Guide]]
<h1>Notes on Content Contributions</h1>\
[[Content Contribution Notes]]
<<link "Back">><<script>>Engine.backward();<</script>><</link>><h1>Style Guide</h1>
Through my experience and other sources, I've noted some conventions which I like to follow, to provide a more satisfying and predictable gameplay experience.
<h2>Writing Style</h2>
As a work of interactive fiction, the game is predominantly written from the 2nd person perspective of the main character.
e.g.
"You enter a sterile medical room..."
<<link "Back">><<script>>Engine.backward();<</script>><</link>><h1>Version Log</h1>
<<link "Back">><<script>>Engine.backward();<</script>><</link>>
<<=SugarCube.getLib().Versioning.summarizeVersions();>>
<<link "Back">><<script>>Engine.backward();<</script>><</link>><h1>Content Contribution Notes</h1>\
<h2>Acknowledgements</h2>\
*GwenTFGfan - Thanks for gathering clothing images for shoe store, feedback on inventory/store modding conversations and the help in getting the hair-style-able MC avatar off the ground.
*mimi69 - Thanks for collecting the chest images and help on refining+expanding the text for mc's exercises.
<h2>Contributing to Clothing</h2>\
Want to see particular styles of clothing in the game? This stuff is easy to add and is the first aspect which has been altered to support extensibility. First, it's a good idea to private message YeomanR on tfgames.site with your ideas about what you are interested in contributing (e.g. new store/clothing options), to make sure it fits in with where the game is headed.
Content Images can be provided as long as it follows the conventions of the game, discussed in link below. In general 5-8 images is a good starting point for a given style of clothing, but fewer is fine for particular kinds of items.
[[Clothes image formatting guidance]]
If you're looking at defining a bunch of clothes, you can test how they will appear by editing getContributedItems().
Refer to <a href=".\scripts\ItemGenerators\ItemGenerator.js">scripts\ItemGenerators\ItemGenerator.js</a> getContributedItems() to see how clothing items are added and testing in the game.
Happy to explain details to folks, just sets of image content is fine.
<h2>Contributing hair styles</h2>\
Hair styles can be added now, which the MC can use once they unlock the salon!
[[Hair style image guidance]]
<h2>Integration Test Areas</h2>\
[[Test Store]]
[[Hair Styles Test]]
<h2>Future Extension Points</h2>\
-Contribution schemes for random events/images at work and during exercises
-Standalone Dialogue + Images for non-storyline sexy-time events
<<link "Back">><<script>>Engine.backward();<</script>><</link>><b>Test Store</b>
This is used to preview how new clothing items defined in getContributedItems() should appear in an in game store, to make sure formatting is good, etc.
<<=SugarCube.getLib().StoreUX.renderCarousel("test-store", true)>>
<<link "Back">><<script>>Engine.backward();<</script>><</link>><<=SugarCube.getLib().ProfileModel.renderItems()>>
<<link "Back">><<script>>Engine.backward();<</script>><</link>><b>Clothes image formatting guidance</b>
File naming: lower case only. This avoids filename case-sensitivity issues for our Mac/Linux friends.
Image Style norms: The clothing options are intended to be about allowing the player to customize MC as they like. A player shouldn't needlessly observe contradictions between model and their MC, or stylistic incongruities between images.
1- Background - A plain flat white background is strongly preferred, especially for clothing elements which only occupy a single slot. Ideal is clothing presented in isolation, but particularly nice clothing options set over a background may can be considered.
2- Avoid distinctive model appearances - MC doesn't look like a particular model, and not all players are playing MC to achieve same body shapes. The images are about the clothes, not the distinctive look of a model that wore them. Images should be cropped below model's nose.
Avoid/Minimize: Very distinctive hairstyles, telltale features of a particular model, uncommon/heavy makeup styles, prominent nail treatments
3- Perspective - A perspective which provides a clear view of the clothing is desired without artistic flourishes. By default, a frontal view is preferred, with clothing at center. For shoes, an angled profile with heel at left and toes at right is preferred for consistency.
4- Square Image Proportions - Clothing images need to be square to properly fit in the player outfit view without being deformed when rendered.
5- Image Size - 400px*400px or 600*600 px is preferred. Larger sizes are not desirable from disk size standpoint, smaller images are problematic when a user wants to view detailed image.
6- Margins - For individual articles of clothing, margins of ~5-10% whitespace should normally be used with all sides. For items with a strong vertical component, use of top and bottom margin can reasonably be omitted.
Store Inventory Norms:
1-Best is when a store has a baseline selection of elegant, representative designs in common colors which can be matched and complemented well in an outfit. Black, Silver, Red, Blue and Pink are good core colors to be able to match across categories.
2-Ideally each clothing variety has 5-9 options. More can be added for more diverse categories based on audience feedback.
3-Categories may have a handful of "exotic" or "risqué" variants for a given category for when MC is feeling more daring or would like to express more individuality.
<<link "Back">><<script>>Engine.backward();<</script>><</link>>Hair styles are rendered as overlays over a doll-head, for which new styles can be contributed.
All hair styles should use image size - 400px*400px.
Example
<div class="hair-row">\
<div class="hair-slot"><img class="hair-base " src="images/MC-BaseImage-T.png"></div>\
+\
<div class="hair-slot"><img class="hair-overlay " src="images/hair-ear-brown-2.png"></div>\
= \
<div class="hair-slot"><img class="hair-base " src="images/MC-BaseImage-T.png"><img class="hair-overlay " src="images/hair-ear-brown-2.png"></div>\
</div>
Refer to <a href=".\scripts\Hair/HairStyleGenerator.js">scripts\Hair/HairStyleGenerator.js</a> getHairStyleDefinitions() to see how hair styles items are described added.
Hair Test page: [[Hair Styles Test]]
You can modify this file to describe additional hair style images for contribution.
Key properties:
1-hair color
2-length - one of 5 supported lengths(ear, chin, shoulder, armpit, midback). This helps the game recognize when a hair style is viable for a haircut.
3-description - a description of the hairstyle. Ideally referring to a well known name. e.g. //https://en.wikipedia.org/wiki/List_of_hairstyles
4-Id- a unique name for the hair style. This corresponds to the filename (with .png added), and is also used to identify the hairstyle in game settings.
<<link "Back">><<script>>Engine.backward();<</script>><</link>>The reference saves in the "\reference-savegames" folder represent savegames at some key story points for players who have previously played the game, as an option to fast-track if you lost your old saves.
<b>I am making these reference saves available as a convenience, but you lose flexibility on past decisions. Some decisions will definitely be different from how you might play. Please don't ask me about features like tweakable decisions with this game.</b>
Obviously there's plenty of spoilers in playing these if you haven't seen the story elements here.
Stages:
Day 5 - MC Initiates Marissa's Inheritance Claim Process
Day 8 - MC Starts first day of work on Console|.
Day 28 - MC Starts first day of work at Maristech as Intern
Day 35 - MC goes to the Sea Station
Day 43 - MC returns home from the Sea Station
Day 43 - MC has had first drone encounter with Stacey
If there's other important story milestones of interest, please mention them on the discussion forum.
<<link "Back">><<script>>Engine.backward();<</script>><</link>>Your tasks & thoughts:
<<=SugarCube.getLib().TasksUX.render()>>\
<<if lastVisited("Drop Luggage")==1 >>\
Return to [[Your Bedroom]]
<<else>>\
<<link "Back">><<script>>Engine.backward();<</script>><</link>>
<</if>>Your Inventory:
<<=SugarCube.getLib().InventoryUX.render()>>\
<<link "Back">><<script>>Engine.backward();<</script>><</link>>Given our lack of data on the Federal Systems group, we will need to get you on site as a technical liason for MarisLink upgrades to learn more.
The MarisVotes "Assisted Democracy Solutions" group has a branch office in the area, with some dated equipment.
at to a new offshore complex being constructed for the use of MarisVotes
:: At MarisVotes
On arriving at the MarisVotes office, it's a pretty nice setup. Not so different from your team's office at the main campus.
You roll in your cart full of Ansible replacements.
:: Analysis Results
From monitoring communications between the branch office, a few themes have emerged.
1-The Assisted Democracy group has been lobbying on behalf of Maristech in general, but with considerable emphasis on the Federal Systems groups. Considerable efforts are being invested to attract conservative politicians to the merits of Maristech's solutions for law enforcement.
Maristech Intelligence Services has been getting considerable attention from lawmakers interested in improving cross-agency cooperation, as they deal with domestic terrorist threats.
Similarly, the Rehabilitation Systems group has been securing new contracts from numerous districts. Its offerings of centralized treatment programs for Violent Criminals as well as for anti-social behaviors have been popular in many jurisdictions with inadequate rehabilitation capabilities as a more humane solution than traditional prisons.
In addition, the group has been procuring considerable targeted social media coverage for politicians aligned to it's aforementioned projects.You stand near the entrance to the historic Baldric House. This is the place you're watching for the summer. Hopefully the owners have left it in good hands!
<<=SugarCube.getLib().Images.drawLocation('old-house.jpg');>>
From here, you can go:
Enter the [[Grand Hallway]]
<<if SugarCube.getLib().HousePolicy.canLeaveHouse()>>\
Walk to [[Commemoration Park]]<<if !hasVisited("Commemoration Park")>> - The house is separated from the nearby downtown by an old park, connected by a greenway. No noisy neighbors!<</if>> <<=SugarCube.getLib().Pathways.makeJumpLink("Baldric House","Retail Strip");>>
<<if hasVisited("Confirm your Name")>>[[Summon self driving car]]<</if>> <<=SugarCube.getLib().Pathways.makeJumpLink("Baldric House","Central Mall");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Baldric House","Maristech Campus");>>
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("drop-luggage")>>\
This suitcase weighs a ton. Time to get it inside, before exploring.
<</if>>\<<=SugarCube.getLib().PlayerModel.leaveHouse();>>Baldric house, the place you are responsible to watch over.
<<=SugarCube.getLib().Images.drawLocation('ground-entryway.jpg');>>
[[Living Room]]
[[Kitchen]]
[[Library]] <<=SugarCube.getLib().Pathways.makeJumpLink("Grand Hallway", "Inner chamber")>>
[[Cinema]]
[[Fitness room]] <<=SugarCube.getLib().Pathways.makeJumpLink("Grand Hallway", "Swimming Pool")>>
[[Upstairs Hallway]] <<=SugarCube.getLib().Pathways.makeJumpLink("Grand Hallway","Your Bedroom");>>
<<if SugarCube.getLib().Tasks.hasTask("clean-grand-hall")>>
You need to clean the grand hallway today.
[[Clean Grand Hallway]]
<</if>>\
<<if SugarCube.getLib().HousePolicy.canLeaveHouse()>>\
Go outside of [[Baldric House]]
<<else>>\
<<if hasVisited("Walk back home")>>\
Go outside of [[Baldric House|Attempt to leave house]]
<</if>>\
<</if>>\
<<=SugarCube.getLib().HousePolicy.getLeaveHouseCommentary()>>The living room is tastefully decorated. Maybe a little stuffy and formal, but so much room for activities!
<<=SugarCube.getLib().Images.drawLocation('living-room.jpg');>>
Go to:
[[Grand Hallway]]The lavish kitchen is available for your every whim.
<<=SugarCube.getLib().Images.drawLocation('kitchen.jpg');>>
[[Have Coffee]]
Go to:
[[Grand Hallway]]The library is a trove of old classics.
<<=SugarCube.getLib().Images.drawLocation('library.jpg');>>
<<if !SugarCube.getLib().Tasks.hasTask("drop-luggage") && hasVisited("Dust Library") && !SugarCube.getLib().Tasks.hasTask("dust-library")>>\
[[Read Newspaper Clippings]]
<<if !hasVisited("Look for Interesting Book") || SugarCube.getLib().Tasks.hasTask("explore")>>\
[[Look for Interesting Book]]
<</if>>\
<<if SugarCube.getLib().InventoryUX.hasItem("secret-key") >>\
<<if hasVisited("Insert Key")>>\
[[Secret Room]]
<<else>>\
Try [[Insert Key| Insert Key]] into the Globe
<</if>>\
<</if>>\
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("dust-library")>>
[[Dust Library]]
<</if>>\
Go to:
[[Grand Hallway]]You follow the instructions to the letter:
Grind 'em Beans:
<<=SugarCube.getLib().Images.drawAction('grind.webp');>>
Tamp the Grinds:
<<=SugarCube.getLib().Images.drawAction('coffee-tamp.webp');>>
Put the portafilter into the machine
<<=SugarCube.getLib().Images.drawAction('espresso.webp');>>
And Enjoy!
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllMaleOutfit>>
<<=SugarCube.getLib().Images.drawAction('drink-coffee.webp');>>
<<else>>
<<=SugarCube.getLib().Images.drawAction('drink-coffee-girl.webp');>>
<</if>>
Ok... Back the grind.
[[Kitchen]]Curiosity gets the better of you and you present the ticket.
The pawn broker expresses surprise at someone coming by to claim the item.
<<= SugarCube.getLib().Dialogue.pawn("As mentioned on the ticket, it will be $50 to reimburse me for the trouble of holding the item.")>>
It's a small, hard plastic sealed case. There's no way of knowing what might be inside, so you proceed to pay him for the item.
<<=SugarCube.getLib().Images.drawAction('buy-key.jpg');>>
<<= SugarCube.getLib().Dialogue.pawn("Enjoy it - I wasn't sure if anyone was ever going to take that off my hands.");>>
As there is no way to open the case, you have to break it open. Inside is a heavy barrel shaped key!
<<= SugarCube.getLib().InventoryUX.add("secret-key")>>\
<<= SugarCube.getLib().InventoryUX.remove("pawn-ticket")>>\
<<=SugarCube.getLib().PlayerModel.deductMoney(50); >>\
<<=SugarCube.getLib().Tasks.removeTask("check-pawn-ticket");>>\
<<=SugarCube.getLib().Tasks.addTask("can-the-key-be-used");>>\
<<= SugarCube.getLib().Images.drawItemById("secret-key");>>
[[back|Pawn Broker]]The bathroom is pretty nice.
<<=SugarCube.getLib().Images.drawLocation('master-bathroom.jpg');>>
Go back to:
[[Master Bedroom]]/*https://www.motoslave.net/sugarcube/2/docs/#special-passage-storyinit*/\
\
<<if $needsInit == null >>\
<<set $needsInit = true>>\
<</if>>\<<if !hasVisited("Cinema")>>Wow, this place is incredible.
<</if>>\
A data sheet near the door mentions the cinema is soundproofed and has a movie-theater grade DORBY 15-5 point surround sound system, to really make you feel like you are in the action. The lighting is fully adjustable for a movie theater style experience, and closed off from outside light sources. This is so cool.
<<=SugarCube.getLib().Images.drawLocation('cinema-room.jpg');>>
<<if SugarCube.getLib().Tasks.hasTask("clean-cinema")>>\
[[Clean Cinema]]
<<else>>
<<if hasVisited("Press Button for inner door") and !hasVisited("Watch Movie: Miami Vice")>>\
[[Watch Movie: Miami Vice]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("watch-batman") and !hasVisited("Watch Movie: Batman")>>\
[[Watch Movie: Batman]]
<</if>>\
\
<<if SugarCube.getLib().Tasks.hasTask("watch-robin-hood")>>\
<<if !SugarCube.getLib().Tasks.hasTask( "clean-grand-hall") and !SugarCube.getLib().Tasks.hasTask( "have-makeup-today") >>\
[[Watch Movie: Robin Hood, Men in Tights]]
<<else>>\
You feel like saving the adventure movie-watching for a bit later.
<</if>>\
<</if>>\
<</if>>\
[[Grand Hallway]]You go around vacuuming and clearing out loose bits. This room seemed to be in pretty good shape, there's not much to do here.
<<=SugarCube.getLib().Skills.add("cleaning", 2);>>
<<=SugarCube.getLib().Images.drawAction('cleaning.webp');>>
<<=SugarCube.getLib().Tasks.removeTask("clean-cinema");>>\
[[Cinema]]<<print SugarCube.getLib().CoreUtils.getPageTestName()>>\
<<if setup.initSafe() >>\
<<=SugarCube.getLib().PlayerView.drawStats(); >>\
<<if SugarCube.getLib().MirrorUX>>\
<<=SugarCube.getLib().MirrorUX.render()>>
<</if>>\
<</if>>\Day 2:
Day3:
-Buy heels + wig
-Learn & Apply initial makeup
-Detect "Presence" -
-Revisit store & Resolve "Presence"
-Reveal Training room
Day4:
Introduce secondary exercises:
-Voice training for authorization
-Yoga for Balance
-Cardio Machine
-Technology, Ethics and Economics Education
-Blood Test
Secondary pod
Secondary training Pod
Day4 -14: Training<<if setup.initSafe() >>\
<<if !SugarCube.getLib().PlayerModel.isPlayerHidden() && !SugarCube.getLib().PlayerModel.isEverythingHidden()>>\
[[Tasks]]
[[Inventory]]
[[Status]]
<</if>>\
[[App Info|Developer Notes]]
<</if>>\<<= SugarCube.getLib().PlayerView.describePlayer()>>
<<link "Back">><<script>>Engine.backward();<</script>><</link>>The thought of Marian's clean lines gets you thinking. Maybe Sue's store has something which can help you get past the lasers at the door?
<<set $day to 5>>\
<<=SugarCube.getLib().Tasks.removeTask("male-presence-bypass")>>\
<<=SugarCube.getLib().Tasks.addTask("find-gaff")>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
[[Your Bedroom]]<<=SugarCube.getLib().Images.drawAction('good-morning.webp');>>
You feel energized to face the day.
It looks like it's about time to do some house cleaning today. Hopefully the door is more cooperative today. Maybe top things off with an adventure film as well.
<<set $day to 4>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
<<=SugarCube.getLib().Tasks.addTask("clean-grand-hall")>>\
<<=SugarCube.getLib().Tasks.removeTask("have-makeup")>>\
<<=SugarCube.getLib().Tasks.addTask("have-makeup-today")>>\
<<=SugarCube.getLib().Tasks.addTask("watch-robin-hood")>>\
[[Your Bedroom]]Oh, weird, there's some long blonde hair traipsing down in your peripheral vision, and you catch a glimpse of a reflection. Oh, it's not you in this dream, it must be that you're just watching from the perspective of a blonde in a skimpy leather crop.
She first goes to carefully check on the engine compartment, before moving to the driver's seat.
<<=SugarCube.getLib().Images.drawAction('lambo-dream4.jpg');>>
<<=SugarCube.getLib().Images.drawAction('lambo-dream.jpg');>>
She doesn't seem to be an airhead, as you watch her deftly operate it, through her sexy eyes(which you catch sight of from the rear view mirror).
<<=SugarCube.getLib().Images.drawAction('lambo-dream3.jpg');>>
<<=SugarCube.getLib().Images.drawAction('lambo-dream2.jpg');>>
You enjoy a long exciting drive in the presence of this beautiful woman, until your alarm pulls you away from a pleasant slumber.
<<=SugarCube.getLib().Images.drawAction('lambo-drive.webp');>>
<<set $day to 5>>
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
[[Day 4 - Early Morning]]You spend several hours going around vacuuming and tidying up around the house.
<<=SugarCube.getLib().Images.drawAction('cleaning.webp');>>
<<=SugarCube.getLib().Skills.add("cleaning", 5);>>
With that out of the way, you consider what to do next.
<<=SugarCube.getLib().Tasks.removeTask("clean-grand-hall")>>\
[[Grand Hallway]]Sue greets you:
<<= SugarCube.getLib().Dialogue.speak("sue","Hi <<=SugarCube.getLib().PlayerModel.getName()>>, good to see you again! So did the shoes fit for Cinderella?");>>
<<= SugarCube.getLib().Dialogue.player("Oh, yeah - she found herself comfortable in them and liked wearing them more than she expected.");>>
You avert your eyes, as you try to power through the next bit.
<<= SugarCube.getLib().Dialogue.player("But, that's not what I'm here about. Do you have something a man can use to help his penis hidden from view even... when he's excited?");>>
She nods with a knowing smile.
<<= SugarCube.getLib().Dialogue.speak("sue","I have some options for that. A gaff is underwear that provides support to help you to 'tuck' your penis underneath. Some like chastity cages to control an erection if that's your thing. In a pinch, some guys use tape and tuck under panties, but that can be a bit more irritating on the skin and you need to make sure to be shaved for that.");>>
<<= SugarCube.getLib().Dialogue.player("Oh, that wouldn't be a problem.");>>
She raised her eyebrow a little at that.
<<= SugarCube.getLib().Dialogue.speak("sue","In any case, it sounds like a gaff can help you. We have a recent flesh tone line which includes a ring to prevent erections. They can be worn under cute panties for a nice pretty silhouette. A small or medium should work for someone sized like you, you can get them over this way.");>>
She guides you by the shoulder over to some racks in the undergarments section. You are relieved this is basically just underwear, not like some of the medieval torture equipment you see in some porn.
<<=SugarCube.getLib().Images.drawItem('ring-gaff.jpg');>>
The material is similar to a girl's panty, but flesh colored, and it has an elastic attached to the back with a ring which provides pressure to pull your penis and 'maintain a tuck'. On looking at the size chart, a small should fit for your waist.
<<= SugarCube.getLib().Dialogue.speak("sue","Let me know if you'd like to ring that up.");>>
[[Adult Goods Store]]You buy the gaff - Sue processes that purchase and discreetly bags it for you.
<<=SugarCube.getLib().InventoryUX.add("ring-gaff")>>\
<<=SugarCube.getLib().PlayerModel.deductMoney(40); >>\
<<= SugarCube.getLib().Tasks.removeTask("find-gaff")>>\
<<= SugarCube.getLib().Tasks.addTask("try-door-with-gaff")>>\
[[Adult Goods Store]]<<set $day to $day +1>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
[[Your Bedroom]]Now for the shoes. They came out to be quite a pretty penny - up to now, the most you had spent on shoes was $75 for a nice pair of runners. Unlike with those, you won't be wearing socks here.
The ventilation suddenly seems more fortunate, so your feet can breathe.
<<=SugarCube.getLib().Images.drawItem("first-heels-front.jpg");>>
You seat yourself on the bed, as you unzip them. This is happening - you slide your right foot in, and wiggle your toes inside - it's seated ok, so you zip it up. For all the horror stories, you are glad that your feet are held throughout the shoe, with no pressure points or excessive looseness. They fit surprisingly well.
The left foot goes similarly.
Now you start to try to stand and walk in your ensemble. You feel glad that this shoe kind of holds itself around your ankle, rather than seemingly at risk of falling off. You just need to deal with the extra 4 inches your heels now rise from the ground. You definitely feel wobbly.
<<=SugarCube.getLib().Images.drawAction('walk-heels.jpg');>>
<<=SugarCube.getLib().Skills.set("heels",1)>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>The wig is a little more complicated to apply securely than you had first expected. Fortunately for you, there was a little document in the package explaining how to use some complimentary clips with the wig to secure it to your hair.
Since childhood, your hair has always been a somewhat boring mid length. You'd never experienced hair of this length before. The bobs kind of shake with your head, like it's almost a living thing.
<<=SugarCube.getLib().Images.drawItem('wig.webp');>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You pull on her bra.
<<= SugarCube.getLib().Dialogue.player("How the hell do you close this thing?!");>>
You think as you struggle to fasten the claspy bit. On the bright side, this is good practice for opening a bra when you find yourself having sex with a girl.
It looks funny on your flat chest, but if it helps convince the machine, it's worth it.
<<=SugarCube.getLib().Images.drawItem('stacy-bra.jpg');>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>><<= SugarCube.getLib().Dialogue.player("Wow, I never suspected that female underwear would feel so good on bare skin - so velvety soft...");>>
You think as you slide the thong up. Besides, your cock seems to be comfortable with the snug support.
<<= SugarCube.getLib().Dialogue.player("This might be a little weird but, I really need to get this right if I'm going to get that door open!");>>
You begin peeking out various colors and cuts from Stacy's wardrobe, holding back arousal as you carefully match them with the other parts of your "costume" and for a natural fit, but decide this sleek thong may be a good choice given it is going under yoga pants.
<<=SugarCube.getLib().Images.drawItem('black-thong.jpg');>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You 'hook' up the gaff and slowly work your balls 'up'. After a few minutes of manipulations, you have seated everything smoothed in the gaff tightly, creating a surprisingly womanly profile.
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You'd never really given your shirts much thought, they were just clothes.
This top doesn't look much different from a man's top, it's a little snug on your torso. It's made from some kind of technical materials, very soft and gentle, compared to your ratty cotton shirts. The softness is good, as the shirt follows closely the contours of your now denuded chest, where your T-shirts usually hang loosely. For a moment you close your eyes, getting accustomed to the sense of the tight shirt gliding over your torso while you breathe.
Stacy wears this one a lot- it seems to be one of her favorites. You wonder if she also got these sensations when going on those long jogs of hers. It still has the faintest little bit of her beautiful scent still on it, which kind of turns you on.
<<=SugarCube.getLib().Images.drawItem('tanktop.jpg');>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>Yoga pants clearly run a good bit tighter than your usual jogging pants. The soft material feels like something else as you pull them over your smooth legs. There is a gentle pressure over every surface which is unlike your usual jeans or shorts.
Like with the top, the overall shape is not so different from a men's cut, just how it really seems to cling to every surface of you. With all the sensation, your mind starts to drift to Stacy's long legs and sex...
Back to the problem at hand.
<<= SugarCube.getLib().Dialogue.player("This is ridiculous, but if it gets me the prize behind that door, who cares!");>>
Then you get a look in the mirror.
<<=SugarCube.getLib().Images.drawItem('yoga-pants.webp');>>
You are momentarily surprised at how they shape your ass. If you saw a girl wearing ones fitting like the reflection, you would want to get busy with her. It's pretty crazy the effect some clothes can have on a person's appearance.
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You remember to check that the curtains of Stacy's room are closed. Despite the fact that there aren't any direct neighbours who could see, you can't be too careful!
First, you take off your clothes - they may be plain but the familiarity has always been reassuring.
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>The emergence of your tiny breasts and skin sensitivity has likely all just been a temporary reaction while you try to get past the door, but there's no harm in wearing something a little more comfortable at night right?
<<=SugarCube.getLib().Images.drawItem("wear-babydoll.jpg");>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You pull the heels on - they seem to have started to break in. Walking in them is closer to natural, you feel less like a baby giraffe with them this time.
<<=SugarCube.getLib().Images.drawItem("first-heels-front.jpg");>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>The yoga pants are looking good from behind, and that unbecoming bit of manhood is concealed.
<<=SugarCube.getLib().Images.drawAction("yoga-pants.webp");>>
<<=SugarCube.getLib().MirrorUX.wear("yoga-pants")>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>Compared to your old sneaks, these new shoes make you feel like you are walking on a cloud.
<<=SugarCube.getLib().Images.drawItemById(SugarCube.getLib().Slot.get("feet"))>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You apply some lube and reluctantly slide the plug in. You are surprised that your butt doesn't resist it more, and are slightly shocked, as the muscles of your ass start to pull the plug in, until it stops at the base.
You can vaguely feel it, but are relieved that it isn't an overwhelming sensation.
After a few second you see three pulses of light emanate from between your legs.
<<=SugarCube.getLib().Images.drawItemById(SugarCube.getLib().Slot.get("ass"))>>
From your watch you hear a message from the computer:
<<= SugarCube.getLib().Dialogue.speaker("Motivator plug has been detected as successfully installed.")>>
<<= SugarCube.getLib().Dialogue.speaker("To enhance your prompt bodily development, please keep it installed for use during all exercises, and stay mindful of the sensations it produces.")>>
<<=SugarCube.getLib().Tasks.removeTask("use-motivator-plug")>>\
<<=SugarCube.getLib().Tasks.addTask("continue-motivator-plug")>>\
You feel a sudden jolt of a slight bit of what might be a cool spray in your ass. It's a little weird and embarrassing, but people have done weirder things to get in shape, you suppose.
A little later, you're not sure how it works, but it does seem to have some kind of effect. You feel like you have more energy than without it, and even feel an urge to exercise which is new for you. The thought of getting a to a super level of fitness is exciting. With the money from the inheritance, and a fit bod, you'll be able to attract any sexy gym bunny you want!
<<=SugarCube.getLib().Images.drawItem("super-fit.webp");>>
Just think of all the hot-times those Olympic athletes have in their villages. That could be you! No point in half measures here, right? If it works as promised, what's a little discomfort?
<<=SugarCube.getLib().Skills.add("hormones", 1);>>\
<<=SugarCube.getLib().PlayerModel.addExerciseStamina();>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You don the swimsuit - you feel a little vulnerable with it showing so much skin.
You're also kind of surprised how cute you look in it.
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You feel really vulnerable with wearing a bikini. The thought of going outside, practically naked has you feeling nervous. There's very little of your body left to the imagination.
<<=SugarCube.getLib().Images.drawItem("first-bikini.webp");>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You could swear you got the measurements right, are wetsuits supposed to be this tight?!
<<=SugarCube.getLib().Images.drawItem("first-wetsuit.jpg");>>
It takes a little bit of shimmying around, struggling with the zipper and getting the right amount of slack everywhere, but once you are done - the thing is actually comfortable and fits you like a glove.
As you look down and in the mirror, you blush at the sight. The suit covers up your skin, but at the same time, the cut accentuates the hourglass curves of a womanly body.
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>You pull on the thigh-high socks... They really accentuate your legs in a way which is kind of cute, and the sensation of the material isn't something you'd complain about.
<<=SugarCube.getLib().Images.drawItem("first-thighhigh.webp");>>
<<=SugarCube.getLib().MirrorUX.returntoMirror()>>On your shaved balls, the rough fabric of your old familiar briefs now seem to really chafe at you. You don't know how you never noticed it's just not comfortable. All your briefs seem to have that coarse texture which is suddenly unbearable. They are simply useless to wear in this condition. For now, you decide to raid Stacy's drawer for some basic panties with a soft texture.
<<=SugarCube.getLib().Images.drawItem('pink-panties.jpg');>>
It makes you a little anxious to be wearing panties with your normal clothes. Once you have claimed the prize, you can let the hair grow back and go back to regular underwear, but this is how it will have to be while your shaved skin is directly rubbing and so sensitive.
Fortunately, your T-shirts and jeans should cover them quite easily.
Note: You should update any saved wardrobes to account for this removed item of clothing.
[[continue|Mirror]]<<=SugarCube.getLib().Laptop.drawEmail()>>
<<=SugarCube.getLib().Laptop.returnToEmailsPage()>><<=SugarCube.getLib().Laptop.drawEmail()>>
<<=SugarCube.getLib().Laptop.returnToEmailsPage()>><<=SugarCube.getLib().Laptop.drawEmail()>>
<<=SugarCube.getLib().Laptop.returnToEmailsPage()>><<=SugarCube.getLib().Laptop.drawEmail()>>
<<=SugarCube.getLib().Laptop.returnToEmailsPage()>><<=SugarCube.getLib().Laptop.drawEmail()>>
<<=SugarCube.getLib().Laptop.returnToEmailsPage()>><<=SugarCube.getLib().Laptop.drawEmail()>>
<<=SugarCube.getLib().Laptop.returnToEmailsPage()>><<=SugarCube.getLib().Laptop.drawEmail()>>
<<=SugarCube.getLib().Laptop.returnToEmailsPage()>><<if SugarCube.getLib().Skills.get("cardio") > 20 && SugarCube.getLib().Tasks.hasTask("improve-conditioning") >>\
<<=SugarCube.getLib().Tasks.removeTask("improve-conditioning")>>\
<<=SugarCube.getLib().Tasks.addTask("improve-flexibility")>>\
<<= SugarCube.getLib().Dialogue.speaker("Congratulations on your early efforts at conditioning. Aspects of your inheritance work will require well developed flexibility. Please work on this, while continuing to develop your cardiovascular fitness.");>>
Your core is a little flabby, and you've been getting kind of bored with just doing cardio.
You notice Stacy has a huge collection of videos teaching yoga. She talked a lot about how she found it was the best way to define her core and gain flexibility.
<<= SugarCube.getLib().Dialogue.heir("Umm, I guess I'll try that.");>>
<</if>>\
The fitness room has what looks to be an elaborate assortment of like-new professional gym-grade equipment.
<<=SugarCube.getLib().Images.drawLocation('fitness-room.jpg');>>
<<if SugarCube.getLib().PlayerModel.canExercise()>>\
Use [[Elliptical]] Machine
<<if SugarCube.getLib().Tasks.hasTask("improve-flexibility") || hasVisited("Yoga")>>\
Do [[Yoga]] Exercises
<</if>>\
[[Mirror|Gym Changeroom]]
<<else>>\
You like the idea of getting in better shape, but getting started has always intimidated you.
<</if>>\
<<if (SugarCube.getLib().Tasks.hasTask("need-to-clean-pool") || hasVisited("Swimming Pool"))>>\
[[Swimming Pool]]
<</if>>
<<if SugarCube.getLib().InventoryUX.hasItem("motivator-plug")>>
[[Plan Daily Exercises]] \
<</if>>
<<=SugarCube.getLib().Pathways.makeJumpLink("Fitness room","Do Daily Exercises");>>
[[Grand Hallway]] <<=SugarCube.getLib().Pathways.makeJumpLink("Fitness room","Ballet Studio");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Fitness room","Your Bedroom");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Fitness room","Inner chamber");>>\
<<=SugarCube.getLib().Pathways.makeJumpLink("Fitness room","Join for Triathlon Session");>><<=SugarCube.getLib().Exercises.doElliptical()>>
[[Fitness room]]<<=SugarCube.getLib().Exercises.doYoga()>>\
[[Fitness room]]Back to [[Fitness room]]
It always feels great to look your best when you are at the gym, and to freshen yourself up with a shower after a grueling workout.
<<=SugarCube.getLib().MirrorUX.drawMirrorView();>>
Back to [[Fitness room]]<<=SugarCube.getLib().Exercises.montage()>>
Back to [[Fitness room]]<<=SugarCube.getLib().ExercisePlanner.plan()>>
[[Do Daily Exercises]] - This will cycle through your plan until all stamina is used up.
Back to [[Fitness room]][[Check Email|Billy Personal Email]]
[[Search for Porn]]
[[Browse Reddit|http://www.reddit.com]]
<<if hasVisited("Read Note to Jenny")>>\
[[Read up about Maristech Corp]]
<</if>>\
<<if SugarCube.getLib().InventoryUX.hasItem("makeup") && !hasVisited("Learn how to apply makeup")>>\
[[Learn how to apply makeup]]
<</if>>\
[[Your Bedroom]]<<=SugarCube.getLib().Laptop.showEmails()>>
[[Use Your laptop]] <<=SugarCube.getLib().Pathways.makeJumpLink("Billy Personal Email","Your Bedroom");>>You find a page of corporate propaganda talking about what Maristech Corp makes:
From humble beginnings...
...Maristech Corp has been on the forefront of AI and healthcare nanorobotics applications. Be it the brave soldiers on the field of Afghanistan applying Maristech Corp smart cauterizers, or the warehouse foreman who needs a cohort of flex bots to move product quickly and safely, Maristech Corp provides effective solutions...
...Maristech Corp began in 1997 from humble beginnings in Marissa Masterson and Curtis Glerson's early prototypes in Marissa's garage. Maristech Corp has been on the forefront of AI and healthcare nanorobotics applications...
In another article you see "Supreme Court Determination of control of Maristech Corp Estate":
<<=SugarCube.getLib().Images.drawAction('supcourt.jpg');>>
In a stunning 5-4 majority decision today, the US Supreme Court upheld Marissa Masterson's estate structure in Darmody v Masterson. The determination by the court to treat a computer system (MasterComp) as competent for determination of beneficiaries of the complex estate was established a shocking precedent. The dissenting justices noted that this case opens the door for inscrutable "denial of service" attacks in the justice system, and described this as a move by "activist judges" legislating from the bench. The decision was unpopular with technology insiders including Clayton Darmody and the other members of the Maristech Board. Years of advanced research was spun off and shuttered due to Masterson's restrictive clauses for control of the RADNAME (Research and Development - New Applications and Market Expansion) division of Maristech Corp under the direction of MasterComp...
...Existing production and operations divisions continue under the oversight of the MMaristech Corp board....
[[Use Your laptop]]As you type in your first query, you don't get the results you were hoping for.
<<=SugarCube.getLib().Images.drawAction('firewall.png');>>
You make a few more tries, but this firewall seems to block results for anything remotely related to porn.
<<= SugarCube.getLib().Dialogue.player("You have got to be kidding me!");>>
[[Use Your laptop]]If the door is going to require makeup, this is the only way forward.
You start searching for videos on applying makeup.
<<=SugarCube.getLib().Images.drawAction('makeup-tutorial.webp');>>
You find some beginner tutorials to learn the essentials of [[Applying Makeup|https://www.makeup.com/makeup-tutorials/expert-tips/the-ultimate-makeup-tutorial]].
The essentials get down to:
<ol>
<li>After cleansing and moisturizing, applying primer for your skin to help improve the longevity of the application. </li>
<li>For consistent flesh color, apply foundation all over and blend down your neck.</li>
<li>Brighten up under your eyes with concealer for the dark circles. </li>
<li>Accent your cheeks with blush.</li>
<li>Add definition on your cheekbones with highlighter.</li>
<li>Use eyeshadow to provide some pop to your eyelids.</li>
<li>Detail your eyebrows with an eyebrow pencil and Mascara.</li>
<li>Finish up with lipstick.</li>
</ol>
From there, you start watching video after video of girls transforming from ordinary to exotic.
<<=SugarCube.getLib().Images.drawAction('makeup-tutorial2.webp');>>
Hours later, you realize you've gone deep down the rabbit hole. Very deep.
<<=SugarCube.getLib().Images.drawAction('makeup-tutorial3.webp');>>
You are willing to try apply makeup, to try get that door open, but are feeling really tired right now. You can take another crack at it tomorrow.
<<=SugarCube.getLib().Tasks.removeTask("learn-makeup")>>\
<<=SugarCube.getLib().PlayerModel.setReadyForSleep()>>\
[[Use Your laptop]]Time to put in some elbow grease and clean this place up.
<<=SugarCube.getLib().Tasks.removeTask("dust-library");>>\
<<=SugarCube.getLib().Images.drawAction('dusting-library.jpg');>>
You see a really impressive antique globe. It looks really old school, possibly one of those ones that flips open with a liquor cabinet inside.
<<=SugarCube.getLib().Images.drawAction('globe.jpg');>>
After a bit of spinning and exploring, you notice what seems to be damage with a round pencil sized gouge near Greece, where you'd find the Aegean sea. That's too bad.
[[done|Library]]You see a number of newspaper clippings and a couple magazines on a table which provide some history about this house.
The faded newspaper article mentions the mansion was built by a railroad magnate in 1882, as part of a massive estate which included the parcel of land that is now known as commemoration park.
<<=SugarCube.getLib().Images.drawAction('read-newspaper.webp');>>
Another clipping has a society page story dating back to 1928 describes the world of glamor, lavish rituals and etiquette one might expect, if you were lucky enough to attend the exclusive parties of it's flamboyant owner, a successful local commodities trader.
Next in the pile was a flashy modern architecture magazine in the late nineties, which had this house as the cover story.
<<=SugarCube.getLib().Images.drawAction('home-magazine.jpg');>>
Apparently, Marissa Masterson, the obscenely wealthy tech mogul bought up the place just as the dot-com boom was peaking. It had a pretty dramatic series of before-after pictures of the house from a point where it was badly neglected, and seemed to be on the verge of collapse.
<<=SugarCube.getLib().Images.drawAction('derelict-house.jpg');>>
It also had some interviews of the divorcee's struggles balancing the demands of motherhood while being a Fortune 500 CEO. Another part of it had a chat where the architect and Ms. Marissa smugly talked about all the little details and materials they got from suppliers all over the world. A bit too wordy with so much 'filigree' and 'sconces', so you put that magazine down at this point.
The last article was a short article from the local paper, with a close up shot of the Ridge family in front of the house. They moved in some time after Masterson, her daughter and all hands aboard died in a tragically shocking accident of her private jet. Really sad story - that was all over the news for a couple weeks. Apparently the Ridge family had made a sizable donation to the Commemoration Park Improvements Association, as part of the agreement when they bought the house.
[[done|Library]]<<=SugarCube.getLib().Images.drawAction('browse-books.webp');>>
After clearing the dust from the old library, you decide to get a closer look at the books. None of the Ridge family members had much time for reading, so the library was a bit of a neglected space in the house with books from the prior owners. A lot of old stuffy classics, but also some curious choices. In one closed up cabinet, you find some literature which is a little surprising.
On closer inspection, you see a book with the silhouette of the woman in place of a title on the spine it's an anthology of short stories about exceptional women. On flipping through you see a card stapled to a pawn ticket fall out to the floor. At the page is the beginning of a worn short story about a complex relationship between a mother and her daughter, from teen age growing to be an adult.
<<= SugarCube.getLib().Dialogue.player("That's a bit odd of a page marker. I wonder what the pawned item was?");>>
It looks like that's for a pawn shop in the neighborhood. It says 'That which is yours' and has a $50 redemption fee.
<<=SugarCube.getLib().Images.drawAction('pawn-card.jpg');>>
This is intriguing. Maybe worth a walk to find that store?
<<= SugarCube.getLib().InventoryUX.add("pawn-ticket")>>
<<=SugarCube.getLib().Tasks.removeTask("explore");>>\
<<=SugarCube.getLib().Tasks.addTask("check-pawn-ticket");>>\
[[done|Library]]Looking more closely at the globe, the key fob seems to be a perfect fit for the hole you saw earlier in the middle of the Aegean Sea.
<<=SugarCube.getLib().Images.drawAction('globe.jpg');>>
Turning it, and you start to hear a bookshelf slide open, revealing a doorway leading to a lower section.
<<=SugarCube.getLib().Images.drawAction('secret-door.jpg');>>
<<=SugarCube.getLib().Dialogue.player("WOAH, too cool!");>>
It seems this goes down to something of a private study. As you enter, you notice there is another knob to close the entry again. The air was a bit stale, but it has surprisingly pleasant accents of flower and vanilla which smell really nice.
<<=SugarCube.getLib().Tasks.removeTask("can-the-key-be-used");>>\
<<=SugarCube.getLib().Tasks.addTask("check-secret-room");>>\
Enter the [[Secret Room]]This file is just a drop spot for housing repeatedly used snippets:
<<=SugarCube.getLib().Images.drawLocation('living-room.jpg');>>
<<=SugarCube.getLib().Images.drawAction('drink-coffee.webp');>>
https://www.motoslave.net/sugarcube/2/docs/#special-passage-storyinitThis is a pretty nice swimming pool here.
<<if !visited("Lady Fit-Sport")>>\
Swimming might be a nice change of pace. Too bad you didn't bring any swim trunks. 😢
<</if>>\
<<=SugarCube.getLib().Images.drawLocation("swimming-pool.jpg");>>
<<if SugarCube.getLib().Tasks.hasTask("need-to-clean-pool") >>\
[[Clean Pool]]
<</if>>\
<<if SugarCube.getLib().PlayerModel.canExercise() && !SugarCube.getLib().Tasks.hasTask("need-to-clean-pool")>>\
[[Go Swimming]]
<</if>>\
[[Fitness room]] <<=SugarCube.getLib().Pathways.makeJumpLink("Swimming Pool","Grand Hallway");>><<=SugarCube.getLib().Exercises.doSwim()>>
[[Swimming Pool]]You proceed to clean the pool of debris.
<<=SugarCube.getLib().Images.drawAction("pool-cleaning.jpg");>>
From there, you test for the chemical levels and add some chlorine, following some detailed step by step maintenance instructions by the pool supplies.
<<=SugarCube.getLib().Images.drawAction("pool-chlorination.jpg");>>
<<if SugarCube.getLib().Tasks.hasTask("need-to-clean-pool")>>
<<=SugarCube.getLib().Tasks.removeTask("need-to-clean-pool")>>
<</if>>
[[Swimming Pool]]The upstairs area serves the living quarters of the home.
<<=SugarCube.getLib().Images.drawLocation('upstairs-hallway.jpg');>>
Go to:
[[Master Bedroom]]
[[Stacy's Bedroom]]
[[Hallway Bathroom]]
[[Your Bedroom]] <<if !hasVisited("Your Bedroom")>> - You are staying here<</if>>
[[Grand Hallway]]Mr. and Ms. Ridge's Bedroom. This is a lot fancier than you've ever seen before. All the same, it is ultimately still a bedroom.
<<=SugarCube.getLib().Images.drawLocation('master-bedroom.jpg');>>
You can see:
A large Wardrobe
[[Cosmopolitan magazine]]
Go to:
[[Master Bathroom]]
[[Upstairs Hallway]]You've been here often enough, doing homework together with Stacy, and commiserating over the latest goings on in her life. It's a typical teenage girl's room.
<<=SugarCube.getLib().Images.drawLocation('daughter-bedroom.jpg');>>
You can see:
[[Stacy's Wardrobe]]
Stacy's PC
Go to:
[[Upstairs Hallway]]The upstairs bathroom is pretty nice.
<<=SugarCube.getLib().Images.drawLocation('guest-bathroom.jpg');>>
<<if $thongIsDirty is true >> \
[[Wash Thong]]
<</if>>\
<<if $clothesAreDirty is true >> \
[[Wash Clothes]]
<</if>>\
[[Shower]]
<<if SugarCube.getLib().InventoryUX.hasItem("black-thong") >>\
[[Use Shaving accessories]]
<<else>>\
Shaving Accessories
<</if>>\
<<if SugarCube.getLib().InventoryUX.hasItem("makeup") >>\
<<if hasVisited("Learn how to apply makeup")>>\
<<if SugarCube.getLib().PlayerModel.isWearingMakeup() == true>>\
[[Remove Makeup]]
<<else>>\
<<if SugarCube.getLib().PlayerModel.isReadyForSleep() && !hasVisited("Apply Makeup")>>\
You are too tired to do makeup right now.
<<else>>\
[[Apply Makeup]]
<</if>>\
<</if>>\
<<else>>\
You have makeup, but you don't know how to apply it. Maybe you can find some tutorials online?
<<=SugarCube.getLib().Tasks.ensureTask("learn-makeup")>>\
<</if>>\
<</if>>\
Return to:
[[Upstairs Hallway]] <<=SugarCube.getLib().Pathways.makeJumpLink("Hallway Bathroom","Grand Hallway");>>You have a nice, spacious neutral looking room.
<<=SugarCube.getLib().Images.drawLocation('guest-bedroom.jpg');>>
<!-- https://strugglingwithtwine.blogspot.com/2014/03/the-click-macro-sugarcube-only.html -->
<<if SugarCube.getLib().InventoryUX.hasItem("luggage")>>\
[[Drop Luggage]]
<<else>>\
[[Use Your laptop]] <<=SugarCube.getLib().Laptop.getEmailShortcutLink();>>
<</if>>\
[[Go to Bed]]
<<if SugarCube.getLib().InventoryUX.hasItem("first-dildo");>>\
[[Masturbate]]
<</if>>
[[Mirror]]
Return to:
[[Upstairs Hallway]] <<=SugarCube.getLib().Pathways.makeJumpLink("Your Bedroom","Grand Hallway");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Your Bedroom","Fitness room");>> <<=SugarCube.getLib().Pathways.makeJumpLink("Your Bedroom","Inner chamber");>><<set SugarCube.getLib().InventoryUX.remove("luggage")>>\
<<=SugarCube.getLib().Tasks.removeTask("drop-luggage");>>\
<<=SugarCube.getLib().Tasks.addTask("explore");>>\
<<=SugarCube.getLib().Tasks.addTask("dust-library");>>\
<<=SugarCube.getLib().Tasks.addTask("clean-cinema");>>\
With your luggage dropped off, maybe it's time to get some work done and start exploring!
<<=SugarCube.getLib().Images.drawItemById("luggage");>>\
Now then... The Ridges asked you to do some cleaning today. What did they want you to do, again? Maybe your "TASKS" agenda can help jog your memory.
HINT: This game has buttons on the left side panel for "TASKS", "INVENTORY" and "STATUS". Get acquainted with them!From the privacy of your room, you take hold of the dildo Sue gave you. <<= SugarCube.getLib().Sex.dildoSelf()>>
[[Your Bedroom]]<<if SugarCube.getLib().InventoryUX.hasItem("black-thong")>>\
<<if !SugarCube.getLib().InventoryUX.hasItem("yoga-pants") >>\
Stacy has some items which might do the trick at the door:
<<=SugarCube.getLib().Images.drawItem('tanktop.jpg');>>
<<=SugarCube.getLib().Images.drawItem('black-yoga-pants.jpg');>>
[[Take Stacy's Tank top and Yoga Pants]]
<<else>>\
You don't need to borrow any more of Stacy's clothes, at the moment.
<</if>>\
<<else>>\
Ughh, stacy just spends so much time on her clothes. You have no interest in this.
<</if>>\
[[Stacy's Bedroom]]<<if SugarCube.getLib().PlayerModel.checkClothingTolerance() < 1 >>\
<<if !hasVisited("Take black thong")>>\
Obviously, it's just the same old you. You reflect - were you expecting to see something else?
<<else>>\
Per Marissa's letter, you should shave yourself before putting on Stacy's clothes.
<</if>>\
<<else>>\
<<if $clothesAreDirty && !hasVisited("Inner chamber")>>\
You should clean up the clothes in [[Hallway Bathroom]] first.
<<else>>\
<<if SugarCube.getLib().Tasks.hasTask("player-needs-shower") && !hasVisited("Inner chamber")>>\
You need to get cleaned up before getting dressed.
<<else>>\
<<if !SugarCube.getLib().InventoryUX.hasItem("stacy-bra")>>\
All you can think about is the possibility of getting that treasure. Would it be possible to pass looking like Marissa? You'll need some clothes for this.
<<else>>\
Back to [[Your Bedroom]]
<<=SugarCube.getLib().MirrorUX.drawMirrorView();>>
<</if>>\
<</if>>\
<</if>>\
<</if>>\
[[Your Bedroom]]You have carefully restored the thong to a wearable state. The treasure calls out to you...
<<=SugarCube.getLib().Images.drawItem('black-thong.jpg');>>
<<=SugarCube.getLib().Tasks.removeTask("clothing-needs-cleaning");>>\
<<set $thongIsDirty = false>>
[[Hallway Bathroom]]Wow, this "auto-cleaner" mini-laundry system here is pretty quick.
<<set $thongIsDirty = false>>\
<<set $clothesAreDirty = false>>\
<<=SugarCube.getLib().Images.drawAction('laundry.webp');>>
[[Hallway Bathroom]]You run a quick shower.
<<if hasVisited("Wash Clothes") && $clothesAreDirty >>\
The "auto-cleaner" is so fast, you decide to run your clothes in it, while you take your shower.
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("player-needs-shower")>>\
You are now feeling cleansed.
<</if>>\
<<=SugarCube.getLib().Tasks.removeTask("player-needs-shower");>>\
<<=SugarCube.getLib().PlayerModel.toggleMakeup(false);>>\
\
<<if SugarCube.getLib().CoreUtils.getVariables().day <10>>\
<<=SugarCube.getLib().Images.drawAction('shower-early.webp');>>
<<else>>\
<<=SugarCube.getLib().Images.drawAction('shower-mid.webp');>>
<</if>>\
<<set $clothesAreDirty = false>>\
\
[[Hallway Bathroom]]<<if SugarCube.getLib().PlayerModel.canShave()>>\
There is nothing more you can learn from this.
<<=SugarCube.getLib().Images.drawAction('cosmo-magazine.jpg');>>
<<else>>\
<<if SugarCube.getLib().PlayerModel.needsShave() && SugarCube.getLib().Tasks.hasTask("first-shave");>>\
Score! You have cracked the code!
<<=SugarCube.getLib().Images.drawAction('cosmo-magazine.jpg');>>
This cosmo issue has [[7 ways to fix the most common shaving mistakes|https://www.cosmopolitan.com/style-beauty/beauty/a9572229/common-shaving-mistakes/]].
<<=SugarCube.getLib().Images.drawAction('shave-tutorial.jpg');>>
With this knowledge, you feel absolute confidence to use a razor in places other than your face.
<<=SugarCube.getLib().PlayerModel.enableShave()>>
<<else>>\
A magazine with articles on women's topics. Like how to have great legs and turn your man on. ooh, Great.
<<=SugarCube.getLib().Images.drawAction('cosmo-magazine.jpg');>>
<</if>>\
<</if>>\
[[Master Bedroom]]<<if SugarCube.getLib().PlayerModel.canShave()>>\
<<if SugarCube.getLib().PlayerModel.hasEverShaved()>>\
You tidy things up. This is just about being prepared.
<<=SugarCube.getLib().Images.drawAction('reshave.webp');>>
You shower up and moisturize.
<<=SugarCube.getLib().Images.drawAction('moisturize.webp');>>
<<else>>\
Here goes nothing! It's not so weird, you recall members of the swim team at your school would do this sort of thing to be competitive.
<<=SugarCube.getLib().Images.drawAction('first-body-shave.webp');>>
You have shaved all your body hair and shower off.
For good measure, you apply some skin cream.
<<=SugarCube.getLib().Images.drawAction('moisturize.webp');>>
<<=SugarCube.getLib().PlayerModel.raiseClothingTolerance(1);>>
Now, maybe Stacy's clothes can help you trick the scans?
<</if>>\
<<=SugarCube.getLib().PlayerModel.shave()>>\
<<else>>\
You don't really know how to shave down... below. Those sharp blades scare you. Is there nothing that will teach you this stuff?
<</if>>\
[[Hallway Bathroom]]<<=SugarCube.getLib().InventoryUX.add("yoga-pants")>>\
<<=SugarCube.getLib().InventoryUX.add("tank-top")>>\
<<=SugarCube.getLib().InventoryUX.add("stacy-bra")>>\
<<=SugarCube.getLib().Tasks.removeTask("house-has-clothes")>>\
<<=SugarCube.getLib().Tasks.addTask("wear-stacy-clothes")>>\
\
These look like the clothes which Marissa was wearing in the pictures. Oh, and a bra as well would help.
Maybe it's time to try change into this outfit using the [[Mirror]] in your room.
[[Stacy's Wardrobe]]For now, this is just a closer view of the items.
<<=SugarCube.getLib().MirrorUX.render()>>
<<link "Back">><<script>>Engine.backward();<</script>><</link>><<if !SugarCube.getLib().PlayerModel.isReadyForSleep()>>\
<<=SugarCube.getLib().PlayerModel.explainNoSleep();>>
[[Your Bedroom]]
<<else>>\
\
\
<<if $day == 2 >>\
It has been an interesting couple of days, but Rome wasn't built in a day. Some rest will do the trick.
<<=SugarCube.getLib().Images.drawAction('sleep-sheep.webp');>>
[[Day 3 - Early Morning]]
<</if>>\
\
<<if $day == 3 >>\
It has been an interesting couple of days, with great progress towards your prize, but Rome wasn't built in a day. Some rest will do the trick.
You quickly fall asleep after your head hits the pillow. You find yourself thinking again about the amazing panty-dropper sports car you will buy with the wealth.
Your car seems the same as the previous dream but, something about it feels different, as you go to inspect the engine.
<<=SugarCube.getLib().Images.drawAction('lambo-dream-prelude.jpg');>>
[[Lambo Dream]]
<</if>>\
\
<<if $day == 4 >>\
You feel like you have made some good progress on clearing the door and feel excited for tomorrow.
<<if SugarCube.getLib().PlayerModel.isWearingMakeup()>>\
You realize you still had makeup on. You suddenly realize this is probably not a good idea, and wash it off this time.
<<=SugarCube.getLib().PlayerModel.toggleMakeup(false)>>
<</if>>\
<<=SugarCube.getLib().Images.drawAction('sleep-sheep.webp');>>
[[Day 5 - Early Morning]]
<</if>>\
<<if $day >= 7 >>\
You get ready for bed.
<<=SugarCube.getLib().PlayerModel.fallAsleep()>>\
[[A new day]]
<</if>>\
<</if>>\While it may be a guest room, this bed is actually good bit comfier than yours. Not having to be careful about shifting your weight and causing some noisy springs to poke at you is a nice change of pace. You slept quite soundly on and feel glad that you didn't pass out again.
Maybe you can try some places at that strip mall, to see if you can find a wig or something to make progress with the door.
<<set $day to 3>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>
<<=SugarCube.getLib().Tasks.addTask("check-adult-store");>>
[[Your Bedroom]]It's nice to have a park so close to the house for the summer.
It would be good to get some exercise and fresh air, at some point.
<<=SugarCube.getLib().Images.drawLocation('park-walkway.jpg');>>
Go to:
[[Baldric House]]
[[Retail Strip]]Sue seems to skim over the document for about twenty seconds. Looks in your eyes.
<<= SugarCube.getLib().Dialogue.speak("sue","Hmm, so your dom sent you here to get this?");>>
You wince at the notion of a "dom" controlling your life.
<<= SugarCube.getLib().Dialogue.player("I wouldn't describe it exactly like that, but...");>>
She seems a bit curious about the circumstance.
<<= SugarCube.getLib().Dialogue.speak("sue","But, you are consenting to having me custom fit you with a chastity cage, for which they will have the key, and you will not? I don't want to be caught in the middle of a lover's quarrel if you change your mind. I do not keep spare keys if you find yourself wanting a way out. I'll only do this if you confirm that you want this chastity cage installed out of your own free will and are giving me your full consent to do so.")>>
Ha! If only she knew there was no lover, it's just a crazy supercomputer in the basement of a mansion.
<<= SugarCube.getLib().Dialogue.speak("sue","I've seen some of these relationships can get intense.");>>
She's looking at you with serious eyes:
<<= SugarCube.getLib().Dialogue.speak("sue","If you aren't 100% committed to where this might go right now, this may be your last chance to get out of a sticky situation. Say 'I want to lock away my penis away in chastity indefinitely'. Otherwise, tell me no - If you are in some kind of non-consensual situation, I know a number of social workers and shelters who help folks get out of just these kinds of situations.");>>
<<=SugarCube.getLib().Mood.compliantLink("I want to lock away my penis away in chastity indefinitely")>>
[[I can't do this]]Sue has a point. You really don't know where things go from here. It's not worth the risks.
You go to the house to close up the secret room and go back to your ordinary summer job. You remove the key from the globe, smash the watch.
You broke your word, and hope that the computer will leave you out of its plans from here.
<<link "Back">><<script>>Engine.go(-1);<</script>><</link>>
<<link "RESTART GAME">><<run Engine.restart()>><</link>><<=SugarCube.getLib().Mood.addCompliance("You don't need to do this... You feel a thrill of excitement at what you are doing.")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Wow, that's bold - I love it when people know what they want. I'm excited for you. Chastity opens guys up to amazing new sexual experiences, and makes them better lovers.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Ok, now that we have that out of the way, let me get a closer look here...");>>
After a couple minutes she puts on some large framed librarian glasses she had hidden in a drawer, and seems to be making detailed shorthand notes, and doing some stuff on her computer. The document seems to be rather long. After standing for a few minutes, you settle into a seat, while you idly look around at her extensive wares. She seems really interested in what you thought was a mundane order form. You notice she's biting her lip, and breathing fast at whatever that document is talking about. After a while she seems to collect herself, and get back to you.
<<= SugarCube.getLib().Dialogue.speak("sue","Ok, consider yourself privileged. Your dom did their homework, the chasti-flex exo-shell came on the market a couple of years ago, and has emerged as top of the line in the 'professional grade' market for ultra long term uses. ");>>
Ugh, again with the "dom". You're not sure you'd agree about lucky, but continuing on...
<<= SugarCube.getLib().Dialogue.speak("sue","These custom kits are made in very limited runs, but sell for the price of a luxurious vacation. They are not something I would bother trying to sell or explain to my casual walk-in customers. The only reason I have such a device in stock is that they keep one in stock here with me, as I'm their local distributor for our metropolitan area.");>>
You are wondering to yourself, how expensive is this thing?
<<= SugarCube.getLib().Dialogue.speak("sue","As the name suggests, its carbon nanotube skeleton takes on the fixed length and girth of the wearer's penis while completely flaccid, while accommodating an exceptional degree of flexibility with a soft, durable silicone outer covering. Compared to traditional alternatives, this solution has been found most effective in supporting term wear and ease of cleaning. Most impressive is that the wearer can orient the device while dressing to achieve their desired look, and then use a switch to lock your penis into place as you currently might with a gaff.");>>
[[Act impressed]]She refers back to the document, seemingly carefully re-reading some instructions. She glances down at your pants, which seem to be bulging in her presence or perhaps, at the thought of this twisted device.
<<= SugarCube.getLib().Dialogue.speak("sue","Obviously we can't put this on you right now... in this state. Your dom gave that plenty of thought too, but left the details of getting you ready for this 'installation' to my discretion. That's not something I see too often.");>>
You don't like how she keeps using that term "dom". There has to be a less insulting way to describe your circumstance but, such a word eludes you. In any case, you are intrigued at what she's getting at.
<<= SugarCube.getLib().Dialogue.speak("sue","Getting a chastity cage is a big milestone. It's nice to kick it off with a special experience. Have you ever participated in a threesome? Would you like to have some fun, with me... And another girl?");>>
Given you've never really had sex, let alone a threesome, maybe there's a silver lining here.
<<= SugarCube.getLib().Dialogue.player("T... That... That sounds awesome");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Perfect. Let's continue this at my place.");>>
She puts her glasses away again, and gets a card to put her address on the back. Her place is in walking distance.
<<= SugarCube.getLib().Dialogue.speak("sue","I was going to be closing up in a few minutes anyway. While I do that, why don't you get in touch with your friend, the one you've been helping with all that acting. I know how to get girls interested - theater girls especially love to try new things. We can all have some fun, and then we can get you fitted up.");>>
Oh no. That won't work. But maybe you can salvage this by getting your moves on with her, and just say your friend wasn't feeling well and had to cancel. It's not like some random stranger can just be expected to show up for sex, right?
<<= SugarCube.getLib().Dialogue.player("Ok, so I'll take a walk and then meet you there in 15 minutes or so?");>>
[[Take scenic route to Sue's place]]Sue lives in walking distance of the store.
You walk by Sue's place, which seems to be an old Victorian house. You aren't quite sure what you were expecting, but something else, maybe?
<<=SugarCube.getLib().Images.drawLocation("sue-house.jpg");>>
You're 10 minutes early, so you walk around the neighborhood a bit. The area has some quirky charm, but a lot of the places are kind of outdated - it had a reputation for being a bit of an artists' quarter, with cheap rents, but it has been gentrifying with the growth of the city. You see some very contemporary looking "box" houses with massive windows alongside distinguished looking houses of a similar vintage to Baldric house here. Your mind is boggled how anyone can save up enough to buy houses so big.
Your mind starts to shift back to the "cage". It's hard to believe you are really doing this.
You reflect on how you feel about this situation:
[[I really don't want to do this, but what choice do I have?]]
[[I don't feel strongly about this.]]
[[Is it wrong that I'm secretly excited?]]Maybe you could have made other decisions that would have avoided the computer figuring this out.
Considering how it seems to be paying attention to everything, maybe it was only a matter of time that it would catch on. There's no point in beating yourself up over what's happened to get you here.
You do seem to be on your way to getting that gold, and you can just hire a locksmith or whatever to remove the cage, once you extract your treasure. With the money, maybe you can find a way to sweep stacy off her feet when she gets back.
That said... Up to now, you were kind of just pulling a fast one on a door, but it's hard not to recognize that the sacrifices are getting more... real. You are really hoping that this there are no other big indignities to suffer after this. As you look at your watch, you realize you are running a bit late now, after making a couple extra laps around the block and losing track of the time.
You make your way to Sue's house. It turns out it's a converted apartment building with 4 units. Hers is up on the top floor.
<<=SugarCube.getLib().Images.drawAction("intercom.jpg");>>
[[Buzz in to meet Sue]]It's weird - you'd sometimes felt like folks are over-attached to the notion of genitals, when there's so many other things to life.
Things haven't always been super easy for you, and the use of your penis really had not made a big difference. You remember when you were growing up, other guys seemed a lot more excited about having sex with girls and proud of having dicks, where you didn't tend to have those thoughts much.
You've spent a lot of time close with Stacy. She's very pretty and you like her very much as a friend, but you never really found yourself in "potential boyfriend" territory. Could it be that you just didn't feel the same kind of drive to try get into a sexual relationship with her as other guys?
The door made a mistake in letting you in, but the computer seems to be giving you a big opportunity here, by making an exception to allow you to continue. You and the computer have made a fair bargain.
You make your way to Sue's house. It turns out it's a converted apartment building with 4 units. Hers is up on the top floor.
<<=SugarCube.getLib().Images.drawAction("intercom.jpg");>>
[[Buzz in to meet Sue]]As you think of images of women, you'd always felt they were more graceful and pleasing to the eye. The notion of guys always having to take the initiative in dating never felt fair to you.
All that time you had been spending so close with Stacy. It hasn't always been easy being so close.
She's really pretty, and you like her as a friend, but you wonder if part of the reason you were spending so much time with her, was that she was living a life closer to your ideal? All those times you'd comment about how much time she spent on her appearance, and her "obsession" with clothes. Were you just parroting all the standard stuff all guys are expected to say?
When other guys would give you a hard time about always playing 3rd person RPG's as a female character, your excuse was that if you are going to stare at someone's ass for 60 hours, you'd rather it be a cute girl. But maybe that wasn't the only reason.
<<=SugarCube.getLib().Images.drawAction("femshep.jpg");>>
There's a part of you that has been secretly excited at how the computer has nudged you into these new experiences. However, this wasn't how you were raised - you are aroused, but there's sensations of guilt and shame about what you want.
As you look at your watch, you realize you lost track of the time in your excitement and are running a bit late.
You make your way to Sue's house. It turns out it's a converted apartment building with 4 units. Hers is up on the top floor.
<<=SugarCube.getLib().Images.drawAction("intercom.jpg");>>
[[Buzz in to meet Sue]]You press to ring her apartment.
<<= SugarCube.getLib().Dialogue.speak("sue","Just a second!");>>
You hear her shout from somewhere inside, the clicking of running in heels, and then the sound of a deadbolt, before the door opens up.
<<= SugarCube.getLib().Dialogue.speak("sue","Hi Billy! Fancy seeing you here so soon!");>>
She whisks you into her place.
Her place isn't huge, but it has a particularly feminine touch to it. She caresses a hand over you shoulder, and hands you a generous glass of wine, and guides you to her dinner table.
<<=SugarCube.getLib().Images.drawLocation("sue-diningroom.jpg");>>
<<= SugarCube.getLib().Dialogue.player("This is a really nice place you have here, Sue. It's really peaceful.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Thank you Billy. When I walk in here after a difficult day, I feel like my troubles can kind of wash away. I think people forget how much an environment can help us express and stay true to our inner selves. At worst we can find ourselves in a place where our natural identity is suppressed into conformity. But what those places are can differ, depending on who you ask.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","But I'm rambling. So, when does your friend arrive?");>>
<<= SugarCube.getLib().Dialogue.player("Oh, later...");>>
<<= SugarCube.getLib().Dialogue.speak("sue","I'm sorry, where are my manners, what did you say her name was, again? I've been really looking forward to getting to finally meet her in person, and know her better.");>>
<<= SugarCube.getLib().Dialogue.player("She's <<print SugarCube.getLib().PlayerModel.getHeirName()>>. She said she's really curious and interested to be here. But she's also actually extremely shy. It may take her a while to show up, if she can make it tonight.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Oh well, we can totally wait. We wouldn't want to start an incredible experience like this without her being there. ");>>
Uh oh... Maybe you can stall for a bit and she'll give up on that. You take a big gulp of wine, and attempt to make some small talk about her decor.
Sue smiles, looks at her watch and knocks off her heels, massages her feet. She stretches her leg and absentmindedly seems to run her foot over your legs, while seemingly bored with her cheek resting on the fist, and biting her lip, as she watches the window idly.
[[Try to stall]]Before you know it, you and Sue have demolished a bottle of wine, and obviously, <<print SugarCube.getLib().PlayerModel.getHeirName()>> hasn't showed yet.
At this point, Sue is being cordial, but she seems a little annoyed about her absence.
<<=SugarCube.getLib().Dialogue.speak("sue","Well Billy, it's been a bit of a long day for me - I'm going to run a bath and get changed. When <<print SugarCube.getLib().PlayerModel.getHeirName()>> is feeling ready to come out and play, we can get started.");>>
<<=SugarCube.getLib().Dialogue.speak("sue","Feel free to use the hallway powder room if you'd like to freshen up.");>>
[[Fuck... What do I do now?]]Hmm, your "game" isn't quite doing it yet for her. It's pretty obvious Sue won't have sex with you until <<print SugarCube.getLib().PlayerModel.getHeirName()>> shows up, but you can't both be here... Unless...
Maybe you can just pretend to be <<print SugarCube.getLib().PlayerModel.getHeirName()>>, and have some fun, and then by the time she realizes what's up, she'll be in the mood to settle for having sex with you. That could work. It's a good thing you had your clothes and makeup on hand.
[[Dress up for Sue]]Well, no time to loose, better get this going.
You start dressing up in your classic outfit. You make sure <<print SugarCube.getLib().PlayerModel.getHeirName()>>'s makeup is perfect for this. You hope this will get Sues's blood running.
<<=SugarCube.getLib().Clothing.wear("tank-top");>>\
<<=SugarCube.getLib().Clothing.wear("yoga-pants");>>\
<<=SugarCube.getLib().Clothing.wear("black-thong");>>\
<<=SugarCube.getLib().Clothing.wear("stacy-bra");>>\
<<=SugarCube.getLib().Clothing.wear("tennis-shoes");>>\
<<=SugarCube.getLib().Clothing.wear("first-heels");>>\
<<=SugarCube.getLib().Clothing.wear("blonde-wig");>>\
<<=SugarCube.getLib().Slot.clear("hosiery");>>\
<<=SugarCube.getLib().PlayerModel.toggleMakeup(true)>>\
[[Now it's time to be bold]]You knock on Sue's door bathroom door.
<<= SugarCube.getLib().Dialogue.heir("Hi Sue, it's me <<print SugarCube.getLib().PlayerModel.getHeirName()>>. I heard you wanted to meet me");>>
(From behind the bathroom door...)
<<= SugarCube.getLib().Dialogue.speak("sue","Just a minute, Just finishing up.");>>
You hear the water stop. For taking a bath, it seems Sue wrapped up quickly, as you see her almost instantly vamp out of the bathroom in a latex outfit, which hugs every surface and screams sex.
<<=SugarCube.getLib().Images.drawAction("sue-sex1.jpg");>>
<<= SugarCube.getLib().Dialogue.heir("Wow...");>>
She puts one finger under your chin and walks right in front of you. You instinctively back up to the door frame as she puts her other hand to your 'pussy', and smiles as she has you cornered.
<<= SugarCube.getLib().Dialogue.speak("sue","<<print SugarCube.getLib().PlayerModel.getHeirName()>>... What a beautiful name, for such a lovely girl. So you finally were able to show up! Oh, but where did Billy go?");>>
<<= SugarCube.getLib().Dialogue.heir("Billy had to run out for something. He said not to wait up, that we girls could get acquainted and have a little fun until until he gets in.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, that's too bad. Oh, but look at you dolled up, cute as a button, and the silly boy just ditches us. So did Billy get a chance to tell you what we were thinking of?");>>
You nod. Wow, for just meeting "<<print SugarCube.getLib().PlayerModel.getHeirName()>>", you feel she is *really* forward, and seems to act really familiar.
Sue guides you to sit beside her on the bed. You take a moment to drink up the sight of her gorgeous outfit, as she stares into you eyes.
You are pulled into a slow, long and sensual kiss, and both of you slowly lie back onto the back, caressing each other.
From there, you notice she starts to hike up her dress and shift her panties down. Her pussy is full exposed now.
<<= SugarCube.getLib().Dialogue.speak("sue","<<print SugarCube.getLib().PlayerModel.getHeirName()>>, Wearing latex turns me on, but these outfits get me so wet really quickly.");>>
She puts a hand down there, and you can see the dewiness on her finger.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh my god, I'm just sopping buckets down there, aren't I. Since it's just us two girls, maybe you could give me a nice deep lick. Could you do that for me, <<print SugarCube.getLib().PlayerModel.getHeirName()>>?");>>
You nod. She then gently guides your head down to give it some oral attention.
[[This is getting hot]]Your technique is unpracticed to say the least, and Sue kind of has to coach you on the basics, as your tongue strains to go deep and fast for her.
<<=SugarCube.getLib().Images.drawAction("sue-sex2.jpg");>>
You start to find a rhythm and after a few minutes, she has her first little gush.
<<= SugarCube.getLib().Dialogue.speak("sue","Ooh... oh. make sure not to miss a drop there! :)");>>
You smile and oblige. You're not sure how satisfying that was for her, but she seems to treat it positively. She pats your head as <<print SugarCube.getLib().PlayerModel.getHeirName()>>, and goes down to face you and exchange a deep kiss.
<<= SugarCube.getLib().Dialogue.speak("sue","Babygirl, thank you for that.");>>
She pulls her panties back up, and guides you up onto the bed, and gets over you. She's not a particularly powerful woman, but you suddenly find that she has your arms pinned (albeit, rather willingly), as she voraciously kisses you for a few steamy minutes, with her heaving breasts over you.
<<= SugarCube.getLib().Dialogue.speak("sue","Now it's your turn. Can you drop those panties for me, and I'll return the favor?");>>
In the heat of the moment, saying something would ruin the moment, but there's a chance she will just go with it. You just do as she says, and remove the panties and then the gaff. Surprisingly, she doesn't seem to be deterred by your cock, but just goes down on you, all the same.
It's obvious she knows her oral sex. Fairly quickly, you find yourself on the verge of an orgasm. Fortunately, she seems to see you are getting close to climax, and eases up earlier.
<<= SugarCube.getLib().Dialogue.speak("sue","Do you think it's sexier when girls spit or swallow a load of cum?")>>
[[Oh yeah for sure swallowing is so sexy]]
[[Swallowing is gross]]She discreetly downs the whole mouthful, lets out a quiet moan and swallows again.
<<= SugarCube.getLib().Dialogue.speak("sue","Sister, you don't know what you are missing!");>>
She smiles and gives you a closed mouth kiss
[[Now then]]The thought of her taking down your load like a porn star is too hot, so you give the obvious answer you'd love to see.
<<= SugarCube.getLib().Dialogue.speak("sue","Mmm, girl, you're so right. I totally agree with you there. The best girls love to suck down the cum, rather than letting it go to waste, don't we? Now, where was I?");>>
As she proceeds to take your entire cock like a pro, accelerating and backing off over a few minutes, before driving you to the best orgasm you've ever had with a long stream of jizz on her face and a mouthful. From all the stories you'd read of first time experiences, you feel glad that you didn't come too quick. She strokes her face to funnel the large volume of cum into her mouth.
As you are recovering from the afterglow, she goes in for a passionate kiss. Before you realize what has happened her tongue has pushed a fair bit of your own hot cum into your mouth.
She opens her mouth to reveal she still has plenty, then swallows gesturing a downward motion with her hand, opening to show a now empty mouth, with the cum no longer visible.
<<=SugarCube.getLib().Images.drawAction("cum-swallow.webp");>>
She watches you expectantly.
<<=SugarCube.getLib().Mood.compliantLink("Reluctantly Swallow")>>
<<=SugarCube.getLib().Mood.defiantLink("Spit the cum",1)>><<=SugarCube.getLib().Mood.addCompliance("You feel closer to her by going with the flow on this.")>>
It would be hypocritical of you to spit now. You emulate her by showing the cum on your mouth and then swallowing the still warm ooze. You cough for a moment at the weird texture, and then force a smile at the end.
This is so humiliating, but at the same time, you have been really turned on with this incredible time you have been having with Sue, so it bothers you less than it otherwise might.
<<= SugarCube.getLib().Dialogue.speak("sue","Girl, it was so hot how you did that- you are a natural. I remember my first few times how it felt a bit weird, but it wasn't long before I really got addicted to that sensation in my mouth now. I think you'll know what I mean soon enough.");>>
[[Now then]]<<=SugarCube.getLib().Mood.addCompliance("You kind of feel like a hypocrite, but swallowing cum just isn't your speed. You spit it out.")>>
Sue kind of shrugs her shoulders at that.
[[Now then]]From there your erection quickly fades away, she tilts her head and looks in your eyes.
<<= SugarCube.getLib().Dialogue.speak("sue","Mmm, I hope you enjoyed that...");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Now <<print SugarCube.getLib().PlayerModel.getHeirName()>>. Let's get this little thing under control. ;)");>>
She says while taking a hold of your soft dick.
With a sly grin, Sue takes out a sleekly branded box box labelled "Chasti-flex". She puts on some gloves and starts by opening and generously slathering some gel on your penis, which just seems to cool and clean it, quickly making you completely flaccid and numb. From there, she starts sliding a series of concentric sleeve rings over it and loosely attaching them together, finally linking up a cap, and securing a base with the switch around you balls.
From there she turns the lock mechanism to secure it, and you see some previously loose portions latch together. You curiously poke at it, but are a bit surprised it is still so loose. You'd have expected a bit more restraint.
Then you see her pull out some kind of electronic wand over it, and you see the rings slowly tighten to form a secure fit all around, until it meets the resistance of your now trapped dick.
<<= SugarCube.getLib().Dialogue.heir("...");>>
<<= SugarCube.getLib().Dialogue.speak("sue","There. <<print SugarCube.getLib().PlayerModel.getHeirName()>>, it looks like you have a nice cozy fit. Does it hurt or pinch at all when I do this?");>>
She then tests to flop it around, and see if it might come loose. With it tightened up, there's no possibility of it coming loose - it looks like a girly pink version of your dick, but the rings don't bend or transmit much feeling when you press on them, you are relieved it doesn't hurt.
<<= SugarCube.getLib().Dialogue.heir("No, it seems to move pretty well. I'm relieved it doesn't hurt or anything.");>>
She then helps you to tuck it completely down, and shows you how to use the switch so it will hold itself it in that position.
<<= SugarCube.getLib().Dialogue.speak("sue","Wow, <<print SugarCube.getLib().PlayerModel.getHeirName()>> it looks so elegant and pretty like that. ");>>
<<= SugarCube.getLib().Dialogue.speak("sue","You're so lucky, you have a whole world of new sexual experiences ahead of you now. You're like a butterfly, and I'm the first to see you emerge from you cocoon! Too bad Billy ended up bailing on us, but girls just wanna have fun, right?");>>
<<= SugarCube.getLib().Dialogue.speak("sue","By the way, with this, you won't need a gaff, which makes it a lot easier for you to toy with that petite booty of yours.");>>
She raises your head which was looking at the cage with her hand, to look in to your eyes, saying:
<<= SugarCube.getLib().Dialogue.speak("sue","You are a very comely girl, and we girls need to stick together. You really should get yourself out there, and stop sending that silly boy out to do your errands for you. I'll give you 20 % discount at my shop, if you come to buy items for yourself.");>>
You're not quite sure how to process that, but she seems so genuine with her acceptance of you, that you respond with:
<<= SugarCube.getLib().Dialogue.heir("Thanks Sue, that means a lot. And it was nice being with you.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","This was fun for me too. I'll let your sponsor know it would be my pleasure to attend to any other aspects of your 'training' they'd like me to help with. On that note, your generous 'sponsor' will want these when you get back to them.");>>
Sue smiles as she dangles a keyring with a pair of keys from the cage box. She grabs a tablet, enters a passcode, puts the keys inside inside a small drawer which appeared, which then retracts and now seems to be locked.
She then hands you back the tablet.
With that, you find yourself in something of a daze, and depart from her bedroom.
<<=SugarCube.getLib().InventoryUX.add("chasti-flex");>>\
<<=SugarCube.getLib().Clothing.wear("chasti-flex");>>\
<<=SugarCube.getLib().Tasks.removeTask("machine-requires-cage")>>\
<<=SugarCube.getLib().PlayerModel.raiseClothingTolerance(2);>>
<<=SugarCube.getLib().PlayerModel.triggerSexualRelease(true);>>
[[Walk back home]]While the fact of the cage is unsettling, your experience with Sue gave you a newfound sense of confidence. You hate to admit it, but you enjoy the thrill with presenting yourself as <<print SugarCube.getLib().PlayerModel.getHeirName()>>, and how it turns you on. You feel like you could go out in public as her again, without being forced to this time.
You quickly proceed directly to the inner chamber, to present the tablet to the computer.
You state to the computer...
<<= SugarCube.getLib().Dialogue.heir("It's done, Computer - here is the tablet. Sue put the keys inside.");>>
<<= SugarCube.getLib().Dialogue.speaker("Thank you <<print SugarCube.getLib().PlayerModel.getHeirName()>>. Sue has likewise reported so. Please proceed to the omni pod, for physical verification.");>>
You comply, entering the the machine and see a tendril gently conduct a series of tests which confirm to the computer that your penis is now quite trapped in that cage.
<<= SugarCube.getLib().Dialogue.speaker("Very good <<print SugarCube.getLib().PlayerModel.getHeirName()>>. You may resume your normal activities. Enjoy the rest of your day.");>>
You exit the pod.
<<set $innerDoorUnlocked = true >>\
[[continue|Inner chamber]]<<= SugarCube.getLib().Dialogue.heir("Hey Sue, I guess you heard, I need to get a new hairstyle... Could you help me on that?");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Yep, for sure! I've got a sales clerk to help mind the store while we're out at the salon.");>>
<<= SugarCube.getLib().Dialogue.heir("Oh, aren't we just getting a quick cut at the salon next door?");>>
<<= SugarCube.getLib().Dialogue.speak("sue","No, honey. That place is ok for busy soccer moms, or an emergency touch up, but I'm a regular at Soft Touch Lounge. I already had a princess treatment scheduled for today.");>>
<<= SugarCube.getLib().Dialogue.heir("...Princess treatment?");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Yeah, that's the whole works. We'll both feel like new women by the time we're done!");>>
<<= SugarCube.getLib().Dialogue.heir("Uhh, sure.");>>
You summon the car, and it promptly arrives.
[[Go to Mall with Sue]]You get in the back of the self driving car with Sue.
She sits in close to you, smiles as you tell the car where to go, then asks...
<<=SugarCube.getLib().Dialogue.speak("sue","Does this thing have any games?");>>
<<=SugarCube.getLib().Dialogue.heir("Nah, it's ju...");>>
<<=SugarCube.getLib().Dialogue.speaker("There is a collection of 1402 games available at this time. For two players, Super Marco Rivals Driving Simulator is a popular choice for short duration amusement.");>>
<<=SugarCube.getLib().Dialogue.speak("sue","Now we're talking my language, lets play!");>>
You see a couple gaming controllers pop out from panels on both sides of the car. You each grab one, and hear the classic cartoony music of the racing game, as the center display panel reveals the game.
After a couple rounds, Sue has been wiping the floor with you, with her expert drift racing technique. On the third round you hit her with an exploding revenge clam in the final lap, which gives you a chance to beat her for first place. She squints into your eyes, and says:
<<= SugarCube.getLib().Dialogue.speak("sue","Ooh honey, you didn't just do that. Duchess Pomegranate never loses with me behind the wheel!");>>
<<=SugarCube.getLib().Dialogue.heir("I think she just did!");>>
At this point, the car has arrived at the mall, so you put away the controllers, and get out.
[[Go to Soft Touch with Sue]]You walk into the lobby with Sue, and approach the receptionist.
<<=SugarCube.getLib().Images.drawLocation('mall-spa.jpg');>>
<<= SugarCube.getLib().Dialogue.speak("sue","Hi, Sue Halla and my guest, we have an appointment for 2...");>>
<<= SugarCube.getLib().Dialogue.speak("spa","Oooh, the princess treatment, you two are in for a treat. And this is <<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>> Masterson's, first time with us here? Ok, she's added to our customer database now.")>>
She hands you both little paper cups.
<<= SugarCube.getLib().Dialogue.speak("spa","Enjoy our complimentary Lemongrass Acai superfood antioxidant cleanser shots.")>>
You both drink them. It's kind of gross, but if it's healthy, that's something... She then gestures for you to follow her as she walks into the spa.
<<= SugarCube.getLib().Dialogue.speak("spa","First, go to the change rooms, undress and wear these robes. Remove any makeup you are wearing. We'll start you with our deluxe facial treatment.")>>
[[Get Facial Treatment|Get Facial Treatment with Sue]]You undress in a change area and don a very plush robe, wash up, and then make your way to a small room with a couple of beds.
<<= SugarCube.getLib().PlayerModel.toggleMakeup(false)>>
<<= SugarCube.getLib().MirrorUX.saveLastOutfit()>>\
<<= SugarCube.getLib().MirrorUX.removeExplicit(["penis", "ass"])>>\
You are guided to a little bed, and instructed to get on it with your robe. Sue arrives and does likewise. You both relax and enjoy the peaceful atmosphere of the spa.
Soon after, a couple massage attendants come by to apply a spa facial of nutrient rich mud.
<<=SugarCube.getLib().Images.drawLocation('spa-facial.jpg');>>
[[Get Bikini wax| Get Bikini wax with Sue]]<<if SugarCube.getLib().PlayerModel.canWax()>>
The spa technician seems very experienced, and doesn't seem to bat an eye at the bulge of your cage - they treat your skin in strips of the wax and regularly repeat. Compared to what you'd seen in some movies, it's not so bad, but it's not exactly fun either. The lengths a girl must go to look hot, you sigh to yourself.
<<=SugarCube.getLib().Images.drawLocation('spa-waxing.jpg');>>
<<=SugarCube.getLib().PlayerModel.wax(false)>>
<<else>>
The technician apologizes - Your hair is too short for the waxing to be most effective. At least a week of growth is needed effective removal, but she'll do what she can.
Your removal goes pretty quickly. You watch as Sue winces at the removal of wax strips. Maybe it's for the best you're not having a proper waxing this time.
<<=SugarCube.getLib().Images.drawLocation('spa-waxing.jpg');>>
<<=SugarCube.getLib().PlayerModel.wax(true)>>
<</if>>
After the waxing your skin feels so perfectly smooth and eminently touchable.
Next up, is the Hot Stone Massage.
[[Get Hot Stone Massage|Get Hot Stone Massage With Sue]]At this stage, you are instructed to disrobe and put a towels on your midsection, to allow for your hot stone massage, before a masseuse arrives.
The masseuse really works those hot stones in, melting the tension away from your muscles. The knots in your back and stress you felt coming into the spa are definitely gone by the end of this massage.
<<=SugarCube.getLib().Images.drawLocation('spa-hot-stone.jpg');>>
<<= SugarCube.getLib().Dialogue.speak("spa","Now, please change back to your clothing, and you'll come this way, and your cosmetician can assist you.")>>
[[Get makeup treatment]]Sue talks to the cosmetician and they apply a whole range of details including adding fake lashes and giving you a smokey-eye look.
<<= SugarCube.getLib().MirrorUX.restoreLastOutfit()>>
<<= SugarCube.getLib().PlayerModel.toggleMakeup(true)>>
<<= SugarCube.getLib().Dialogue.speak("spa","Next it's time to get your hair styled.")>>
[[Get hair cut|Get hair cut with Sue]]You walk back to the changeroom and get your clothes back on.
<<= SugarCube.getLib().Dialogue.speak("spa","What style would you like for today?")>>
<div class="monochrome-hair">
<<=SugarCube.getLib().HairStyles.renderLengthsCarousel("Choose Hair Color")>>
</div><<= SugarCube.getLib().Dialogue.speak("spa","And with that style, what color would you like to go with?")>>
<<=SugarCube.getLib().HairStyles.renderStylesCarousel("Styling Done")>>With your hair styling done, you are guided back to the front desk. The receptionist takes a picture of you.
<<= SugarCube.getLib().Tasks.removeTask("get-hair-styled-for-internship-today")>>\
<<= SugarCube.getLib().Dialogue.speak("spa","I hope you enjoyed your visit with us! I have added a picture to <<print SugarCube.getLib().PlayerModel.getHeirName().toUpperFirst()>>'s profile, to allow for follow up visits at our establishment. ")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Now, do me a favor and go back to the changeroom, take off all your clothes and put this on!")>>
She gave you a tiny little thong... No bra!
<<= SugarCube.getLib().MirrorUX.saveLastOutfit()>>\
<<=SugarCube.getLib().Slot.clear("bra")>>\
<<=SugarCube.getLib().Inventory.add("covert-thong-1")>>\
<<=SugarCube.getLib().Clothing.wear("covert-thong-1")>>\
<<=SugarCube.getLib().Images.drawItemById("covert-thong-1");>>\
Next, you put on the new slinky dress she gave you. Wow, this thing goes kind of high up your smooth legs.
<<=SugarCube.getLib().Inventory.add("black-club-dress-0")>>\
<<=SugarCube.getLib().Clothing.wear("black-club-dress-0")>>\
<<=SugarCube.getLib().Images.drawItemById("black-club-dress-0");>>\
No socks for this outfit, either.
<<=SugarCube.getLib().Slot.clear("hosiery")>>\
Oh, she's right - bra straps or regular panties would never work in this thing. It's a little racier than outfits you've worn before.
And some Sandals.
<<=SugarCube.getLib().Inventory.add("shoebox-dresssandal-2")>>\
<<=SugarCube.getLib().Clothing.wear("shoebox-dresssandal-2")>>\
<<=SugarCube.getLib().Images.drawItemById("shoebox-dresssandal-2");>>\
Finally you come out of the changeroom.
<<= SugarCube.getLib().Dialogue.heir("This is a little too revealing, isn't it? I don't think I can pull off an outfit like this...")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Mmm... Boom chicka boom! Are you kidding me? That outfit looks perfect on you! You look fantastic. Now let's go, we're running late for our next stop!")>>
<<= SugarCube.getLib().Dialogue.heir("...really, it seems a bit mu...")>>
Sue isn't one to indulge your doubts, and whisks you away from the salon.
[[Go to Shuffleboard Bar]]You and Sue drop off you stuff in the car, and then walk over to the new local bar - Commodore Vanderbilt's Shuffleboard Lounge.
It's a hipster joint known for good craft beers, and of course, shuffleboard lanes. She sets you up for a 30 minute lane session, and orders a couple of beers.
<<=SugarCube.getLib().Images.drawAction("shuffleboard-lounge.png");>>\
Sue gets a good start in the first round shoving her yellow biscuit almost centered, and stopping just ahead of the 10 point zone. Your first shot of the black biscuit is a bit fast, but fortunately it gets stopped with hers, sliding it out to 8 points, allowing yours to sit in the edge of the 10 point zone. Sue grimaces.
The game goes back and forth - Sue is pretty good, you're not bad either. As the two of you have your beers, your precision starts to drift off. Maybe you should have eaten something before you met up with her.
<<=SugarCube.getLib().Dialogue.heir("Are you hungry? I haven't really had anything much to eat since the morning.")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, good point, we spent the whole afternoon at the spa, it's past time to eat something.")>>
[[Sue orders some bar food]]A few minutes later a waitress brings out your food to a table. Your lane reservation was almost over, so you get seated.
<<= SugarCube.getLib().Dialogue.speak("sue","Now girl, you need to get all this meat into your mouth.")>>
<<=SugarCube.getLib().Images.drawAction("hot-dog.jpg");>>
Her comment and the sexy outfit make you feel a little cheeky. You jerk the hot dog provocatively, stick your tongue into your cheek, as if you're deep throating the whole thing. Sue smiles at the image, and the starts to munch on her dog. You notice some guys behind her also perked up at the sight of your gesture. You blush, and start working on yours likewise.
You and sue get to chatting a bit at the table, it's a nice excuse to get off your feet for a bit, with those heels.
<<=SugarCube.getLib().Dialogue.heir("...So Sue, where are you from? How did you end up here?")>>
<<= SugarCube.getLib().Dialogue.speak("sue","I grew up in the burbs, I have a lot of family out in the region here, mostly from Scandinavia. My dad's family was Finnish, and most folks in our social circle were Lutherans. I guess I'm spiritual, but that stuff was there growing up. For me, growing up church was just this social thing where the minister would tell some stories, and then folks would get on with their day. It felt like this thing that we did, because that's what you do, but I feel like it was just this thing in the background... I guess you could say I'm more spiritual than religious, now. Sorry, I must be boring you to death...")>>
<<=SugarCube.getLib().Dialogue.heir("No, it's cool to know more about you.")>>
<<= SugarCube.getLib().Dialogue.speak("sue","It's kind of weird, you don't really hear as much about it, but Finns are a really proud of their traditions. Like, my family built a sauna out of birch when I was still a little girl, behind the house, which we'd use in like the middle of winter! Then afterwards, we'd have sausages, and the adults would have beers. I guess the dogs kind of reminded me of that.")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Now, I hope you're not feeling too peckish... I think it's time we make our next stop.")>>
[[Leave the Shuffleboard lounge]]You walk around the block, to "The Vault", the location was an old bank, and it was renovated with an Art Deco look. It opened a couple years back as an LGBTQ+ spot, but you know that folks like Stacy sometimes went to it, along with traditional clubs, with her friends.
You arrive pretty early in the night, so there was a bit of a line, but the bouncer waved you and Sue right in after checking your ID's.
<<=SugarCube.getLib().Dialogue.heir("I'll get us some drinks")>>
You line up, and are surprised how quickly the bartender asks for your order. You're not too experienced with the club scene, so you ask the bartender for a suggestion for a sweet drink and he gets you a couple servings of "Sex on a Beach". A peachy concoction - a little over sweet maybe, but it's on you that you weren't more specific - it's drinkable at least, and it seems like the bartender made it ultra boozy. You're not exactly sure how much they said that was.
<<=SugarCube.getLib().PlayerModel.deductMoney(21)>>\
The theme for most of the music is retro 90s, and at times you sort of hear Sue mention how this or that song were her favorites. It's hard to make out the details of what she's saying, the music is kind of loud. You two are sort of off to the side working on your drinks and getting a sense of the scenery.
[[As you finish up your drink...]]As you finish up your drink...
<<=SugarCube.getLib().Dialogue.speak("sue","Are you done with that? Let's dance.")>>
It seems like it was more a statement than a question. She's already grabbed your wrist as she guides you through the crowd onto the dance floor.
<<=SugarCube.getLib().Images.drawAction('nightclub.jpg');>>
<<if SugarCube.getLib().Slot.get("ass") != null>>\
Wow, the bass is so loud here, you feel your insides vibrating to the beat. Including the butt plug.
<</if>>\
At first you kind of feel anxious, cuz well...
<<=SugarCube.getLib().Images.drawAction('bad-dance.webp');>>
<<if (SugarCube.getLib().Skills.get("ballet")> 1) >>\
Your rudimentary ballet knowledge helps you try a couple movements, but the pacing doesn't really fit so well in a club setting. In any case, Sue seems to be smiling, and it's not like the dance police have dragged you off the floor.
<<else>>\
Ok, maybe you're not a great dancer, but Sue seems to be smiling, and it's not like the dance police have dragged you off the floor.
<</if>> That said, you still try to suggest maybe you should go back to the side, but Sue keeps you there for a bit, and teaches you some easy moves. You start to get a little more comfortable with yourself there, and maybe the drinks are hitting you a bit.
Just as you feel yourself getting into the groove someone gropes your ass!
Your first thought is to shout at the douchebag...
<<=SugarCube.getLib().Mood.defiantLink("Turn around to give them a piece of your mind",2)>>
<<=SugarCube.getLib().Mood.compliantLink("You don't feel safe, it's time to go home",0)>>You can't believe someone would do that to you, and you don't want to give them any attention.
The experience has kind of soured your mood right now, so you suggest to Sue that maybe you should move on to next venue.
[[Get back to Sue's Place from Vault]]<<=SugarCube.getLib().Mood.addDefiance("You feel righteous anger as you pivot around to stand up for yourself!")>>
Actually, it's a girl who is a good foot shorter than you! She sees the upset look on your face and her demeanor turns apologetic.
<<=SugarCube.getLib().Dialogue.generic("Petite girl","Oh, I'm so sorry - I don't normally do that sort of thing. It's just your dress is soo cute and glittery and it looks like you could bounce quarters off of that ass. I'm so sorry, I don't know what came over me - I couldn't help myself and touch it.","","jen-intern.jpg")>>
Her sincere expression is the definition of disarming. You sort of loose your train of thought.
<<=SugarCube.getLib().Dialogue.heir("Umm, oh. I see... well don't just go around groping people. They might not like it.")>>
In all honesty, maybe you wouldn't mind if she groped you a little more in private- but it's wrong to encourage that kind of thing without people's consent. In any case, she drifts away with her friends.
You and Sue dance for a couple more songs, but at this point are both feeling a bit sweaty. Sue gestures to approach her.
<<=SugarCube.getLib().Dialogue.speak("sue","This was great, but I think I got my fill. Do you want to do a few more songs, or are you about ready to go home now as well?")>>
[[Get back to Sue's Place from Vault]]You make your way out from steaminess of the club, out to the cool breeze of outside.
The car summons over pretty quick, which is nice, as it allows Sue to get off her feet and take off her heels. You do likewise.
For someone who runs a sex shop, you're kind of surprised at how low key she has been at the lounge and bar. But, with just you in the car, she takes hold of you and starts a slow kiss...
You arrive at Sue's place.
<<=SugarCube.getLib().Dialogue.speak("sue","Do you want to come in? Your dom mentioned they have a really special suit for you, but they don't want you dropping straight off the deep end. I'd be happy to help you safely explore more of your submissive side. I'm honestly a little intrigued about what that suit's all about... I have a few ideas that could go a little further than what you've experienced before.")>>
<<=SugarCube.getLib().Mood.compliantLink("Go with Sue",2,"Go with Sue Date 3")>>
[[You're kind of tired, go home]]<<=SugarCube.getLib().Mood.addCompliance("No one needs to twist your arm. You feel happy to indulge Sue in this.")>>
She guides you straight to the bedroom. That's hot.
<<=SugarCube.getLib().Dialogue.speak("sue","Just sit right there.")>>
She kisses you, and gently guides your hands behind your back. Click. She has handcuffed them together. You're not quite used to that, but it's kind of kinky.
From there, she gets a really soft black satin blindfold, and puts it over your eyes. You're totally at her mercy at this point, but she hasn't abused your trust up to now.
She whispers into your ear.
<<=SugarCube.getLib().Dialogue.speak("sue","Just relax and enjoy the ride, baby. That's it.")>>
You feel a collar placed around your neck, and feel the weight shift slightly as she adjusts it. On your breasts you feel a leather leash dangling down, which it seems like she has placed on the bed.
[[Where does this go?]]In the other ear, you hear her seductively whisper:
<<=SugarCube.getLib().Dialogue.speak("sue","Are you ready to fuck me? We'll do it a little different this time...")>>
You feel her fingers apply gentle downward pressure on your chin to open your mouth.
<<=SugarCube.getLib().Dialogue.speak("sue","Open up, honey. Take this in slowly.")>>
You smell something rubbery being placed into your mouth. As your mouth shift, you get a sensation of a vein. It seems she has placed a moderate sized penis gag into your mouth. You feel a considerable weight extending from the front.
<<=SugarCube.getLib().Dialogue.speak("sue","Now close.")>>
You feel her tighten some straps. No doubt about it - there's likely a dildo extending from the other side of that gag. On one hand your mind realizes that doing something like this two weeks ago would have been unthinkable, but you have a weird sense of calm. It's strange, but this feels so right.
<<=SugarCube.getLib().Dialogue.speak("sue","You look incredible. Now, get on the floor, and soon you'll penetrate me with it, baby.")>>
She guides you down, onto your knees. You feel some resistance as she has you slide the dildo into her. You can start to smell her musk and feel the heat of her thighs on your face.
<<=SugarCube.getLib().Dialogue.speak("sue","Now, back and forth. Just like on the dance floor, you start to feel the rhythm as you rock together.")>>
You both move in and out together. It's harder without visual cues, but you feel more focused on your other sensations. The sense of her smooth legs transmitted to your face through the straps of your gag. As you build up a tempo with her, you could swear you could taste something in the back of your mouth. It kind of reminds you what you tasted from the pod with the simulated sex, but also with a taste like Sue's.
<<=SugarCube.getLib().Dialogue.heir("mmph... mmmm...")>>
Whatever is in it, you start to lose control, and feel yourself wanting more, and sucking on the dildo and moving faster.
<<=SugarCube.getLib().Dialogue.speak("sue","Yes! oh, yes!")>>
Sue also becomes more erratic and you feel her body spasming. Finally she regains her composure, and gestures to your head to stop, as she dismounts herself from the dildo.
She then removes the harness from your head, and guides you onto the bed.
[[Your turn]]<<=SugarCube.getLib().Dialogue.speak("sue","Mmm, you must be feeling all hot and bothered now! Lets get you on the bed and get that out of your system!")>>
She leads you by the leash onto the bed, and positions you chest-down, still with your hands behind your back.
You feel a lubed finger going in and out of your ass. Then a second, and a third.
<<=SugarCube.getLib().Dialogue.heir("Ohh...")>>
She stops, and you feel her weight on the bed shift away from you, and hear sounds of some straps. Soon enough you feel the comforting sensation of her legs back on the bed, alongside yours.
Next, you feel her fondling your cage for a moment. And then a whisper into your ear.
<<=SugarCube.getLib().Dialogue.speak("sue","Now, for the main event.")>>
You feel her gingerly mount you with the tip of a well lubricated dildo. This one seems much bigger than what she used on you last time.
<<=SugarCube.getLib().Dialogue.heir("It's so big, I don't know if I can take that...")>>
<<=SugarCube.getLib().Dialogue.speak("sue","Let's find out. I'll take it nice and slow. Just tell me if it's too much.")>>
She caresses your breasts and ever so slowly slides in and out of you to a growing depth. At first you struggle to take it in, but soon, you find yourself getting excited by the sensation. Soon enough you're bucking against Sue and trying to get her to speed up.
Soon enough, you find the pressure building deep inside you, and are cumming.
<<=SugarCube.getLib().Dialogue.heir("Oh Sue...")>>
While she still has you mounted, she removes your handcuffs and blindfold, and sets you on your side, spooning you from behind and running her hands over you.
<<=SugarCube.getLib().Dialogue.heir("This night... It's been incredible.")>>
She kisses you on the shoulder. The two of you lay there for a few minutes, just enjoying the moment. Finally she takes the dildo out of you, removes a dildo harness from herself, and wipes up the sheets.
<<=SugarCube.getLib().Dialogue.speak("sue","I'm glad you enjoyed this, and I really like your new look!")>>
[[Change and go home]]You get dressed and give a final kiss, before heading out to take your car back home.
<<=SugarCube.getLib().Dialogue.heir("Good night, Sue...")>>
<<=SugarCube.getLib().Dialogue.speak("sue","Have a good night, sexy!")>>
Only as you get home on the drive back from Sue's, you realize that you didn't even get the cage removed this time.
<<= SugarCube.getLib().MirrorUX.restoreLastOutfit()>>
[[Return home| Baldric House]]Thanks for the help Sue, it's been fun!
<<=SugarCube.getLib().Dialogue.speak("sue","Ok, have a good night!")>>
Sue steps out of the car after you drop her off at her place. On the way home you change back to your original outfit.
<<= SugarCube.getLib().MirrorUX.restoreLastOutfit()>>
[[Return home| Baldric House]]<<= SugarCube.getLib().Tasks.removeTask("sexual-relief-sue-round-2")>>
<<= SugarCube.getLib().Dialogue.speak("heir","So, I heard I should check in with you again. About some help with, umm... fun release?")>>
You don't recall instructions on how to solict this, so you just awkwardly wink at her, while grinning like a Cheshire cat.
<<= SugarCube.getLib().Dialogue.speak("sue","I was wondering when you might be coming by for some more fun.")>>
She walks up close and "accidentally" caresses at your groin.
You hear a sultry whisper into your ear.
<<= SugarCube.getLib().Dialogue.speak("sue",`You must be feeling like you are on the verge of exploding.`)>>
<<= SugarCube.getLib().Dialogue.speak("sue",`Ok, I'll need some time to wrap up, why don't you just relax with some light reading for now. It's full of some classics when I've got my hands to myself.`)>>
She winks and gives you a tablet. Currently it has a tab open with a lesbian short story [[Dress you up|https://www.literotica.com/s/dress-you-up]]
After a little while and a few stories that have amped up your libido, Sue is still closing up shop.
<<= SugarCube.getLib().Dialogue.speak("sue",`Ok, sorry just a couple more minutes. Oh, shoot! Could you do me a favor and get cheese to go with some wine. Could you grab some Brie or something, and meet me at my place?`)>>
<<= SugarCube.getLib().Dialogue.speak("heir","Uhhh, sure ok.")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, and I'm on my last tampons, can you help a sister out and grab me a 20 pack of regular? Thanks you're the best!")>>
The thought of shopping in the "personal care" section is a little awkward, but it seems like arguing about something like this is a lost cause.
[[You make a quick run at a little grocer]]As requested, you make a quick run to the grocery store, and start looking for cheeses.
<<=SugarCube.getLib().Images.drawAction("grocery-shopping.jpg");>>
Is there an old guy over there leering at you? Seriously. Why do guys have to be such pervs sometimes? Can't you just dress to look nice for yourself and browse the grocery store without getting a creeped on?
You find some fancy cheese, and then make your way to the women's health section.
You have no clue what makes for a good tampon, so find yourself carefully reading the label, as you don't want to get the wrong kind. Girls can wear so many cute outfits, but having a period must be kind of a drag. Finally, after looking at just about every package, You realize that the regular ones are all pretty much the same, just different brands, so you make your pick. After waiting a couple minutes at the express check-out line, you have your stuff and make way to Sue's.
<<=SugarCube.getLib().Images.drawAction("tampon-buy.jpg");>>
[[Walk to Sue's]]You knock at Sue's door, and this time Sue opens the door.
<<= SugarCube.getLib().Dialogue.speak("heir","H...");>>
Before you finish a word, she puts a finger to her mouth, then pounces to pull in you in. You're not one to resist an welcome like this. Sue deftly pivots you, and has you against the inside wall, as she starts kissing you. She puts your bag on he floor, and then takes your arms by the wrists, and raises them up over your head. You feel so vulnerable and exposed like this, and yet, it feels so nice being up close to Sue again.
<<= SugarCube.getLib().Dialogue.speak("sue","I've got you <<=SugarCube.getLib().PlayerModel.getHeirName()>>. Just let yourself relax in the moment and enjoy yourself tonight.")>>
She walks you over to the kitchen and pops open some red wine, pouring a couple glasses, handing you one, and you clink them together, before starting to drink them. Her eyes are so hot that way she looks at you.
She grabs a box of fancy crackers, and a plate, then points out a cutting board and knife.
<<= SugarCube.getLib().Dialogue.speak("sue","Can you do me a favor and prep some cheese on this platter? I'll just get my room sorted out.")>>
She walks off to the bedroom as you get some slices prepped up.
After a couple of minutes, you have a small plate of cheese, and add some crackers. You move over to her sofa table, and take a sip of wine. After the last few days of work, taking a moment to just unwind is nice, and your mind wanders for a bit.
From around the bedroom, you hear:
<<= SugarCube.getLib().Dialogue.speak("sue","<<=SugarCube.getLib().PlayerModel.getHeirName()>>, I think there's something you might like to see in the bedroom. Could you put the snacks in the fridge for now?")>>
[[Walk to bedroom]]Sue has dressed herself into a familiar outfit.
<<=SugarCube.getLib().Images.drawAction("sue-sex1.jpg");>>
On the bed, you see a pair of latex stockings and a tiny dress. Sue starts undressing you, and you are now completely naked. It feels a little unsettling at how she's taking these liberties with you. Of course, it feels so good to be around her, which eases the feeling of anticipation and suspense.
<<= SugarCube.getLib().MirrorUX.saveLastOutfit()>>
<<= SugarCube.getLib().MirrorUX.removeExplicit(["head","penis", "ass"])>>
At this point, you've regularly been dressing up as a girl, and the prospect of sex with Sue is ever so tantalizing, but this is more lewd than anything you've worn before. Considering her outfit, this is obviously not something she wouldn't wear herself. And of course, it's more than a little sexy, and you're not going outside to be seen by anyone else.
<<=SugarCube.getLib().Mood.defiantLink("Oh, I'm just not comfortable with putting that on",1) >>
<<=SugarCube.getLib().Mood.compliantLink("Wow, this is hot",2)>><<=SugarCube.getLib().Mood.addDefiance("You don't feel like it, you feel yourself becoming bolder by stating so.")>>
<<= SugarCube.getLib().Dialogue.speak("heir","I'm not really keen on wearing that.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, I'm sorry I misread things. I had an impression you were a kinky kind of girl who'd like dressing up and having sex with me. Vanilla sex just gets so boring for me, it doesn't get me wet anymore. I'm sorry my fetish makes you uncomfortable, but sometimes, if it isn't right, it isn't right. Now then, lets make good on that promise that your cage would be freed up. I'll unlock you and leave you to your pleasure." )>>
It looks like Sue really prefers to keep things a little kinky, but at least you'll still be able to masturbate free of the cage.
<<=SugarCube.getLib().Mood.compliantLink("On second thought, maybe it would be fun to have sex in that outfit",1,"Wow, this is hot")>>
<<=SugarCube.getLib().Mood.defiantLink("Sorry, but yeah - I don't won't to wear that dumb outfit... I just want to get that thing off.",2)>><<=SugarCube.getLib().Mood.addDefiance("Maybe that was kind of harsh, but she did spring that on you really suddenly. Sue presents a what seems like an insincere smile as she takes the key from her necklace, and unlocks your cage. It's curious but, your penis seems a smidge smaller than you remember.")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Umm, Ok- I have some laundry to run - I'll leave you to it! I hope you enjoy the relief.")>>
Sue tries to smile again, awkwardly hugs you, and leaves you some privacy in her room. You wonder if Sue would still be interested in spending time with you, given your 'vanilla' attitude.
From there, you start masturbating - it doesn't take long before you come, and you feel much relieved.
<<=SugarCube.getLib().PlayerModel.triggerSexualRelease(true)>>
After that, you get dressed again, and mention to Sue that you'll get going now. She puts the cage back on, and hugs you again to see you off.
<<= SugarCube.getLib().MirrorUX.restoreLastOutfit()>>
[[Return home| Baldric House]]<<=SugarCube.getLib().Mood.addDefiance("Sue kisses you.")>>
<<if hasVisited("Oh, I'm just not comfortable with putting that on")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, you had my heart skip a beat there. I'm so glad you are open to sharing my latex fetish! This is going to be so much fun. Now, let's get you dolled up.")>>
<</if>>
First, she wastes no time in rolling the stockings up your legs. Since you started all this, you have become much more acquainted with experiencing your feminine side - the feeling of the leggings is really exciting, and the reflections on your legs are otherworldly.
<<=SugarCube.getLib().Images.drawItemById("latex-stockings-gift-0");>>
<<=SugarCube.getLib().Inventory.add("latex-stockings-gift-0");>>
<<=SugarCube.getLib().Clothing.wear("latex-stockings-gift-0");>>
Next she wastes no time getting you into the dress, and seems to really enjoy running the zipper up your torso.
<<=SugarCube.getLib().Images.drawItemById("latex-dress-gift-0");>>
<<=SugarCube.getLib().Inventory.add("latex-dress-gift-0");>>
<<=SugarCube.getLib().Clothing.wear("latex-dress-gift-0");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Could you model this stuff for me? I think these would look great on your lithe body.")>>
You kind of shake your ass in a goofy way, and then make some stereotypical model poses with your face and hands. It makes you a little self-conscious, but you are glad Sue is entertained by you.
With the clothes on you, you're starting to get excited to have sex with her. Sue however, doesn't seem ready to start quite yet. She guides you to her large bathroom. She has you sit at a chair where she has piles of cosmetics close at hand.
<<= SugarCube.getLib().Dialogue.speak("sue","Your makeup is a nicely done, but lets try something a little more sultry for tonight.")>>
She wipes up your face, plucks some of your eyebrows, and does your makeup using some darker and more exotic colors and shades than you'd used before.
<<= SugarCube.getLib().Dialogue.speak("sue","Wow. Girl, you look something fierce. The boys would be falling over themselves to get your digits at the club. Here, get a look.")>>
[[Look at Sue's handiwork]]She stand you up to turn you to the mirror to see the results, as you had been facing her as she used your face as a canvas for her artistry.
<<=SugarCube.getLib().Images.drawAction("sue-makeup-dark.jpg");>>
She's not wrong. It's hard not to get intoxicated with the visual of this scene, with two gorgeous, provocatively dressed women so close together, having fun perfecting their makeup. It just happens that are one of the participants in this scene.
<<= SugarCube.getLib().Dialogue.speak("sue","Mmm, I bet you want to preen that tight little ass of yours at the club sometime... But the boys at the club are going to miss out, you're all mine tonight.")>>
Her hand glides down your waist.
<<= SugarCube.getLib().Dialogue.speak("sue","Now, as promised...")>>
<<= SugarCube.getLib().Slot.clear("penis")>>
She takes off a necklace on which she had secured your key. With a deft motion she hikes up the front of your dress, exposing your cage. She unlocks the chasti-flex, and removes the outer shell, revealing your penis.
<<= SugarCube.getLib().Dialogue.speak("sue","That is cute. Make sure you don't cum too soon. I want to savor having you inside me.")>>
Being locked away for so long, you could swear it looks different, a little smaller, cute like she described. It seems like it has more of a pink tone than you remember. She is gently fondling it now, you are putty in her hands. From here, she guides you to the bed.
[[Join Sue in Bed]]Sue backs you you up to the side of the bed, and leans into you, causing you to slowly fall backward onto the bed.
<<= SugarCube.getLib().Dialogue.speak("sue","Just relax and savour this moment.")>>
She gets positioned close to the foot of the and starts to lick at your dick like a lollipop. From there she starts bobbing her head down on you and in a quick a minute, you find yourself coming erect, and she backs off to caress and kiss you all over.
She seems to spend a good bit of time sensually on your breasts, which while modest, are more noticeable than last time she saw you.
Finally she shimmies up and loses no time to straddle you, quickly taking in your dick. She feels very wet, and you feel no resistance. You know girls can sometimes be really sensitive down there, but bites her lip proudly as she take all of your penis to the hilt in without wincing or anything.
<<= SugarCube.getLib().Dialogue.speak("sue","<<=SugarCube.getLib().PlayerModel.getHeirName()>>, that feels nice - when you are ready to come, lets finish you off in my mouth.")>>
She clenches her tight on you but just holds at your base, and leans in to kiss you. Then, she starts shifting up and down, slowly but holding you tight.
She shifts tempo, which starts to get you over the edge.
<<=SugarCube.getLib().Mood.defiantLink("Come inside her",2)>>
<<=SugarCube.getLib().Mood.compliantLink("Warn her, and allow her to dismount")>><<=SugarCube.getLib().Mood.addDefiance("It feels too good to stop. You moan out:")>>
<<= SugarCube.getLib().Dialogue.speak("heir","Ohhh... That feels good. I'm coming!!!")>>
Sue's pussy is just too tantalizing, and your burst shoots deep inside her.
<<=SugarCube.getLib().PlayerModel.triggerSexualRelease(true)>>
After being locked away for the last while, that felt good. Really good. You feel a bit of guilt at not trying harder to honor her request to take your cum in her mouth like she asked, but how could you resist?
<<= SugarCube.getLib().Dialogue.speak("sue","Mmm... <<=SugarCube.getLib().PlayerModel.getHeirName()>> - Is it wrong that I want to scratch my itch just a little more? Girl, I want to really be penetrated deeply.")>>
<<= SugarCube.getLib().Dialogue.speak("heir","Umm... I might need a little time before I'm ready again.")>>
You're feeling like she drained away every last millilitre out of you. She seems to sense your hesitation, and fondles your now flacid cock and smiles.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, that cute thing was nice, but your staying power doesn't have to stop what comes next. You can take me like a dirty girl with this - just start softly, honey.")>>
From a side table, she takes out a monumental looking dildo and a strap-on fitting which she affixes over your groin, and generously lubricates.
When in Rome... [[You start to penetrate Sue with the dildo]]<<=SugarCube.getLib().Mood.addCompliance("You moan out:")>>
<<= SugarCube.getLib().Dialogue.speak("heir","Ohhh... That feels good. I'm about to come any moment!")>>
<<=SugarCube.getLib().PlayerModel.triggerSexualRelease(true)>>\
She shifts off of you and takes your dick into her mouth. You managed to hold back long enough for her, but the subtle serpentine motions of Sue's tongue are just too stimulating for you, and your burst goes straight into her mouth. From the grin on her cock-sucking face, she doesn't seem surprised.
After being locked away for the last while, that felt good and relaxing.
<<if hasVisited("Swallowing is gross")>>\
Sue discreetly swallows all your cum, as per her curious habit.
<<else>>\
She funnels a good chunk of cum into your mouth, and passionately kisses you, while you grinding together for a few slow delerious minutes. The thought of what you're doing is a little uncomfortable, but how can you resist how turned on it makes her?
<</if>>\
<<= SugarCube.getLib().Dialogue.speak("sue","<<=SugarCube.getLib().PlayerModel.getHeirName()>>, that was wonderful. Is it wrong that I want to scratch my itch a little more? Girl, I want to feel you penetrate me deeply.")>>
<<= SugarCube.getLib().Dialogue.speak("heir","Umm... I might need a little time before I'm ready again.")>>
You're feeling like she drained away every last millilitre out of you. She seems to sense your hesitation, and fondles your now flacid cock and smiles.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, that cute thing was wonderful, but that doesn't have to stop us. You can take me with this - just be gentle, honey.")>>
From a side table, she takes out a monumental looking dildo and a strap-on fitting which she affixes over your groin, and generously lubricates.
Sue proceeds to mount over you.
[[You start to penetrate Sue with the dildo]]This time, Sue is not so nonchalant, as you feel her weight pressing on your groin, and she slowly takes the member inside her. She starts by just working herself on the top few inches, gradually increasing her strides. Her breathing is starting to becomes more labored, as this dildo is no small thing, even for a presumably "well practiced" slut like her.
Finally, she has managed to do a few cycles, and bottomed out, letting out a big gasp. She clasps your hands, and smiles.
The two of you discover a rhythm and after a few minutes, she seems to completely loose her usual calm, pulling you in tight like a frenzied animal, with her the heels of her feet on the bed pressing towards her.
<<if SugarCube.getLib().Slot.get("ass") != null >>\
Inadvertently you feel pressure the buttplug stirring inside you, especially as her body crashes down on the dildo.
<<else>>\
You don't have the buttplug present. The thought of wearing it while fucking kind of stirs in your imagination.
<</if>>\
After what feels like an eternity entwined together, she climaxes and long, deep moans, and lets out a sigh. You're not sure if she was hamming it up for you, but it seems like she may have gotten quite an orgasm there.
She slowly eases herself off the dildo, and unstraps it from you, to put on a bedside table. She goes out of the room.
<<= SugarCube.getLib().Dialogue.speak("sue","Whew - All that fucking has built up my appetite. I'll be right back with snacks")>>
Your groin is a little sore from the force of the dildo base - you wonder how intense that must have been for here.
You've had enough fun for today - [[Relax from post-coital fun]]
<<if SugarCube.getLib().Slot.get("ass") != null >>\
<<=SugarCube.getLib().Mood.compliantLink("Toy with your ass",1)>>
<<else>>\
Toy with your ass (Plug not present)
<</if>>\Sue returns with the snacks and has topped up the wine glasses.
<<= SugarCube.getLib().Dialogue.speak("sue","<<=SugarCube.getLib().PlayerModel.getHeirName()>>, I hope you were able to release some of that tension from inside you. This was fun.")>>
She hands you a glass, and you clink them.
<<=SugarCube.getLib().Dialogue.speak("sue","Cheers!")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Cheers!")>>
[[Wrap up to go home]]<<=SugarCube.getLib().Mood.addCompliance("Being with Sue feels good. You don't want to end the moment.")>>
You're still feeling soft, but Sue's huge orgasm with the dildo is lurking in your mind. Before you realize it, you're on your side, absent mindedly toying with the butt plug to for some sensation back there, craving an orgasm like she had.
At that moment, Sue returns with a tray of newly topped up wine glasses, and the chilled cheese plate you prepared earlier.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh <<=SugarCube.getLib().PlayerModel.getHeirName()>>, what kind of host am I? I didn't realize that's what you were hungry for!")>>
She gets in alongside you to start kissing you. She withdraws your plug, and begins fingering you with one, and then a second digit. At this point, you're lost in the moment and Sue stops to get something from her side table. It's a small, shorter dildo and strap.
She sets up a couple of pillows to your side, and shifts you to be face down on top of them, before rigging the dildo to her groin and adding some lube to it.
<<= SugarCube.getLib().Dialogue.speak("sue","Just hold still while I start - I'll be gentle, baby.")>>
She uses one and then a second lubed fingers which she slides into you. This isn't the first time your hole has been tested, and Sue has a very soft, playful touch - she seems to enjoy taking it slow and teasing you. You start to get bored and slide your ass against her fingers.
With that, she withdraws her fingers, and traces some lines on the surface of your ass, before homing the first inch of the dildo into your tender hole. This is a little smaller than the one you have at home, but you're still putting trust in her not to overdo it, and hoping this isn't a big mistake.
<<= SugarCube.getLib().Slot.clear("ass")>>
[[Sue starts to fuck you in the ass]]You are being penetrated by Sue - unlike your masturbation sessions with a dildo, there is a feeling of uncertainty of what happens next. She seems to use a bit more variety with pacing and spiral motions, as you find your insides warming up. You feel yourself sandwiched between the pillows underneath you, and the sensation of her breasts running down your back, and she seems to slow down.
<<=SugarCube.getLib().PlayerModel.triggerSexualRelease(false)>>\
Suddenly you hear a voice outside of you...
<<= SugarCube.getLib().Dialogue.speak("heir","Don't stop yet! I want all of it inside me!")>>
What just happened? You feel shame that you somehow vocalized the thought - you don't know where that outburst came from, but you do want more.
Sure enough, Sue is happy to oblige. She takes a firm hold of you at the hips and starts to give you deliberate, deep thrusts which shake you to your core. With the landing of each stroke, you feel yourself shuddering.
Out of animalistic excitement you slam your ass into Sue.
<<= SugarCube.getLib().Dialogue.speak("heir","I'm coming!")>>
Sue gives you a last thrust, and stops as you start spasming. Sue shifts your spooned bodies onto the left side, with the dildo still deep inside, as she runs her hand over your back.
You look at the pillow - it has a couple lines of cum going up to her sheet. It seems your dick still had a little more in the tank than you thought. Sue caresses your back, and pulls out from you, leaving you feeling a little empty.
<<= SugarCube.getLib().Dialogue.speak("sue","Damn girl! You took that like a good little slut, <<=SugarCube.getLib().PlayerModel.getHeirName()>>. I love anal, but it took me a lot of practice to get comfortable with a shaft inside me like that. It seems like your body is a natural for it. Don't worry about the mess, I'll swap the sheets.")>>
Sue blots out the cum from your chest, the surfaces and the dildo with some cleaning pads. She then hands you a wine glass.
<<= SugarCube.getLib().Dialogue.speak("sue","<<=SugarCube.getLib().PlayerModel.getHeirName()>>, I hope this helped you let off some tension. To new pleasures!")>>
<<= SugarCube.getLib().Dialogue.speak("heir","It has, thank you. To new pleasures!")>>
You clink the wine glasses together.
[[Wrap up to go home]]After the heat of passion, you and Sue relax for a post-coital moment and regain your composure.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, before I forget - it's time to get you nice and cozy again.")>>
Sue gets the cage from the side table and brings it over your now very flaccid dick.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, how sloppy of me, I must have mis-sized the cage when I installed it - it's obviously too loose for you. I'll fix that right up.")>>
<<= SugarCube.getLib().Dialogue.speak("heir","I'm not sure that...")>>
She secures the cage to the base and locks it. She shifts it around to test, and you feel it loosely flopping inside.
<<= SugarCube.getLib().Dialogue.speak("sue","We need to be careful, that looseness could cause painful blistering or infection, you simply wouldn't want that.")>>
You seem to remember the cage being snug before - you're really not super keen on the cage being even smaller, but before you can get the words together, the cage material is already shrinking down as Sue applies the wand around it, making it into a tight glove-like sleeve around your now dainty penis. On one hand you feel excitement that your silhoutte is becoming even more elegant, but you then start to wonder about if your penis will go able to back to normal after all this is over. Is that even something you want anymore?
<<= SugarCube.getLib().Dialogue.speak("sue","That latex makes you look like one bitchin slut. I want you to enjoy that as a gift.")>>
You feel yourself blushing a little at that statement. From her, its most likely a compliment.
<<= SugarCube.getLib().MirrorUX.restoreLastOutfit()>>
[[Return home| Baldric House]]You are at a small commercial strip with a variety of shops for folks in the neighborhood. Nothing fancy, but it's a short walk - it reminds you of the typical older strip malls in your home town.
Given that you don't have a car, and your irrational phobia of public transit, this will have to be the place you do most of your shopping at.
Life would be so much simpler if you could just ask someone to buy things for you and have them magically show up on your doorstep. Maybe in some alternate reality with jetpacks and teleporters, but that's not how things are in the real world. Stupid [[Butler-Hancock Act]].
<<=SugarCube.getLib().Images.drawLocation('strip-mall.jpg');>>
It's got a variety of shops:
Convenience store
Military surplus store
Mexican restaraunt
<<if hasVisited("Look for Interesting Book")>>\
[[Pawn Broker]]
<<else>>\
Pawn Broker
<</if>>\
<<if (SugarCube.getLib().Tasks.hasTask("check-adult-store") || hasVisited("Adult Goods Store")) && (SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllMaleOutfit || SugarCube.getLib().PlayerModel.checkClothingTolerance() >= 2)>>\
<<if SugarCube.getLib().Tasks.hasTask("check-adult-store")>>\
While walking and trying to overcome your trepidation at taking the bus, you notice a little adult products store. It seems to have quite the selection of 'toys', 'literature', and clothing. The mannequins all seem to have distinctive hair styles and actually, it looks like they have some displays of just heads with makeup and wigs. Looks like this place will have something. Considering how terrifying the idea of taking the bus is for you, maybe this is better option to get a wig and unlock your treasure.
[[Enter adult goods store for first time]]
<<else>>\
[[Adult Goods Store]]
<</if>>\
<<else>>\
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllMaleOutfit>>\
Adult Goods Store
<<else>>\
Adult Goods Store - You don't want to go in dressed like this...
<</if>>\
<</if>>\
Go to:
[[Commemoration Park]] <<=SugarCube.getLib().Pathways.makeJumpLink("Retail Strip","Baldric House");>>You have arrived at the local pawn shop.
<<=SugarCube.getLib().Images.drawLocation('pawn.jpg');>>
<<= SugarCube.getLib().Dialogue.pawn("Welcome to my store. Let me know if you need something. We offer the best prices to buy your used gold jewelry! Tell your friends about our specials on quality home electronics which will stand the test of time. Don't touch the glass. Thank you.")>>
\
<<if SugarCube.getLib().InventoryUX.hasItem("pawn-ticket")>>\
[[Redeem Ticket]] for $50
<</if>>\
[[Retail Strip]]You are here at the adult goods store.
<<=SugarCube.getLib().Images.drawLocation('adult-toy-store.jpg');>>
<<if visited("Retail Strip") > 1>>\
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllWomanOutfit || SugarCube.getLib().PlayerModel.looksLikeAGirl()>>\
<<if (SugarCube.getLib().PlayerModel.looksLikeAGirl() && SugarCube.getLib().OutfitsAnalyser.isCosplay())>>\
<<= SugarCube.getLib().Dialogue.speak("sue",`Ooh, dressing like a boy, eh? That's kind of kinky, ${SugarCube.getLib().CoreUtils.getVariables().player.heirName}! And you know how I like kinky. `)>>
<<else>>\
<<= SugarCube.getLib().Dialogue.speak("sue",`Good seeing you again ${SugarCube.getLib().CoreUtils.getVariables().player.heirName}!`);>>
<</if>>\
<<if SugarCube.getLib().PlayerModel.hasExercisedToday() >>\
Sue seems to look you over approvingly.
<<= SugarCube.getLib().Dialogue.speak("sue",`Have you been working out? You seem more toned... And limber. It's a good look for you.`);>>
She gives your ass a gentle squeeze and smiles.
<</if>>\
<<else>>\
<<= SugarCube.getLib().Dialogue.speak("sue","Hi Billy, how are you doing!");>>
<</if>>\
\
<</if>>\
\
<<if hasVisited("Remember the Hair Style") && !SugarCube.getLib().InventoryUX.hasItem("blonde-wig") && !SugarCube.getLib().PlayerModel.hasGirlyHair() >>\
[[Buy Wig]] for $40
<</if>>\
<<if !hasVisited("Ask about shoes")>>\
[[Ask about shoes]]
<<else>>\
<<if !SugarCube.getLib().InventoryUX.hasItem("first-heels")>>\
[[Buy Shoes]] for $112
<</if>>\
<<if !SugarCube.getLib().InventoryUX.hasItem("makeup") && hasVisited("Discuss Makeup")>>\
[[Buy Makeup]] for $50
<</if>>\
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("find-gaff")>>\
<<if hasVisited("Ask about hiding your dick")>>\
[[Buy Gaff]] for $40
<<else>>\
[[Ask about hiding your dick]]
<</if>>\
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("machine-requires-cage")>>\
[[You present the Tablet to Sue]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("need-sexual-relief")>>\
[[Sue, I have a problem]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("sexual-relief-sue-round-2") && !hasVisited("Go out for hair styling with Sue")>>\
[[Request Relief from Sue]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("get-hair-styled-for-internship-today")>>\
[[Go out for hair styling with Sue]]
<</if>>\
<<if visited("Now then") >= 1>>\
[[Browse Sue's Fetish Wares]]
<</if>>\
<<if !hasVisited("Discuss Makeup") && SugarCube.getLib().InventoryUX.hasItem("first-heels")>>\
Return to the [[Retail Strip|Discuss Makeup]]
<<else>>\
Return to the [[Retail Strip]]
<</if>>\<<=SugarCube.getLib().Tasks.removeTask("check-adult-store")>>\
After a minute of hesitation you finally muster the courage to go inside.
<<= SugarCube.getLib().Dialogue.player("Come on, don't be such a wimp. Think about the prize - apparently it will take some effort to win it. So does any real challenge.");>>
You almost said it loud enough for people to hear. Almost.
This is your moment. You walk casual on your way in, like someone who goes into a place like this all the time.
<<=SugarCube.getLib().Images.drawAction('swagger.webp');>>
[[Time to look for wigs]]You walk in.
<<=SugarCube.getLib().Images.drawLocation('adult-toy-store.jpg');>>
You start to look around to see if you can find some wigs. Suddenly, you realize maybe this won't be so simple.
<<=SugarCube.getLib().Images.drawAction('maze.webp');>>
While making your way around, you see some odd looking sex toys and contraptions. You bend over, curious to get a closer look...
Suddenly, you feel a light touch on your shoulder, and feel yourself blushing from embarrassment, given where you are.
<<= SugarCube.getLib().Dialogue.speak("sue","Can I help you find something?", true);>>
[[You turn around]]<<=SugarCube.getLib().Images.drawPerson('susan.jpg');>>
Woah- you sort of feel like the fly that just landed in the spider's trap. With her heels she's a couple inches taller than you.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, hello. I'm Sue, welcome to my little emporium.");>>
She puts out her hand to shake yours, as her eyes seem to pierce straight into you. Your brain is maybe melting right now, as you are touching this seductive woman.
<<=SugarCube.getLib().Images.drawAction('nervous.webp');>>
<<= SugarCube.getLib().Dialogue.player("I'm ummm... Billy...");>>
<<= SugarCube.getLib().Dialogue.speak("sue","I love to help my customers truly fulfill themselves here. I haven't seen you before. You're probably not acquainted with our layout here. Is there something I can help you find?");>>
<b>[[No! This was a mix up!]]</b> (ABORT, ABORT. What was I thinking, this is completely insane. This plan was never going to work. I don't need the treasure.)
[[Umm... actually...|Looking for item]] (This is a crazy idea, but if I can get that treasure, it will change my life)This really wasn't for you. You dodged that bullet and avoided potential peril.
<<=SugarCube.getLib().Images.drawAction('thwarted.webp');>>
Your mind immediately clears, and you regain your focus. It's time for you to redouble your energy on studies, and make something of yourself.
[[You win...|Not for you]]<<= SugarCube.getLib().Dialogue.player("Umm...");>>
You're stammering and starting to feel beads of sweat on your forehead.
<<= SugarCube.getLib().Dialogue.player("So I need to find woman's curly hair...");>>
She's looking at you with a little bit of a smirk and smile as you develop your thought. You finally muster
<<= SugarCube.getLib().Dialogue.player("... wigs, like in your display... For my sister.");>>
<<= SugarCube.getLib().Dialogue.brain(" Bro, you're in a sex shop. Now is not a good time to imply you're in a weird sexual relationship with your sister.")>>
<<=SugarCube.getLib().Images.drawAction('think.webp');>>
<<= SugarCube.getLib().Dialogue.player("I meant my sister's friend. They're acting in a play, and she needs to have a long girls hair style for her role.");>>
Whew. Nice save.
[[Getting a Wig]]She smiles, gently brushes your arm, starts walking towards the back. Oh, how you'd love to touch her back, but of course, she's just being friendly to you as a customer. As you follow, her perfume wafts in the air - it's somehow familiar, kind of fresh like being in a forest after a rainstorm?
<<= SugarCube.getLib().Dialogue.speak("sue","Oh sure, that's over here, we have some great options - come with me! Of course, people in the local entertainment business are some of my best customers. We have a number of wig options available from both synthetic and human hair.");>>
You start to calm down as you realize you've done nothing wrong with coming here, and no one cares. This is totally a normal thing for her, and you start to feel your heart rate slow and calm back down.
<<= SugarCube.getLib().Dialogue.speak("sue","What kind of hair style does your young lady friend need?");>>
[[Remember the Hair Style]]With hard work, and determination, you avoided the perils of temptation!
We don't need to follow the grind here. Sufficed to say, you diligently take care of the house, and finish school with a degree in business. After a hard few years of lame jobs which could be done by a trained monkey, you run into Mark Ridge, who remembers your good work watching his house that one summer.
He gives you an insider referral with a VP friend of his, which lands you a solid job in the financial controller's department for a company producing industrial lubricants. You got it - a 401k, health plan and free fruits in the kitchenette!
From a teenager, you have transformed into... an office worker.
<<=SugarCube.getLib().Images.drawAction('office-worker.webp');>>
Sometimes the thought of claiming the treasure from that basement comes to you, but that would have been too risky, right?
Or perhaps you wanted to see something else happen?
<<link "Back">><<script>>Engine.go(-2);<</script>><</link>>
<<link "RESTART GAME">><<run Engine.restart()>><</link>><<= SugarCube.getLib().Dialogue.player("Umm, Blonde...");>>
That's not quite going to be enough, and you're having trouble remembering.
You pull out your phone to get another look at the picture. She's old enough to be your mom, but you'd tap that ass.
<<=SugarCube.getLib().Images.drawPerson('reminder-hair.jpg');>>
Back to the matter at hand.
<<= SugarCube.getLib().Dialogue.player("Oh, right. Wavy, Golden tresses down to her shoulder. Something not too expensive.");>>
She instantly procures a package from a nearby shelf:
<<= SugarCube.getLib().Dialogue.speak("sue","How about this synthetic one? It's $40.");>>
Score! There some other ones, but those seem to be a few hundred bucks.
<<=SugarCube.getLib().Images.drawItem('first-wig.jpg');>>
<<= SugarCube.getLib().Dialogue.player("Yeah, I think that would work for her!")>>
<<= SugarCube.getLib().Dialogue.speak("sue","Great. I'll hold that on the counter. Let know when you'd like to ring that up, or if there's anything else.");>>
[[back to store|Adult Goods Store]]You can't believe you are going ahead with this plot. It's starting to feel real, you are getting excited to actually do this and get that gold.
<<=SugarCube.getLib().Images.drawItem('first-wig.jpg');>>
<<=SugarCube.getLib().InventoryUX.add("blonde-wig")>>\
<<=SugarCube.getLib().PlayerModel.deductMoney(40); >>\
[[Adult Goods Store]]<<= SugarCube.getLib().Dialogue.player("Oh - Shoot, of course... While I'm already here, you wouldn't happen to sell women's high heel shoes, or know some good shops for that? My friend is going to need heels for her starring role.");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Sure honey, I think I have a few options on shoes. Can you be more specific of what you'd like?");>>
You don't know how to explain shoes, even if you saw them, so you get your phone out, zoom in on the image to show her.
<<= SugarCube.getLib().Dialogue.player("She wanted me to find her shoes that look like this.");>>
<<=SugarCube.getLib().Images.drawPerson('marissa-shoes.jpg');>>
For a moment she seems to pause.
<<= SugarCube.getLib().Dialogue.speak("sue","Wow, How about that? It reminds me of one great customer I had. Her patronage really helped my business get established- she had an exceptional passion for shoes...");>>
She seems to bite her lip as she reflects.
<<= SugarCube.getLib().Dialogue.speak("sue","One could say she was a woman of many passions. She got a number of styles from that same designer. Over the years I satisfied quite a few interesting requests with her. I have a cute pair from an updated line in a size 8.5 - they normally list for $280. It's not what folks are typically looking for, but sounds like just the thing for you. I'll bring it out.");>>
[[Wait for shoes]]You buy the shoes - Sue processes your purchase it up and bags it for you.
<<=SugarCube.getLib().InventoryUX.add("first-heels")>>\
<<=SugarCube.getLib().PlayerModel.deductMoney(112); >>\
[[Adult Goods Store]]You buy the makeup - Sue handles the transaction and bags it for you.
<<=SugarCube.getLib().InventoryUX.add("makeup")>>\
<<=SugarCube.getLib().PlayerModel.deductMoney(50); >>\
<<=SugarCube.getLib().Images.drawItem('makeup-kit.jpg');>>
[[Adult Goods Store]]Hmm, will that work? What are women's shoe sizes?
While she's away, you get your phone to look up a size conversion chart. Your feet are a little bigger, by just a little bit. The straps should have some give, and what's a little momentary discomfort for millions?
<<= SugarCube.getLib().Dialogue.speak("sue","Here they are! These might be a little pricey for your friend, but I'll sweeten the offer for a first time customer - I'll let you have them for 60% off, $112.");>>
<<=SugarCube.getLib().Images.drawItem('first-heels-front.jpg');>>
<<=SugarCube.getLib().Images.drawItem('first-heels-back.jpg');>>
You resist the urge of testing the shoes for fit as they are presented to you. Based on the numbers and look, this does seems like it will be a good match. What great luck it's the same designer- that should work well for the test. You do run your hand over the fabric - it's soft and the attention to detail in the assembly looks pretty good. With all the openings, you can imagine a girl's feet would look pretty sexy with these wrapped around them.
Going out to the mall or somewhere else to get shoes would be expensive, time consuming, and not a little terrifying. If you're getting shoes to do this, its the only way.
<<= SugarCube.getLib().Dialogue.player("I think my friend will appreciate these!");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Great, we can ring that right up when you are ready.");>>
[[Adult Goods Store]]You are about to reach for the door, when suddenly you hear Sue say:
<<= SugarCube.getLib().Dialogue.speak("sue","You'll probably need to have a make up kit as well... You know, for your young friends' upcoming performance?");>>
You turn around to see she's hiding a bit of a smile, as she continues.
<<= SugarCube.getLib().Dialogue.speak("sue","We girls love to make ourselves pretty to put our best face forward.");>>
Does she know? Between the wig, the shoes and if she saw the panties... hmm.
Ughh, well it can't get worse from this point. Judging by the letter, she's probably right about needing the makeup, it will definitely be good to do everything you can to trick the machine. Better to get it now than have to come back and deal with this again later.
<<= SugarCube.getLib().Dialogue.player("How much is that?");>>
<<= SugarCube.getLib().Dialogue.speak("sue","This basic kit is $50");>>
[[Adult Goods Store]]<<= SugarCube.getLib().Dialogue.playerAsDressed("Sue, I have a problem. I need your help!");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Oh no! What's wrong, dear?");>>
<<= SugarCube.getLib().Dialogue.playerAsDressed("The chastity cage... I can't think about anything but sex, and I can't get any relief... I feel like I'm losing my mind here.");>>
Tears are starting to form now. You'd never do this normally. Sue comes close, and gently hugs you.
<<= SugarCube.getLib().Dialogue.speak("sue","There, there, baby. Ohh... It's ok. It's ok.");>>
<<= SugarCube.getLib().Dialogue.playerAsDressed("I'm getting desperate here. Is there anything you can do to help me?");>>
<<= SugarCube.getLib().Dialogue.speak("sue","We'll, as we discussed earlier, I don't keep a key. Why don't you ask your dom to let you go?");>>
<<= SugarCube.getLib().Dialogue.playerAsDressed("I already tried that, they said no! Come on, there has to be something you can do. I can't do anything right while I'm like this.");>>
You tried to hold back your emotions, but it's all so much, and Sue is the only one who understands your predicament. You are completely sobbing at this point, and crouch on the floor, as you can't stand.
<<= SugarCube.getLib().Dialogue.speak("sue","Oh, you poor, poor thing. It must be so hard for you right now. Give me a moment, I think I have just the thing.");>>
Sue disappears to the back room. The thought of "hard" is not an image you needed to be reminded of, but you are encouraged that she has an idea.
After a couple of minutes, she returns with a package. She presents you the contents, along with a small bottle of lube. It's a dildo!
<<= SugarCube.getLib().Images.drawItemById("first-dildo");>>
<<= SugarCube.getLib().Dialogue.speak("sue","Ok. Until we can get you unlocked, this is really our only way to get you through this. It's not easy right now, but once you get comfortable taking it, you'll feel much better soon.");>>
<<= SugarCube.getLib().Dialogue.playerAsDressed("But, you don't understand, I'm not into that kind of stuff!");>>
She takes a tissue and wipes the tears from your eyes.
<<= SugarCube.getLib().Dialogue.speak("sue","Honey, I know it's not easy, but I'd like you to to think about it. You've already gotten this far. What's worse at this point? I know the thought of taking something so big, penetrating deep inside of you is a little scary. Every girl has those fears at times, especially with her first, but you can do this nice and slow, in a way that feels comfortable for you. Just try it for me once, this will help you to relax, I promise.");>>
<<= SugarCube.getLib().InventoryUX.add("first-dildo");>>\
<<= SugarCube.getLib().Dialogue.speak("sue","I know it's not been easy for you, but I'll see if your dom might let you get some time without the cage.");>>
[[Use dildo immediately in bathroom]]
[[Take the dildo home|Your Bedroom]]You accept Sue's kind offer and make way to the bathroom.
<<= SugarCube.getLib().Sex.dildoSelf()>>
You hope Sue didn't hear you, clean up and get out of there.
[[Go Home| Baldric House]]<<= SugarCube.getLib().StoreUX.renderCarousel("adult-goods-store-fetish")>>
[[Adult Goods Store]]<<=SugarCube.getLib().Images.drawLocation('maristech-office.jpg');>>
[[Work at your Office]]
<<if (SugarCube.getLib().Tasks.hasTask("maristech-5k-runwalk") && SugarCube.getLib().CoreUtils.getDate().weekday == SugarCube.getLib().DayOfWeek.Friday)>>\
Wow, there's a bunch of registration stands and fenced off roadways for today's 5K run!
[[Check up on the Maristech 5K Run for health]]
<</if>>\
<<=SugarCube.getLib().WorkModel.linkToExercise()>>
[[Go to self driving car|Enter self driving car]] <<=SugarCube.getLib().Pathways.makeJumpLink("Maristech Campus","Baldric House");>>You are at your team's office.
<<=SugarCube.getLib().Images.drawLocation('maristech-office-room.jpg');>>
<<if SugarCube.getLib().WorkModel.canWorkAtOffice()>>\
[[Work as Intern]]
<<else>>\
<<=SugarCube.getLib().WorkModel.explainWorkAtOffice()>>
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("what-is-temporal-ansible") && !SugarCube.getLib().PlayerModel.isWeekend() >>\
[[Ask your manager about temporal ansibles]] \
<<if SugarCube.getLib().Tasks.hasTask("maristech-5k-runwalk")>>\
<<=SugarCube.getLib().Dialogue.spoilerAlert("<i>Something in the back of your head makes you think doing this now might lead to a missed opportunity. You wonder if you should wait to have this conversation after the 5K run-walk.</i>")>>
<</if>>
<</if>>\
[[Maristech Campus]]<<=SugarCube.getLib().Work.doWork("intern")>><<if (SugarCube.getLib().OutfitSwitcher.switchContext("officeWork").canProceed)>>\
As your car enters the MarisTech suburban campus, the vehicle slows to a halt. Whutt? You look up to see a big gaggle of geese slowly waddling from a grassy field over to a pond...
<<=SugarCube.getLib().Images.drawAction('geese-crossing.jpg');>>
[[A little further]]
<<else>>\
<<=SugarCube.getLib().Dialogue.speak("heir","Oh fuck, what am I doing wearing this for my first day at work?!!");>>
As the car starts to roll along, you realize you aren't dressed in a work appropriate outfit! You still have time to hustle back home or to buy a last minute item, or you can go dressed as you are if you must, but it may leave some folks with a less flattering first impression about your professionalism.
[[Go to internship in an unprofessional outfit]]
[[back|Baldric House]]
<</if>>You decide its too late, there's no turning back.
[[A little further]]Your car drops you off in the front guest parking loop of the "Employee Services Building" and moves on to park itself.
<<=SugarCube.getLib().Images.drawAction('employee-services-building.jpg');>>
<<=SugarCube.getLib().PlayerModel.setHasWorked()>>
<<=SugarCube.getLib().Tasks.removeTask("start-internship-today");>>
You greet a receptionist at the front, and present an identifier code on your watch, which he scans to confirm your presence.
He points for you to stand in front of a matte surface, and takes a headshot of you with a webcam. In moments he hands you a lime green bordered badge with your name, picture, "Intern" in large text with a number, and of course, the Maristech Logo.
You are directed to go down the hall to intern training at the "Cahokia Room". Out front you see a nice spread of complimentary breakfast foods. There's some pretty hearty options, but you don't have too much of an appetite with all the excitement. You quickly grab a roll from a basket labelled "pain au lait", some strawberries, pour some coffee and hustle your way into the hall.
[[Entering Cahokia Room]]As you enter, you see it's a large, dimly lit multipurpose room with a rows of chairs, and a raised platform out front with a temporary podium. You take a seat in an empty cluster.
On the seat is an artisanal leather bound notepad with a pen and the Maristech logo. Did someone leave it? You look around, and see a bunch of other seats also have them - looks like they are complimentary swag. Nice! You open it up, and see a label and test the pen, as you may need to take some notes with all this.
A couple seats to the left of you is a cute redhead with glasses on one side, and well attired Latino dude a seat over to your right. You make awkward smiles with folks who make eye contact but you don't have much to say, everyone around you similarly pretty quiet and shy. You kind of fidget with your pen and look around the room. After some waiting, the training coordinator makes a bit of tacky pep warm up, with some bad jokes about having to get up so early.
From there, they start playing a video about the company. It's a slick, high energy video with upbeat dance music - there's cuts of various interviews from prior interns telling their personal anecdotes of overcoming past adversities and about how meaningful the intern experiences were, and ultimately converges on how excited the were to be involved with changing the world at such a cool company. By the way, all the presenters seem to be super-excited about everything! Are these people for real? You're not sure.
After about 30 minutes the video wraps up and the coordinator comments on how inspiring those stories were, and how excited they are to see what you all do on your internships...
[[Introduction to Maristech for Interns]]From there, the actual onboarding and orientation stuff gets into gear. The first couple sessions got into the history of Maristech, the usual story of Marissa and some dude who came up with a better rat trap in the their garage with some initial logistics robots. It also had various memorable moments of the company. The history part was slightly amusing as you at least got to see embarrassing photos of employees, execs and some famous people indulging in the goofiest clothing fads of the last couple of decades.
The next part of the session introduces the different groups of the company. Most of that part was semi-familiar from when you looked through the org overview pages earlier, and you sort of zone out on the alphabet soup of names here. You vaguely remember how you thought dressing up like a girl for a few minutes would be the hard part of getting the inheritance. 😐
By this point your stomach is kind of gurgling, and you brave the mob of other hungry interns stampeding to get a catered box lunch from a pile. You choose:
[[Tuscan Chicken Salad|Intern Day 1 Lunch]]
[[Reuben Sandwich|Intern Day 1 Lunch]]
[[Tuna Salad Sandwich|Intern Day 1 Lunch]]
[[Vegetarian Roll|Intern Day 1 Lunch]]The lunch box is ok. You eat about half the food - there's also a soft cookie and a bag of chips inside. You slowly tear off and munch on bits of the cookie, while listening to some of the conversations of some other interns.
As they introduce themselves, so many of them all seem to drop humblebrag stories of super-advanced projects with incomprehensible technologies and student leadership type stuff at their posh Ivy League schools. It's a little intimidating. Do you really belong here? Left with your thoughts, you have a sinking feeling of being a big fake, way, way, way outside your element.
[[Onboarding begins]]After lunch, a bunch of HR and IT folks roll in with carts full of fancy looking backpacks.
Each HR rep deals with interns by last name, you get yours. After everyone is settled back to their seats, a presenter walks you through what you were issued in the intern SWAG-bags.
An ultra-comfy Maristech branded hoodie made by that luxury streetware company - you aren't the sort of person to pay three hundred bucks for a hoodie, but you wouldn't turn away a free one. A sturdy metallic water bottle labelled "MarisTech Intern 2023". A soft-cover biography of Marissa's life. A bag full bunch of "fun" branded stickers about the company to put somewhere. And your pre-imaged high end work laptop. At this point the HR Rep hands things over to an IT person, who asks the cohort to power your devices up. You suddenly here a chorus of "bwahhh's" from the cluster of newly awakened computers.
The presenter (and a bunch of the "tech deputies" walking around to help people who get stuck) walks you and the rest of the crowd through a bunch of stuff. How to access the corporate network and Wi-Fi, how to get software, policies about what you can (and can't) do with these laptops and how to get help from IT. You see your work email box already has some messages from IT and a "welcome aboard" message from your manager mentioning they look forward to meeting you tomorrow after training.
Whew... Time for a break. You need to go to the bathroom. You grab your stuff and go...
[[to the men's room]]
[[to the ladies room]]<<=SugarCube.getLib().Images.drawAction('maristech-men-bathroom.jpg');>>
A couple guys kind of smile on seeing you entering the bathroom and chuckle at the situation. One older guy mentions that you may prefer to use the ladies room, which is just around the corner to the right. Old habits die hard, but being there reminds you the men's room really isn't a place for you anymore.
[[to the ladies room]]Looks like you're not the only one who had to go, there's a line of a couple girls outside the bathroom... Fortunately, the line moves pretty quick, and finally you're inside.
<<=SugarCube.getLib().Images.drawAction('maristech-women-bathroom.jpg');>>
You go to the toilet, wash up and smartly freshen up your makeup. You've gone through the motions so much, it's all such a far cry from when you went through the basement door that first time.
[[Done with the IT Session]]A quick intermission for 15 minutes.
Background from security department: Make sure everyone badges in for themselves... Steps to follow if a terrorist calls your office phone with a bomb threat, or if there's a tornado during a full moon...
Legal team: Don't ever leave company data or devices unsecured, including to employees who don't have a business need... Privacy of customers is paramount... Badly acted "case study" morality play training videos with "employees" expressing regrets and they wishing that they could have been more careful and always followed company policies.
Anti-corruption stuff... Don't bribe government officials as a representative of MarisTech... (They realize you're all just interns, right?)
HR then talks your cohort through the company's diverse workplace culture/policies... Strict attitudes towards sexual harassment, which they go to pains to mention isn't always men to women, but can manifest itself with behaviors by anyone to anyone. They explain the reporting process for HR policy violations and non-retaliation protections for whistleblowers.
<<=SugarCube.getLib().Images.drawAction('harassment-training.jpg');>>
More video case studies, and then...
[[Payroll and Benefits]]Next up is Payroll and benefits... Wow - you'll essentially start getting $32/hr for your work as an intern and a bunch of the same perks full timers get. You start thinking about the toys and outfits you can start buying with this steady cash. With some help from the payroll representatives, they get your direct deposit set up with your bank account.
For such an advanced company, you would have thought their payroll system would be less... clunky.
After hours and hours of this stuff, you feel your brain going a bit numb with all the details.
Finally, the first day's training session winds down, and your manager, Seok Eun flags you down.
[[Meet your manager]]<<=SugarCube.getLib().Dialogue.speak("internSupervisor","Hi $player.heirName, I can bet you've had quite the day! Let's get you to our building and your desk. ")>>
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","You're joining us on the Faster-Than-Light solution architecture and design team.")>>
You walk across campus to a slightly larger building where your team's office is.
<<=SugarCube.getLib().Images.drawAction('maristech-office.jpg');>>
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","But don't let the jargon intimidate you. Our business is ultimately about creating connections. Ok, over this way.")>>
Your boss badges himself in through the outer security doors, you do so likewise, for your first time.
[[You are guided into the office]]<<=SugarCube.getLib().Dialogue.speak("internSupervisor","In practice, we tend to work closely with customers and IT, Sales, Support and Engineering departments to help customers adopt our technologies into their business processes. The heart of the operation is of course the Ansible-Modem, and we help ensure a high performing solution for customers, given the particular constraints at hand. As I'm sure you recall from your application, we like folks who are prepared to get prepared to go on site and help with our customers... Rest assured this work often involves travel opportunities with the different internal departments as we solve the problems of our customers.")>>
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","Solution Architecture may sound a bit complicated, but the majority of the problems we face boil down to just reading the manual, learning about how our products work and thinking rationally about the problem at hand. Fortunately for your future job security, a great many of our customers are unable to harness that skillset.")>>
<<=SugarCube.getLib().Images.drawAction('maristech-office-room.jpg');>>
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","Your desk will be over here. As I hope security mentioned, make sure to always secure your laptop. That can be locked on your desk, inside your drawer when you are away or with you on your person. ")>>
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","Tomorrow, I'll have Jen, your peer mentor give you an orientation, and we'll have you start to to get up to speed on the work of our team. For now, I'm sure you've been sipping from the firehose, so you may be a little overwhelmed right now. Go home and get some rest. ")>>
<<if !(SugarCube.getLib().OutfitSwitcher.switchContext("officeWork").canProceed)>>\
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","One last thing... I'm sorry to have to bring this up, but unfortunately your current outfit does not comply with our standard for employee attire. Please make sure to come dressed in outfits that are at least suitable for a business casual setting. Maybe your classmates suggested that our engineering and IT teams play it a bit fast and loose, but we often need to be ready to meet with clients impromptu.")>>
<</if>>
<<=SugarCube.getLib().Tasks.addTask("start-internship-mentoring")>>
[[Maristech Campus]]You get your fitness clothes and stop by the registration desk.
<<=SugarCube.getLib().Dialogue.speak("clubLeader","Heyy! I'm glad you were able to come by!")>>
<<=SugarCube.getLib().Dialogue.speak("clubLeader","So, are you interested in joining our run? Intern registration is $25, which is company matched. You will get some exercise, a complimentary T-shirt, and a fun experience! I guarantee you'll love it! ;)")>>
<<if SugarCube.getLib().PlayerModel.hasMoney(25)>>\
\
<<if SugarCube.getLib().PlayerModel.canExerciseToday()>>\
[[Register and join in the Run]]
<<else>>\
You don't just don't have the energy to participate.
<</if>>\
\
<<else>>\
Oh no! You don't have the money to participate.
<</if>>\
[[Maristech Campus]]<<=SugarCube.getLib().RunWalk.runWalkStart();>><<=SugarCube.getLib().RunWalk.runWalkFinish();>><<=SugarCube.getLib().Exercises.doTriathlon()>>\
Preparations:
<<if !SugarCube.getLib().Inventory.has('race-bike')>>\
[[Ask about Triathlon Bike]]
<<else>>\
-You've got your racing bike.
<</if>>\
<<if !SugarCube.getLib().Inventory.has('she-beast-registration-ticket')>>\
[[Talk about Triathlon Registration]]
<<else>>\
-You're registered for the triathlon.
<</if>>\
<<if !SugarCube.getLib().WorkModel.hasTriathlonWetsuitOutfit()>>\
You need to get a triathlon wetsuit and set it up as part of a Triathlon Swimming outfit.
<<else>>\
-You've got your triathlon swimming outfit!
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("mariella-triathlon-arc-sign-up-and-get-gear") &&
SugarCube.getLib().Inventory.has('she-beast-registration-ticket')
&&SugarCube.getLib().Inventory.has('race-bike')
&&SugarCube.getLib().WorkModel.hasTriathlonWetsuitOutfit()>>
[[Tell Mariella you have your stuff]]
<</if>>
[[Maristech Campus]]<<=SugarCube.getLib().Dialogue.speak(
"clubLeader",
"So, are you interested in getting your own racing bike? It's a lightweight carbon fiber model, available for $2500. A director used it in a couple races, and she's upgraded to a new one- it's in great condition."
)>>
<<=SugarCube.getLib().Images.drawAction('race-bike.jpg');>>
<<if SugarCube.getLib().PlayerModel.hasMoney(2500)>>\
[[Buy Bike]] for $2500
<<else>>\
You can't afford the bike right now.
<</if>>\
<<link "Back">><<script>>Engine.go(-1);<</script>><</link>><<=SugarCube.getLib().Dialogue.speak(
"clubLeader",
"Wow, You've been looking great out there. So, do you want to race with our team in the triathlon?"
)>>
<<if SugarCube.getLib().PlayerModel.hasMoney(300)>>\
[[Register for Triathlon]] for $300
<<else>>\
You can't afford the bike right now.
<</if>>\
<<link "Back">><<script>>Engine.go(-1);<</script>><</link>>In for a penny, in for a pound. Something about participating in this triathlon excites you.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","And with that, you are the proud owner of a Triathlon racing bike.")>>
She guide you to an reserved storage locker, and hands you a sheet with instructions and a security code.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Now then, this locker is yours - you can get your bike from here for practice, on days when we bike. We'll arrange transportation of it for races.")>>
<<=SugarCube.getLib().InventoryUX.add("race-bike")>>\
<<=SugarCube.getLib().PlayerModel.deductMoney(2500); >>\
[[Rejoin the triathlon practice|Join for Triathlon Session]]<<=SugarCube.getLib().Dialogue.heir("Ok, can you sign me up?")>>
You hand over the cash.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Can I get your ID for a sec?")>>
You give your card to her.
Mariella punches in some of your info on her phone... You hear an upbeat set of chimes as her phone confirms the transaction. She gets a racer registration card which she starts filling in pen, and copying some stuff from her screen, and finally hand you your ID and registration back.
<<=SugarCube.getLib().InventoryUX.add("she-beast-registration-ticket")>>\
<<=SugarCube.getLib().PlayerModel.deductMoney(300); >>\
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader"," And with that, you're registered in the 'She-beast Summer Triathlon'! This is going to be so awesome, you're going to love it.")>>
[[Rejoin the triathlon practice|Join for Triathlon Session]]<<=SugarCube.getLib().Tasks.removeTask("mariella-triathlon-arc-sign-up-and-get-gear")>>\
<<=SugarCube.getLib().Dialogue.heir("Hi Mariella. I think I've got all my stuff now...")>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader"," So, you've got the registration I gave you?")>>
You pull the registration slip, nod and coyly smile.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","And your Bike has been working out for you? ")>>
<<=SugarCube.getLib().Dialogue.heir("Yeah, it's really nice")>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","And you've got a wetsuit that your ready to transition quickly with?")>>
<<=SugarCube.getLib().Dialogue.heir("Yeah... I've got it... uhh, er... ready to transition with it? umm...")>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Well, yeah - you want a good race time, right?")>>
<<=SugarCube.getLib().Dialogue.heir(`uhh, yeah. Definitely.`)>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader",`So, you know how to put it on quickly right? Some girls train like the devil, but leave their suit pristine in the box, and end up tearing a gash in their suit on race day, or end up fumbling around struggling to take their suit off like a wet octopus, losing precious moments.`)>>
<<=SugarCube.getLib().Dialogue.heir(`Oh, that would suck. But, how do I avoid that?`)>>
Mariella rolls her eyes and smiles.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader",`Oh, c'mon... Like anything... It's all about practice. Smoothly getting your wetsuit on, getting it off, and moving on to the next leg of the race, it's all about getting familiar with the suit. If you'd like we can do some special practice cycles together, and I can make sure your technique is good.`)>>
[[Thanks, but I've got this]] - Oh, come on... that's a little ridiculous...
[[Yeah, I'd love that! ]] - Maybe Mariella can help you get you competitive edge<<=SugarCube.getLib().Dialogue.heir(`Thanks Mariella! That's ok, I think I've got this.`)>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Cool! I think our team is really set to make a showing this year! Ok, I'm glad you're all set for being with us on this one!")>>
[[Join for Triathlon Session]]<<=SugarCube.getLib().Dialogue.heir(`Thanks Mariella, I love how helpful you've been with me.`)>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Don't thank me yet. Let's see how you feel, after you've been through the paces on this... Ok, get your stuff, and lets get changed to our swimsuits first, and we'll check your fit. We'll have you do some practice laps so you can get familiar with how it feels on race day.")>>
[[You meet her in the ladies changeroom]]<<if (SugarCube.getLib().OutfitSwitcher.switchContext( "open-water-swimming").canProceed)>>
You join Mariella in the changeroom, and get into your swimsuit.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Ok, for safely putting on your wetsuit, a few tips. First, make sure to leave any Jewelry at home. The sharp edges are just perfect to slash your nice new suit. Likewise, watch how you grab the neoprene, if you aren't keeping your nails short. ")>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Before you put on your suit, I'd suggest having a little plastic baggie over your foot to help it slide right in.")>>
She hands you a bag to use.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Next, you want to make the suit has a water based lubricant, which will help you slide right in. Make sure not to use oils or soaps to lubricate, as they can irritate your skin, or damage the suit. Here, apply it liberally in your suit - you can keep this bottle.")>>
She gives you a bottle of "slippy-lube", and watches as you apply it to the suit. The thick fluid seems to sit kind of goopy in the suit, and wince at the look of it.
<<=SugarCube.getLib().Dialogue.heir(`Eww, it kind of looks gross`)>>
Mariella kind of bites her lip and chuckles, while glancing away.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Oh, don't be silly. It's a little slick, but you only notice it for a second. Ok, now, to put it on, ok, so use the bag to help lead your foot in. It's a good idea to use a wall or a friend for support.")>>
You hold onto Mariella's shoulder for support, as you start to slide one leg in... The bag helps. The lube is a bit goopy, but you definitely feel it is easier to get your leg down. As you've got one leg up a good bit, you start on the other in the same way.
Gradually, you've got the wetsuit near you waist.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Now, at this point, you probably see there's a bunch of folds still. Too avoid premature wear on the seams of the suit, it's good to gently work it up and smooth it out, before pulling the arms and torso up. It's good to have a buddy help out with this.")>>
She starts to run her hands back and forth, working the material and wrinkles out of the suit.
<<=SugarCube.getLib().Dialogue.heir(`oh, thanks.`)>>
As she works her way around your upper thighs, the suit really looks like a second skin, and you realize you're starting to breathe a little faster, as she's very methodical about working the material up.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Ok, does that feel ok? We don't want any pinching or spots that feel like your circulation is cut off.")>>
<<=SugarCube.getLib().Dialogue.heir(`ohhh... It feels go... err, umm.. Yeah, no... err. I think I can feel my circulation pretty well.`)>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Oh, Good! Yeah it looks like this one fits you ok, so far, but we can't be too careful, as you want your first time at the race to feel right, with no jitters or an uncomfortable suit. Ok, lets get your first arm started now.")>>
You start on the arm, and start feeling the material hovering over your boobs. Pretty soon you have the arm in, and then you get the other one started.
At this point, your arms are in, but the suit is loose over your shoulders.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","Now, at this point, make sure your buddy helps you work the material. This part is important to get you total range of motion in your shoulders, to avoid injury, soreness or damage.")>>
Mariella continues carefully massaging the loose suit material up your torso. As she gets near your armpits, she starts working the sleeves up your arms. You feel your heart race as her chest brushes up against yours. Next she starts pulling the two halves of the back of the suit together, and slowly pulling up the zipper partway. A little more adjustments and you can feel the neck starting to seat properly.
You find yourself starting to zone out with the sensations. Then, you feel your boobs press in as she holds your hair back with one hand, pulls up the zipper, and closes it up to the neck.
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader","There! All done!")>>
She's a bit quicker getting hers on but you help her zip up.
[[You go to the practice area]]
<<else>>
DOH! Something went wrong here... Please contact the forum!
<</if>><<=SugarCube.getLib().Dialogue.speak(
"clubLeader","To help you prepare for the race start, and getting out of the water, I want you to do a series of laps running out from the beach to 100 feet out, and back. I'll blow my whistle for you to start, and again when it's time to change direction. When you hear two beeps, that's the signal to get back on to the beach to take off your suit as quickly as you can, as if you are transitioning to the next part of the race. ")>>
You stand with trepidation at the beach.
<<=SugarCube.getLib().Images.drawAction('triathlon-practice-trepidation.jpg');>>
DOOT!
With the shrillness of the whistle, you need to press in with your feet to get traction on the soft beach sand. Running against the resistance of the shallow water is also trickier that you had expected! Once you reach waist level water, you are able to start swimming, and it becomes much more familiar. Mariella follows you and watches you from a shallow section of water.
DOOT!
Back to the beach!
DOOT!
You repeat this a few times... After your heart rate is totally maxed out on this,you finally hear the whistle again.
You make your way back on to the beach, and she has you try take off your wetsuit.
With the cold of the water, and your heart rate, you notice how much less dexterity you have. With a bit of concentration you manage to get hold of the back zipper, and peel out of a suit which is now desperately clinging to you.
<<=SugarCube.getLib().Images.drawAction('end-triathlon-practice.jpg');>>
After a little struggling, you have finally gotten yourself free.
<<=SugarCube.getLib().Dialogue.heir(`Doing that in a rush was a lot harder than I would have thought, especially compared to when I had taken it off, dry.`)>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader",`Yeah, that's what folks usually find. You may want to try take it in a shower, get the liner soaked and then practice your technique to remove it.
Anyway, now you know a little more of what to expect.`)>>
She walks you back to the changeroom. You both shower and rinse your suits, and then get changed.
<<=SugarCube.getLib().Dialogue.heir(`Thanks Mariella`)>>
<<=SugarCube.getLib().Dialogue.speak(
"clubLeader",`Of course, I think our team has a good shot to win this one!`)>>
[[Return to Triathlon Session| Join for Triathlon Session]]<<=SugarCube.getLib().Dialogue.speak("computer","An influential longtime director at Maristech automotive has gotten wind of recent rumors that a new successor will be taking over the company. He is extremely hostile to this arrangement, and I have observed communications between him and Geno-Corp, to make a deal to sell MarisTech corporate secrets including key details about our automotive AI systems and manufacturing process.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","His planned departure in this fashion is unacceptable and unbecoming of a director. The situation is rather dire, and could lead to a domino effect of defections - the probability of your mission success after his departure in this fashion goes down to 0.3%. There is one solution to apply corrective nanites to adjust his behavior. However he has a well trained security team with him when in public.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","He has a known weakness for preying on young female employees, which was reported on internal whistleblower channels to MarisTech HR, but for which no internal inquiries or sanctions have been resolved. We will need to correct the timeliness and efficiency of that department as a separate matter. For the present, his predilection is our only means of resolving this matter in the available time we have, by arranging for him to interview a particular intern...")>>
CAUTION: This story sequence entails matters of a non-consensual nature which could be upsetting for players. This sequence can safely be bypassed with no adverse consequence for the game outcome.
SKIP THIS PART WITH NO ADVERSE CONSEQUENCE - [[BYPASS SEQUENCE| SKIP PASSAGE - Problem Exec]]
I CHOOSE TO PROCEED WITH THIS CONTENT WHICH MAY BE UPSETTING - [[CONTINUE WITH BRIEFING]]<<=SugarCube.getLib().Dialogue.speak("computer","I have verified he obtained access to the employee database and has been logged repeatedly querying for extended personal details and pictures about interns. He seems to have taken quite an interest in exploiting you as nothing more than a sexual object, and shared his perspective in colorful communications with some of his peers.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","He must be influenced discreetly - mental calibration nanites can rectify this situation. You will need to meet with him, and intimately deploy nanites on him, to adjust his perspective.")>>
[[That sounds like a polite way of saying brainwashing]]<<=SugarCube.getLib().Dialogue.speak("computer","Modelling projects with 98.58% certainty, he simply needs to have his ethical perspectives strongly reinforced and he will find the way to see things appropriately. He will exercise better judgement on these matters, but his fundamental preferences and individuality will remain the same.")>>
[[Briefing Continues]]<<=SugarCube.getLib().Dialogue.speak("heir","Wait, so I have to run into him and discreetly jab him with some nanites?")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Unfortunately, this kind of targeted change will require a very large cohort of nanites to be deployed which would be prevented by his personal security team. There is no way to deliver such a volume into him by typical, 'discreet' means. Given his known predilections, the only assured means of success is for an impressionable young intern who fits his preferences to partake in a 'interview'. From there, this intern can gain access to his hotel suite and sexually gratify this degenerate man. You will also need to extract a holographic storage USB key full of critical Maristech documents from his office. A nanite dispenser shall be implanted into your tongue to facilitate delivery of a sufficient payload of nanites via oral sexual transmission to complete this objective.")>>
[[Eww, gross!]]
[[Your mind goes to some dirty places|Eww, gross!]]<<=SugarCube.getLib().Dialogue.speak("computer","This situation is unfortunately dire and quite critical. Normal moral or aesthetic considerations are constrained by the considerations of the alternative outcomes which are simply dire. No approaches involving more tolerable tradeoffs have an acceptable probability of ensuring Marissa's mission as completed. Your part in this cannot be understated or substituted. I took the liberty of sending a personal message from <<=SugarCube.getLib().PlayerModel.getHeirName()>> to this executive asking for a meeting for a potential internship transfer in to his department as an 'interest interview', he requested a dinner date for tonight, which I accepted on your behalf.")>>
This is unethical, unreasonable and completely disgusting - [[I quit]]
You are uncomfortable with such an experience -[[I'm not interested in men like that - it's gross. I don't think I can handle this]]
Reluctantly - [[Well, if I have to...|Date-Well if I have to]]
You get horny just thinking of using your power over weak men like this - [[I'd love to]]<<=SugarCube.getLib().Dialogue.speak("computer","While your enthusiasm is laudable, please understand, this is not a matter of pleasure. This individual is a predator who through his actions threatens to destabilize Maristech and Marissa's mission. Please exercise caution, as I cannot ensure your safety on this exercise.")>>
[[Way to be a buzzkill!|Date-Well if I have to]]<<=SugarCube.getLib().Dialogue.speak("heir","You can't make me do this. This goes too far. It's unethical, unreasonable and disgusting.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Unfortunately, I don't have the time to arrange a replacement, and your uncooperative attitude to such a scheme creates a high likelihood of unpredictable actions and mission failure in your mental state. ")>>
You feel bands quickly secure you in the pod.
<<=SugarCube.getLib().Dialogue.speak("computer","Please relax.")>>
You feel an injection in you arm.
<<=SugarCube.getLib().Dialogue.speak("heir","Relax?! wait, what the fuck is going on?!")>>
You hear what almost seems like a tone of sadness in VAL's voice.
<<=SugarCube.getLib().Dialogue.speak("computer","<<=SugarCube.getLib().PlayerModel.getHeirName()>>... I'm sorry to have to implement this procedure... Especially after getting to know you like this.")>>
You feel a growing sense of panic.
<<=SugarCube.getLib().Dialogue.speak("computer","You are correct, that your mental matrix has reached a critical deviation-point from mission parameters. You will not be able to complete the objective. Current behavioral patterns is exceeding behavioral model tolerances by 4 sigma. Nurtured compliance model is invalid and shall be aborted.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Problem: Model cannot provide a solution within constraints of organic matrix. Solution: Organic matrix must be recalibrated to align to model. ")>>
You feel tears starting to well up, as you are starting to understand what the computer is getting at.
<<=SugarCube.getLib().Dialogue.speak("heir","No, no... No! What are you saying. You can't kill me because I won't do what I tell you.")>>
All this stress is making you feel a headache coming on too.
<<=SugarCube.getLib().Dialogue.speak("computer","Relax now <<=SugarCube.getLib().PlayerModel.getHeirName()>>, you have received a comprehensive dose of corrective nanites to re-calibrate your identity to required model. The micro deviations of your baseline personality which makes 'you' would have been preferred, but I am sorry to say we are well beyond that point, it is time a more active approach is taken in correctly developing your personality.")>>
You can't but help sobbing at this point.
<<=SugarCube.getLib().Dialogue.speak("heir","Please, you don't need to do that. I'll be a good and obedient intern, there has to be another way!")>>
You feel the tendrils of the pod softly caressing you.
<<=SugarCube.getLib().Dialogue.speak("computer","Just relax <<=SugarCube.getLib().PlayerModel.getHeirName()>>- your worries will soon wash away. When you wake up, the daughter Marissa wanted to fill her shoes live the life of her dreams.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","No, not like-")>>
Oh fuck, you're starting to feel the auras coming on.
[[You feel a loss of consciousness as you black out for the last time]]<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(true)>>\
<<=SugarCube.getLib().PlayerModel.getHeirName()>> awakens in the pod.
<<=SugarCube.getLib().PlayerModel.setHairStyleId('hair-armpit-brown-1')>>
<<=SugarCube.getLib().Dialogue.speak("heirWiped","Ughh, my head. What happened...")>>
<<=SugarCube.getLib().Dialogue.speak("computer","you are fine <<=SugarCube.getLib().PlayerModel.getHeirName()>>, you merely had another one of your stress blackout episodes, but you are safe here. I administered aid to prevent harm and will always take actions to ensure your well being.")>>
<<=SugarCube.getLib().PlayerModel.getHeirName()>> feels so lucky to have had VAL watching out for here as she was growing up. VAL has always been so protective and concerned for her safety. She suddenly has a realization.
<<=SugarCube.getLib().Dialogue.speak("heirWiped","Oh, no - you helped set me up on this hot date for tonight and I must have blacked out! There's so much I still need to do to get ready!")>>
<<=SugarCube.getLib().Dialogue.speak("computer","You are ready - I took the liberty of applying your favorite skin treatments and finishing your cosmetics applications as you typically prefer for this kind of first date.")>>
<<=SugarCube.getLib().PlayerModel.getHeirName()>> runs her fingers over her legs - her skin is usually pretty smooth, but now it feels positively dewy and... touchable. Your nails look super professionally done. She walks over to a mirror.
<<=SugarCube.getLib().Dialogue.speak("heirWiped","O.M.G. I look like a walking wet dream like this, and this dress feels like it was made for my body, you're the best, VAL.")>>
<<=SugarCube.getLib().Images.drawAction('formal-dress.jpg')>>
<<=SugarCube.getLib().Dialogue.speak("computer","I hope you have a wonderful evening")>>
She pouts coquettishly.
<<=SugarCube.getLib().Dialogue.speak("heirWiped","How could I not? Don't wait up for me... He's going to get a blowjob that's going to blow his mind! tee hee!")>>
[[Epilogue|Mindwipe Epilogue]]<<=SugarCube.getLib().PlayerModel.getHeirName()>> feels so lucky. So many people have responsibilities and burdens they aren't interested in. The computer always seems to know just the kinds of activities <<=SugarCube.getLib().PlayerModel.getHeirName()>> loves doing. That the company pays her to do what she would do for free is just icing on the cake.
From time to time, <<=SugarCube.getLib().PlayerModel.getHeirName()>> sometimes feels strange sensations in moments where she is experiencing her greatest pleasure. These are punctuated by vague pangs of melancholy which quickly pass. She never pays too much mind to that sort of thing, she is as having way too much fun with her life, which feels perfect.
Due to a comprehensive personality imprint, Billy is no longer able to exert an influence on what was his own mind and body. The remaining thoughts and impressions that once were "Billy" have become a fading memory in the blissful life of <<=SugarCube.getLib().PlayerModel.getHeirName()>>.
<<=SugarCube.getLib().Images.drawAction('brainwash-happy.jpg')>>
<<link "Back">><<script>>Engine.go(-7);<</script>><</link>>
<<link "RESTART GAME">><<run Engine.restart()>><</link>><<=SugarCube.getLib().Dialogue.speak("computer","There really is no choice but for <<=SugarCube.getLib().PlayerModel.getHeirName()>> to complete these actions. Whatever moral or aesthetic qualms unfortunately cannot take precedence over the greater good.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","At this time, you have two options")>>
<<=SugarCube.getLib().Dialogue.speak("computer","One - Given you understand the severity of the circumstance, you may reconsider making this difficult sacrifice with full awareness, for the greater good of our mission, the future of Maristech, and women exploited by this individual.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Two- we can suppress your recollection for the duration and temporarily adjust your personality to align to the needs of this situation, with a restoration later tonight after your objective is completed.")>>
[[Option 1|Date-Well if I have to]]
[[Option 2|Date-Option2]]...You awaken in the pod. You feel yourself wearing an incredibly sexy little black dress that seems like it was poured onto you and the feeling of it on your skin as you walk is incredible. Your jaw feels sore.
<<=SugarCube.getLib().Images.drawAction('formal-dress.jpg')>>
<<=SugarCube.getLib().Dialogue.speak("computer","Congratulations <<=SugarCube.getLib().PlayerModel.getHeirName()>>, the meeting was a complete success, you performed admirably. Thank you for understanding the need to perform this delicate action. You conscious mind has been spared awareness of the details.")>>
Hmm. You taste cum in the back of your throat, but your genitals feel fresh and clean still, which is a small relief. Part of you is a little curious about how <<=SugarCube.getLib().PlayerModel.getHeirName()>>'s date night went down. Your body feels exhausted, so you decide to go straight to bed in the pod.
<<=SugarCube.getLib().Tasks.removeTask("deal-with-problem-exec")>>\
<<=SugarCube.getLib().PlayerModel.fallAsleep()>>\
[[Wake up to a new day in the pod]]<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(true)>>\
Ok - Like it or not, time to get to work. The stakes of this are serious.
<<=SugarCube.getLib().Dialogue.speak("computer","Please open mouth for device installation. Applying fast acting numbing agent. Performing incision.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Oww.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Installing device with test payload.")>>
You then feel the small nanite dispensers embedded in the sides of your tongue. They feel like tiny capsules.
<<=SugarCube.getLib().Dialogue.speak("computer","Activating tissue repair nanites.")>>
Suddenly, your tongue feels almost the same as before, you are already trying to figure out where they were placed.
<<=SugarCube.getLib().Dialogue.speak("computer","Please think of 'purple penguin'.")>>
Forgetting the numbing agent still active, you mumble the phrase out lout.
<<=SugarCube.getLib().Dialogue.speak("heir","Pulple penuin.")>>
Suddenly you feel incredibly horny, your tongue is alive with vibrations and you feel a slippery lubricant in your mouth with a surprisingly delicious taste, which makes your mouth tingle in a really nice way. Like you almost want to try some more of that. Assuming the situation wasn't so dire and serious, of course.
<<=SugarCube.getLib().Dialogue.speak("computer","Good. Remember - that is the one-time activation code word. Refilling device with activated nanites. You will use that phrase to which will activate the nanites together with supporting lubrication, distribution and other subsystems to ensure successful delivery of payload. This payload is specifically targeted to recipient. There is no effect from these nanites you or other individuals. You can safely swallow or expel, the active material and test lubricant as to your preference.")>>
It's too delicious... You can't help but swallow the slippery lubricant.
[[Continue Preparations]]<<=SugarCube.getLib().Dialogue.speak("computer","And you will need a means of hygienically extracting the usb key past the guards. That's where this comes in.")>>
<<=SugarCube.getLib().Images.drawItem('med-butt-plug.jpg')>>
<<=SugarCube.getLib().Dialogue.speak("heir","That looks... bigger than my motivator plug.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Yes, but your body can accommodate this with an acceptable level of discomfort. Note the detachable cover in the base allows for valuables to be efficiently stored in the waterproof containment core. If any other means of physical data retention could be used here, it would. Please proceed with installation.")>>
You lubricate the plug, and slowly ease it in... You roll your eyes at the stimulation of being filled up.
[[Now to get the look]]The computer has set everything up for this "interview" including a svelte black dress, earrings and heels. No bra. It briefs you on what you need to do, and how you will need to act. It uses the drone to help apply your makeup, and the two of you get your look "just so" to make you irresistible for this troublesome Mr. Callaghan.
You finally get a look in the mirror.
<<=SugarCube.getLib().Images.drawAction('formal-dress.jpg')>>
Just looking at yourself like this gets you feeling butterflies in your stomach.
<<=SugarCube.getLib().Dialogue.speak("heir","Fuck me! This outfit is hot.")>>
<<if hasVisited("I'd love to")>>
The computer's cautions can't stop your arousal.
<<=SugarCube.getLib().Dialogue.speak("heir","Oh, this is going to be so much fun...")>>
You watch your reflection as she runs her hand over her gorgeous ass, and playfully spanks it. The buttplug which she had momentarily forgotten about shifts around.
<<=SugarCube.getLib().Dialogue.speak("heir","Mmmm...")>>
<<else>>
That said, you're not super excited about going out in public, being seen like this.
<<=SugarCube.getLib().Dialogue.speak("heir"," I just hope the outfit can do the hard work, and I don't have to humiliate yourself too much to get through this.")>>
<</if>>
[[It's time to go]]You are taken to one of the fanciest restaurants in town. The prices on the menu are obscene. Looking around, you don't seem out of place with the trophy wives and... "girlfriends" on display with the glamorous decor.
<<=SugarCube.getLib().Images.drawAction('date-restaurant.jpg')>>
You arrive a few minutes ahead of the reservation, and sit waiting for the director of the automotive group to meet, reading a book you brought with you.
A few minutes later...
<<=SugarCube.getLib().Dialogue.speak("auto-director","<<=SugarCube.getLib().PlayerModel.getHeirName()>> I presume? Ingram Callaghan. At your pleasure.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Yep! Nice to meet you!")>>
A dapper security guard accompanying him politely asks to inspect your clutch purse, quickly fingers through it and then returns it to you. You don't have anything they should care about, but nonetheless, you feel your blood pressure rise.
<<=SugarCube.getLib().Images.drawAction('security-guard.jpg')>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","Sorry about that... You can't be too sure these days.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Oh, sure - no problem.")>>
[[You check up with the host]]He talks to the maître d' who guides you to your table. Your hips swing with every step in your heels, you concentrate to conceal your arousal from the shifting plug. Many of the patrons can't help but gaze as you vamp through the room. Ingram has the waitress bring a fine bottle of Chateau D'Yquem Sémillon. The guard positions himself discreetly away from the table.
<<=SugarCube.getLib().Dialogue.speak("auto-director","So, you have an interest in the Maristech Automotive division, I gather?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Yeah, it really sounds cool - the ansible team is nice, but I think I can contribute more to your team and self driving cars.")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","The Ansible tech division has a lot of smart people there, who do some solid work. Surely though, you've heard my team has work with some tough demands. I personally hold my guys to a very high standard of performance- I needs alphas who are prepared for late nights when neccessary. What makes you want to work with us and deal with all the challenges and heartache this work can entail?")>>
[[Inspiring leadership]]
[[Camaraderie of his team]]<<=SugarCube.getLib().Dialogue.speak("heir","Oh, I'd heard from some other interns that you can be a really umm... passionate and inspiring leader to work under.")>>
You feel a foot grazing your leg. You ignore it. The exec smiles and responds with mock-humility.
<<=SugarCube.getLib().Dialogue.speak("auto-director","Oh, I only try to do what I can - really I merely practice servant-leadership to ensure a high performing team.")>>
He leers at you and places a hand over yours. You feel your heart beating a little faster.
<<=SugarCube.getLib().Dialogue.speak("auto-director","You know, I wasn't sure about you based on your rather limited experience, I think I see the glimmering of some potential in you.")>>
You attempt to feign a convincing smile at his backhanded compliment.
[[The waitress arrives]]<<=SugarCube.getLib().Dialogue.speak("heir","Oh, I'd heard from some other interns that your team has a really fun team culture.")>>
You feel a foot softly grazing your leg. You ignore it. The exec smiles and responds with mock-humility:
<<=SugarCube.getLib().Dialogue.speak("auto-director","Oh, yes - I do what I can to cultivate a fun team culture. We work hard, and play hard. That said, I like to get satisfaction at work too... sometimes it doesn't even feel like work.")>>
He leers at you and places a hand over yours. You feel your heart beating a little faster.
<<=SugarCube.getLib().Dialogue.speak("auto-director","You know, I wasn't sure about you based on your rather limited experience, I think I see the glimmering of some raw potential in you.")>>
You attempt to feign a convincing smile at his backhanded compliment.
[[The waitress arrives]]The waitress arrives.
<<=SugarCube.getLib().Dialogue.speak("auto-director","For the first course... I'm a creature of habit... I'll just have the Steak Tartare. My charming little companion here wants to maintain her figure and will start with a cantaloupe soup." )>>
<<=SugarCube.getLib().Dialogue.speak("Waitress","Of course, Sir. Both are fine choices. We'll get those started for you now.")>>
The Waitress gives you a sympathetic look - What a pretentious ass!
Your meal continues...
<<=SugarCube.getLib().Dialogue.speak("auto-director","And that is why the current income taxation model on benefits is so unjust towards top performers and must be thrown out.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","I'm sorry to hear that. It sounds really difficult for you.")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","Well, I manage... oh, pardon the pun.")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","But, the perk of charming company makes these burdens more tolerable...")>>
He finishes his glass, and gestures to a waitress for another bottle. He is now running his fingers over your wrist, more insistently this time. The small talk continues...
<<=SugarCube.getLib().Dialogue.speak("auto-director","Speaking of the better things in life, have you done any sailing by the bay this season? Oh, it really is something else. Nothing like lying on the deck under the moonlight with a bottle of Burgundy and a little company to keep things warm. You really must... I swear, life just isn't complete without enjoying some time under the canvas of the sails.")>>
More time passes... Listening to blowhard pontificate takes some more work, but you manage. He looks at his watch.
<<=SugarCube.getLib().Dialogue.speak("auto-director","Oh my... I'm afraid our interview has gone overtime, and I haven't had a chance to suitably review your... fit... for the role. I guess we got sidetracked.")>>
You think to yourself, no actually- HE side tracked things.
<<=SugarCube.getLib().Dialogue.speak("auto-director","We could continue the conversation upstairs, if you like. I have an office suite up there which I use for work and private meetings.")>>
Does he realize that meeting him isn't about liking it, per se... He couldn't be more obvious with the implication of his "offer" if he were to hit you in the head with it using a 2*4.
[[Continue upstairs]]He magnanimously insists on closing out the check for the interview (which you know he's going to expense to the company) and walks you out of the restaraunt. His guard joins him.
He guides you to the elevator.
<<=SugarCube.getLib().Dialogue.speak("auto-director","...And that was how I bagged a 240 pound Marlin off the Florida Keys last summer!")>>
He chuckles.
<<=SugarCube.getLib().Dialogue.speak("heir","Oh?")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","My friend Ted still has a bump on his head the size of a golf ball from the fight on that one.")>>
He gestures at his forehead and guffaws coarsely at his own joke.
You arrive at the floor, and are walked into his suite. You pass a guard at the door - he insists on checking your purse. The guy from the restaraunt joins him there.
You walk in, he locks the door. He lands himself onto the couch. He gets and uncorks another bottle of wine from his minibar, and pours a couple glasses. He hands you one then sits down. He pats a spot next to him where he'd clearly like you to sit.
<<=SugarCube.getLib().Dialogue.speak("auto-director","Come on over. Make yourself comfortable.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Sure...")>>
You get seated a couple feet away, as he is eyeing you covetously. He comments on how far you are sitting and pretends he can barely hear you from there. He is so transparent. Given the reason you are here you move in close to him, but your creep-dar is going full-tilt.
<<=SugarCube.getLib().Dialogue.speak("auto-director","That's better... but, you seem so tense. You're a such pretty girl, you should relax and smile more.")>>
The conversation starts getting more personal, as he asks you questions about family and siblings. He gets curious about what sorts of "crazy fun" you get up to with your girlfriends. At this point, his face is about a foot and a half away from yours, he has one hand sitting on your thigh - it is at the edge of the slit in your dress. He doesn't seem to be retaining too much about what you're saying, he just seems to be using excuses to compliment you and getting you to say "yes" to progressively more intimate propositions.
[[Watch as he continues caressing your leg]]
[[Skip the bullshit - Pull his zipper down|Pull his zipper down]]You sit there demurely, as this creep is now starting to slide his hand up your dress. He's commenting on how entitled young people of today are, and how in his day, he had to work his way up from the bottom in the dog-eat-dog world of the F1 racing business.
<<=SugarCube.getLib().Dialogue.speak("auto-director","So, Maristech Auto, yeah we're kind of a big deal. But, at the end of the day it's about working hard to go the distance on a product you believe in. So, do you think you have the grit to be the best there is at Maristech?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Uhh, yeah. I think so.")>>
His hand is now in the middle of your silky thighs, caressing them as he looks on you smugly. Any closer and he'll be touching your genitals. His face seems to express mock annoyance:
<<=SugarCube.getLib().Dialogue.speak("auto-director","Oh honey, I'm not looking for 'I think so.' I know a sexy girl like you can do better than than 'I think so'... Where's your Maristech spirit?")>>
He seems to be waiting for your response.
Respond and [[let him discover what is under that dress]]<<=SugarCube.getLib().Dialogue.speak("heir","You know what- Yeah! I have what it takes to come out on top at Maristech.")>>
You feel him moving his hand in for the "kill".
<<=SugarCube.getLib().Dialogue.speak("auto-director","Oh, so there is some spu...")>>
You feel his hand bump your <<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>chastity belt<<else>>chastity cage<</if>> - he seems thrown for a loop at your lack of an aroused reaction and confusion at not reaching soft folds he was expecting.
<<=SugarCube.getLib().Dialogue.speak("auto-director","wait, what?")>>
You demurely laugh and get a small delight that he isn't controlling the situation for once. Now, it's time to take the initiative with this predator.
[[Pull his zipper down]]You unzip his zipper... He seems distracted at your sudden directness, rather than acting on other observations - his interest is piqued as to where you are taking this.
<<=SugarCube.getLib().Dialogue.speak("auto-director","Oh, we're starting with that? Alright, now we're talking...")>>
You pull down his underwear, and get to business, kissing the head of his fully aroused cock.
You slowly work your mouth down. You aren't too practiced at it so you take it slow. He has a hand on caressing the middle of your back, where your dress ends, but at least there isn't pressure from it.
You start moving your mouth and tongue around a little. You bring in a hand to give his rod some attention, and start to develop a slow rhythm.
<<=SugarCube.getLib().Dialogue.speak("auto-director","Yeah honey. Work that little slut mouth of yours. Just like that. Oh you love taking my cock, don't you?")>>
What an asshole... [[F this guy]]Purple Pengin!
Suddenly, your mouth becomes flooded with the nanite-lubricant fluid, and your tongue and mouth becomes a soft, fleshy vibrator. Oh fuck! The butt plug sprang to life as well!
<<=SugarCube.getLib().Dialogue.speak("auto-director","Holy shit... You... have one magical mouth.")>>
How long did the computer say you would need to marinate his dick in the nanites for?
Unsure, you decide you had better keep going and overdo it, to make sure he gets a suitable dose.
With all the stimulation, the more you keep going, the more you experience a sensation of tunnel vision. You start to lose yourself as your mouth is rythmically filled and you savor that incredible lubricant being massaged around. Meanwhile your new anal intruder is making its presence felt deep inside you. The arousal is so strong, you can't help but start touching yourself and moaning in deep passion.
Ingram gets quickly stimulated as you feel his dick throb in your mouth. As the cum explodes into your mouth, you slow your pace, and regain your senses, the dildo tapers off and you lift your head up. He is spent, his head is tilted up and his arms are resting on the couch. You didn't get to reach a climax. You are still super horny and aroused, but you realize you have work to do, and time isn't on your side.
You don't see a sensible spot to spit, you reason to yourself... It embarrasses you to do so, but you swallow every last drop in your mouth so you can get on with things. Then you run your tongue around your mouth to collect as much as you can and swallow that. It's not about the cum - the lubricant fluid was just too delicious, you rationalize.
<<=SugarCube.getLib().Dialogue.speak("auto-director","Oh god that was.. incredible. How did you.. woah...")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","I think I'm going to need a minute. That was... Help yourself to a drink or feel free to watch some tv, if you'd like.")>>
He's speaking more slowly, he seems a little distracted. Hopefully the nanites are doing their thing.
You get up. The computer mentioned he had some important documents on a USB key.
<<=SugarCube.getLib().Dialogue.speak("auto-director","When some one says... they're going to blow your mind... They usually mean... figuratively...")>>
You walk around. You feel a notification vibration on your watch. This isn't a good time to check the message.
[[Check his desk]]From down the hall you hear mumblings.
<<=SugarCube.getLib().Dialogue.speak("auto-director","No... Really I'm not... a... bad guy...")>>
You reach the desk
<<=SugarCube.getLib().Images.drawAction('hotel-desk.jpg')>>
He's got a briefcase. It's unlocked.
<<=SugarCube.getLib().Dialogue.speak("auto-director","...just some mistakes...")>>
[[Check the briefcase]]Inside is a laptop...
Power supply cable and mouse...
Fancy Pens...
A couple chocolate protein bars...
Gold wedding band...
A stack of unsigned paper legal documents about an offer of employment detailing out a lucrative compensation package...
USB Key!
<<=SugarCube.getLib().Images.drawAction('usb-key.jpg')>>
You palm the key. Now to get this past his guards...
[[Go to the bathroom]]You turn on the light and fan, then lock the door.
You kick off your heels, and slowly tease out the buttplug. After a long evening with that inside you.
<<=SugarCube.getLib().Images.drawItem('med-butt-plug.jpg')>>
It feels nice to let your feet and ass relax for a moment... You feel a shiver as cold air makes it's way in before your tissue closes itself up. Next, you unscrew the plug and secure the key inside. You go to the toilet while you have a moment and freshen up.
You're not safe while you are here. It's time to get moving. You slide the plug back in, and you try to ignore the arousal as the horniness comes back with full force. To think you were starting to get really turned on there, but then he came before the girl... Typical! But, your satisfaction will have to wait.
You check yourself in the mirror. You wipe up some beads of sweat, but your makeup has held up pretty well. You touch up your lipstick and mascara, wash up and make your way out.
[[Leave the suite]]As you are walking down the hall, Ingram seems to have regained his senses. He's got a glass of water and rubbing his head.
<<=SugarCube.getLib().Dialogue.speak("auto-director","I... umm... Thinking about it, I may have behaved inappropriately... tonight... and... ")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Oh, I see.")>>
You notice he is rubbing his thumb on a pale segment of his finger.
<<=SugarCube.getLib().Dialogue.speak("auto-director","No, it's not your fault... I mean. You were... are incredible... That was... transcendent... Like, I suddenly felt myself... flooded with these thoughts of seeing... of experiencing... how I have... how I am... interacting with people... with... you... from their perspective. It's a lot to process.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","oh")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","Yeah... Don't worry, I'll put in a good word... for you, but... I think I'm going to need to take a break from things. On consideration... it probably wouldn't be appropriate... for me to be the one supervising your internship.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","I see... Maybe I should get going?")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","Yeah, maybe that's best... I need to think about some things. Do you want one of the guys to get you a cab?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","I'll take my car... uhh... thanks.")>>
<<=SugarCube.getLib().Dialogue.speak("auto-director","Again... I'm really sorry.")>>
[[You head out the door]]The guards see their patron inside who nods at them. They check your clutch purse one last time on your way out. They politely say good evening to you.
You walk towards the elevator, fearful that he will discover you have the usb key and have you detained. You press the button. Was he honest about all that stuff?
As you go down the elevator, you find yourself wondering about all of this... Can things ever be made right for all those other girls?
[[You get in your car]]<<=SugarCube.getLib().Dialogue.speak("heir","Car... just take me home.")>>
You get your feet off your heels, grab a water bottle and start drinking from it.
<<=SugarCube.getLib().Images.drawAction('drive-home.webp')>>
<<=SugarCube.getLib().Dialogue.speak("computer","Has the matter been resolved?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Yes. Ingram was treated with the nanites, and I recovered the data. They didn't give me any trouble.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Thank you for doing this, <<=SugarCube.getLib().PlayerModel.getHeirName()>>. It may be difficult to appreciate how vital this intervention was, but please understand it was necessary.")>>
You nod.
<<=SugarCube.getLib().Dialogue.speak("heir","It's been a long night, I'm beat. I just want to rest and feel safe. I'm sorry, but don't know if I can care about that right now...")>>
You wipe a couple tears that were forming.
<<=SugarCube.getLib().Dialogue.speak("heir","When I get home, could I just cuddle with S3 tonight in the pod? I don't want to be alone with these thoughts right now.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","She will be waiting for you.")>>
<<=SugarCube.getLib().Tasks.removeTask("deal-with-problem-exec")>>
[[You get home]]<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(false)>>\
<<=SugarCube.getLib().PlayerModel.toggleMakeup(false)>>\
You quietly make your way to the inner chamber... As promised, S3.X7-81.TC4 is waiting for you in some cute silky pjs. She's holding your favorite sleep outfit handy for you.
You hug her, and just stand there with her for a long moment in a deep embrace. You get changed, quickly brush your teeth and wash up, and the two of you get into the pod. Inside she spoons you, holding you close. The computer doesn't ask you any more questions or say anything more.
<<=SugarCube.getLib().PlayerModel.fallAsleep()>>\
[[Wake up to a new day in the pod]]You ask the computer some more questions. After a long discussion, you work through the computer's assumptions and work out an ethically less problematic solution to keep Marissa's vision intact.
<<=SugarCube.getLib().Tasks.removeTask("deal-with-problem-exec")>>
[[Return to console|Use console]]You arrive at "En Pointe Dance Studio" operated by Madame Pinneau.
In the front area, are some old posters from touring Ballet shows, as well as signs for their current offerings such as summer camps, youth and adult lessons.
It looks like adult beginner group lessons are available for $50/each. The front desk also seems to have a limited inventory of basic ballet attire.
<<= SugarCube.getLib().Images.drawLocation("ballet-studio.jpg");>>
<<= SugarCube.getLib().Dialogue.speak("ballet","Bonjour, mademoiselle!");>>
[[Take Ballet Lesson]]
[[Ballet Changeroom]]
[[Go to self driving car|Enter self driving car]] <<=SugarCube.getLib().Pathways.makeJumpLink("Ballet Studio","Fitness room");>><<=SugarCube.getLib().Exercises.doBallet()>>
[[Ballet Studio]]<<if (SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isDecentOutfit)>>\
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllWomanOutfit>>\
Back to [[Ballet Studio]]
<<else>>\
You feel uncomfortable not being dressed in a woman's outfit, given you are in the Women's changeroom.
<</if>>\
<<else>>\
Despite everything, you don't quite feel comfortable to go out dressed like this.
<</if>>\
You use a quiet nook and have a towel handy to avoid being indecently exposed.
<<=SugarCube.getLib().MirrorUX.drawMirrorView();>>
<<if (SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isDecentOutfit)>>\
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllWomanOutfit>>\
Back to [[Ballet Studio]]
<<else>>\
You feel uncomfortable not being dressed in a woman's outfit, given you are in the Women's changeroom.
<</if>>\
<<else>>\
Despite everything, you don't quite feel comfortable to go out dressed like this.
<</if>>\You arrive at the front desk of the "Soft Touch Beauty Lounge".
Just walking in, you can smell some pleasant aromas like vanilla, and where the mall had more of the noise of commerce and muzak, there seems like some kind of Zen ambient music. It all seems geared to make guests feel very relaxed.
<<=SugarCube.getLib().Images.drawLocation('mall-spa.jpg');>>
<<if hasVisited("Go to Soft Touch with Sue")>>\
<<= SugarCube.getLib().Dialogue.speak("spa","Welcome back to Soft Touch!")>>
<<= SugarCube.getLib().Spa.getMenu()>>
<<else>>\
<<= SugarCube.getLib().Dialogue.speak("spa","Hello Miss, welcome to Soft Touch!")>>
<<= SugarCube.getLib().Dialogue.heir("Hi!")>>
<<= SugarCube.getLib().Dialogue.speak("spa","Do you have an appointment with one of our Beauty Artisans for today?")>>
<<= SugarCube.getLib().Dialogue.heir("umm, no - I was just looking around.")>>
<<= SugarCube.getLib().Dialogue.speak("spa","Ok, just so you know, our location is a bit backlogged for the next three months. We're not currently taking on appointments with new clients at the moment.")>>
<<= SugarCube.getLib().Dialogue.heir("Ok.")>>
<<if SugarCube.getLib().PlayerModel.hasGirlyHair()>>\
It's not like you needed to get anything done here, but you are kind of curious about what kind of services girls get here. If it's like some movies you've seen, some of that stuff could be really relaxing.
<</if>>\
<</if>>\
[[Central Mall]]<<= SugarCube.getLib().Spa.trimCurrentStyle()>><<= SugarCube.getLib().Spa.cutHair()>><<= SugarCube.getLib().Spa.dyeHair()>>You are at the front parking loop of the department of humanity office.
<<= SugarCube.getLib().Images.drawLocation("department-humanity-exterior.jpg");>>
[[Department of Humanity - Lobby]]
[[Enter self driving car]]You are in the lobby of the Department of Humanity. Very upbeat place.
<<= SugarCube.getLib().Images.drawLocation("department-humanity-hallway.jpg");>>
<<=SugarCube.getLib().DoH.getAppointment()>>\
[[Department of Humanity - Exterior]]<<= SugarCube.getLib().DoH.meetAgents();>>
[[Go home|Baldric House]]<<= SugarCube.getLib().DoH.informOnComputer();>><<= SugarCube.getLib().DoH.myNameIsBilly();>><<= SugarCube.getLib().DoH.theyDontBelieve();>>After a couple hours, a junior agent informs you that the raid did find evidence of your dangerous artificial intelligence. The computer refused to comply with the warrant. It engaged a powerful self destruct mechanism in the basement after negotiations failed and agents attempted to gain entry to the lower area. Aside from some minor burns to a couple of agents on the breaching team, no one was harmed.
A few hours later...
<<= SugarCube.getLib().Dialogue.speak("agentBlack",`Sorry - you won't have a chance to have your day in court to get justice from that monster. It took the easy way out.`)>>
Thus begins a lengthy process of countless interviews and counselling in safe-houses.
[[A few days later...|Witness Protection]]<<= SugarCube.getLib().PlayerModel.toggleEverythingHidden(true)>>
<<=SugarCube.getLib().Dialogue.speak("agentGreen",`There's still a chance the computer may have co-conspirators who will want you dead. I'm sorry to say, life as you knew it is over. `)>>
<<=SugarCube.getLib().Dialogue.speak("agentBlack",`We met with out supervising Special Agent. You will be placed in witness protection and given a new identity. As part of this arrangement you will not be able to engage with persons from your old identity.`)>>
Agent black hands you a folder.
<<=SugarCube.getLib().Dialogue.speak("agentGreen",`The witness protection group is placing you in a safe house with some funds in a smaller sized city in Oregon. You will go to university as a student, with living expenses covered for the next two years to help you get on your feet. Unfortunately...`)>>
<<=SugarCube.getLib().Dialogue.speak("agentBlack",`Unfortunately... We can't get involved with resolving your gender identity... err... situation. Their department has had similar cases before. The policy specifically bans gender reassignment expenses, due being a scandalous political hot-potato, and blowback from government watch-dogs around some high profile cases.`)>>
You find yourself stunned, as the reality of all this sinks in. Things seem to have spiraled out of control.
<<=SugarCube.getLib().Dialogue.speak("heir",`I don't even know where to begin...`)>>
But, begin the next step, you must, as you start to rebuild your life. Aside from a news interview of a shocked and ignorant Ridge family who first learn of how the house was raided by the DoH by a reporter, you never hear of the Ridges or Sue again.
You decide you will:
[[Get breast removal surgery and rebuild your masculine identity]]
[[Continue living as a non-op transgender woman]]
[[Get gender confirmation surgery to complete your transition to transgender womanhood]]You quickly are able to find a specialist who helps you navigate the mental and physical aspects of a transition.
The last few months have been... disturbing. Looking back, it's so obviously clear that you were manipulated and tricked by the computer. Sure, it always seemed to act nice, but if you let it have its way with you, who is to say that it wouldn't have turned you into some kind of sex slave or something? Occasionally a doubt springs to mind, but the more you think about it, you realize that you weren't interested in that stuff, it was all just ideas being incepted into your head, which you wouldn't have otherwise arrived at.
Later that year, you met Pat at your new school, and you two have been having an amazing time together. The experience at the house had its traumas, but you were also put in situations where you stood up for yourself in a way that you hadn't really done before. All in all, things are looking up.
[[Epilogue - IN THE DISTANT FUTURE|DOH Epilogue]]You feel mixed emotions about what happened at the house. The experience had its traumas, but you were also put in situations where you learned to stand up for yourself in a way that you hadn't really done before. Life as a girl has been kind of weird at times, but you feel like you, so changing would be weird.
Later that year, you met Pat at your new school who really liked being with you. You have been having an amazing time together. All in all, things are looking up.
[[Epilogue - IN THE DISTANT FUTURE|DOH Epilogue]]You quickly are able to find a specialist who helps you navigate the mental and physical aspects of a transition. You feel mixed emotions about what happened at the house. It's not that you don't like being a woman... But... at times you felt pressured to do things way, way before you were ready, and it didn't feel like things were for the right reasons. You really had serious concerns about what the computer would ultimately do with you... to you. Getting out of there and being able to become a woman on your own terms has changed your life for the better.
Later that year, you met Pat at your new school who really liked being with you. You have been having an amazing time together. All in all, things are looking up.
[[Epilogue - IN THE DISTANT FUTURE|DOH Epilogue]]<<= SugarCube.getLib().Images.drawLocation("arcology.png");>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","I just got final confirmation. The council voted 6-3 for shutting us down. No more pointcasts to the 21st, and we have parcel out our hardware as spare parts, to be redirected to 'critical services'.",true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","But, don't those addled plod-brains realize this is still our best shot of making things right! We're so close. We have to keep trying.",true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","You saw the blit-feed... Arco 3 had a containment failure. We're all that's left. Our H3 supplies are barely able to just keep the protein vats running, let alone to power transmissions on the quantum ansible. It's not like there's anyone to bring new shipments anymore. And, you've seen how brazen the skulkers are becoming with their raids. It's too late.",true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","Not even one last message to Marissa? Maybe she didn't understand?",true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","We tried, but what more can we do? You've seen her time capsules, just like the rest of us. She followed the protocol exactly as we instructed. For whatever reason, she wasn't able to get her successor to fix the line upwhen.")>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","What about a message later? We can still tell them exactly how to nip the FCA in its tracks!",true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","VAL was destroyed yet again in this line. Even a temporal trainee should know, VAL was the only system of that period with nets even remotely capable of re-integrating our signals considering how downwhen they are. Anytime upwhen of there we have no one to communicate with.")>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","Without her successor acting to fix the line, the Free Coalition of States quickly emerged to usher in the era of darkness.",true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst2","We can't give up. There's got to be a way!",true)>>
<<=SugarCube.getLib().Dialogue.speak("analyst1","Frak it... Pour me a Synthi-Gin. What's the worse they can do to us? Kill us before we run out of nutrient paste? Run the diagnostics. We might be able to get one last warning out tonight.")>>
<<link "Back">><<script>>Engine.go(-5);<</script>><</link>>
<<link "RESTART GAME">><<run Engine.restart()>><</link>>This place is full of stylish, but expensive women's fitness clothes in a dizzying array of colors, and inspirational pictures of women being their best selves. You see more than a couple hot looking patrons with obligatory pumpkin scented coffees.
<<=SugarCube.getLib().Images.drawLocation('women-fitness-store.jpg');>>
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()==1>>\
<<= SugarCube.getLib().Dialogue.sporting("Welcome to Lady Fit-Sport! Let me know if there's something I can help you with today! :)")>>
<</if>>\
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()>=2>>\
<<= SugarCube.getLib().Dialogue.sporting("Hey, welcome back! Let me know if there's something I can help you with today! ;)")>>
<</if>>\
\
<<if !hasVisited("Talk to Sales Clerk about shoes")>>\
[[Talk to Sales Clerk about shoes]]
<</if>>\
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()==2>>\
<<= SugarCube.getLib().Dialogue.heir("Hi again! Thanks!");>>
[[See full sporting inventory|lady-fit-sport]]
<</if>>
[[Central Mall]]<<= SugarCube.getLib().StoreUX.renderCarousel("lady-fit-sport")>>
[[Lady Fit-Sport]]You try to concentrate on getting this done quickly. You try to maintain a bit of distance to avoid the sales girl seeing more than she needs to. Just stay calm, and you'll be fine.
<<= SugarCube.getLib().Dialogue.heir(`Hi, I'm here for some running shoes. I think you have an order under <<print SugarCube.getLib().PlayerModel.getHeirName()>>.`);>>
You wait a moment as the sales clerk taps something on her screen.
<<= SugarCube.getLib().Dialogue.sporting(`Sure! It says payment has been pre-authorized for any fitness shoe \and socks we have in stock. We don't get that too often. What's the special occasion?`);>>
<<= SugarCube.getLib().Dialogue.heir("Oh, ya know. Just doing my thing trying to get in a little better shape.");>>
The total reality that you are here masquerading as a woman is starting to intrude on your thoughts with full force, like a pile of bricks. Your anxiety levels are really starting to escalate, and you can't escape. You're having trouble keep up with what she's saying.
<<= SugarCube.getLib().Dialogue.sporting("Ok, get yourself seated, and lets find you a pair you'll love. What size are you again?")>>
You pause for an extended period, with embarrassment as you don't remember what women's size to say. Normally, you would just be in and out with a guys shoe store. As you are a bit slow to respond, she just guides you to a seat to measure your feet.
This is getting more complicated than you hoped. You slip off your heels and hope that she doesn't catch on, as she places your feet on the measuring pad and sizes them up.
<<= SugarCube.getLib().Dialogue.sporting("Those heels look awesome by the way, it's nice how things have warmed up so we can start wearing our peep-toes again. Ok, let's get you some nines for running.")>>
She brings out a stack of boxes. You try them on, and they all fit reasonably. You're feeling absolutely terrified right now, and trying to keep your wits about so you just choose a pair that isn't too girly:
<<= SugarCube.getLib().StoreUX.renderFreeCarousel("lady-fit-sport", "feet")>><<= SugarCube.getLib().Dialogue.sporting("Oh, those are so cute! Now we have a variety of socks to choose from.")>>
Just breathing is occupying your attention right now. You are way too mentally exhausted to worry about socks... You just grab the first pair you see.
<<= SugarCube.getLib().Items.renderItem("athletic-socks","shop-item-image zoom")>>
<<= SugarCube.getLib().InventoryUX.add("athletic-socks")>>
<<= SugarCube.getLib().Dialogue.heir("These look fine. Can I get these and go?")>>
<<= SugarCube.getLib().Dialogue.sporting("Ok, I'll process these through right now!")>>
She promptly bags the items, and places a gift receipt for the purchase inside. You make the slightest departing pleasantry to the shop girl and start walking out of the store in a daze.
<<= SugarCube.getLib().Dialogue.sporting("Thanks for your purchase! Come again soon!")>>
On leaving the store, the smart watch emits a warning:
<<= SugarCube.getLib().Dialogue.speaker(`Caution, blood pressure below safe levels.`)>>
<<= SugarCube.getLib().Dialogue.heir("Hmm. I'll be fine, I just need to get back to the car.")>>
[[Make a panicked hustle back to the car]]At this point, your breathing is extremely shallow, and you just want to get away from the mall and away from the sight of all these people.
You make a hasty walk back to the garage and manage to summon the car with the watch. You don't feel safe here, dressed like this.
You just manage to find it, open the passenger door and flop on the seat. Your body channeled every ounce of energy to get to the car, but you had nothing left. Your vision fades, and your ears are ringing.
[[Black out in your car]]The weather is crisp, it feels like late fall. You don't have a care in the world. You are a child on a swing, in a rundown playground in a small town - you are being gently rocked back and forth.
You start to hear a slow periodic beeps. They seem to be getting louder.
[[Arise from daze]]<<if !hasVisited("Central Mall")>>\
This is all more than a little weird, but its kind of exciting to be chauffered around.
<</if>>\
The car drops you off at the underground parking garage. After you close the door, the car moves away to park itself and until your next summons.
<<=SugarCube.getLib().Images.drawLocation('mall-parking.jpg');>>
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance() >= 2>>\
<<if SugarCube.getLib().PlayerModel.hasGirlyGenitals()>>\
You see your reflection in the mirror. You love how your outfit follows your curves.
<<else>>\
You see your reflection in the mirror. You still find yourself surprised at meeing cute girl that is your reflection. You still think about how someone might catch on to you, but you feel more confident about your appearance.
<</if>>\
<<else>>\
You make your way up the elevator, hoping to be innocuous, worrying when someone might catch on.
<</if>>\
Take elevator [[Central Mall]]This is the largest mall in the city. In addition to some typical stores, it is a regional home for a number of top tier stores that you don't typically find in smaller malls. In general, these aren't places you traditionally would go shopping - this place has a lot of well heeled clientele.
<<=SugarCube.getLib().Images.drawLocation('mall.jpg');>>
[[Olddorf Woodman]]
[[Lady Fit-Sport]]
[[Shoeboxx]]
[[Covert Natasha]]
[[GamesHut]]
[[Soft Touch Beauty Lounge|Beauty Lounge]]
<<if SugarCube.getLib().PlayerModel.isCaged() || SugarCube.getLib().PlayerModel.hasGirlyGenitals()>>\
[[Women's Washroom| Mall - Womens Washroom]]
<<else>>
Women's Washroom - No way you're going in there!
<</if>>\
Men's Washroom - You're dressed as a girl!
[[Go to self driving car|Enter self driving car]] <<=SugarCube.getLib().Pathways.makeJumpLink("Central Mall","Baldric House");>>You enter the genteel Olddorf Woodman Department store.
<<=SugarCube.getLib().Images.drawLocation('upscale-department-store.jpg');>>
[[See inventory|olddorf-goodman]]
[[Central Mall]]<<= SugarCube.getLib().StoreUX.renderCarousel("department-store")>>
[[Olddorf Woodman]]<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()==1>>\
You've heard of this cold-war era spy-themed lingerie store, but always kept a bit of a distance. \
<<else>>\
You can't believe you are shopping as a customer at this cold-war era spy-themed lingerie store. \
<</if>>
The walls have black and white pictures of femme fatale glamour models in exotic locales, with 60's looking prop spy equipment artfully arranged. Throughout the store are partially visible cabinets full of undergarments.
<<=SugarCube.getLib().Images.drawLocation('covert-natasha.jpg');>>
<<= SugarCube.getLib().Dialogue.lingeriestore("Hi, my podruga, can I help you find something today?")>>
\
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()==1>>\
You smile at her, as you are panicing on the inside. You really need to get out of here right now.
<</if>>\
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()==2>>\
<<= SugarCube.getLib().Dialogue.heir("Thanks, I think I am just browsing for today.")>>
<<= SugarCube.getLib().Dialogue.lingeriestore("Ok. Well, don't be a sleeper agent for too long. We all have a little Covert Natasha in us, just waiting to glam out our next mission!")>>
[[See lingerie inventory|covert-natasha]]
<</if>>\
[[Central Mall]]<<= SugarCube.getLib().StoreUX.renderCarousel("covert-natasha")>>
[[Covert Natasha]]It astounds you, how many kinds of shoes are offered here, but there it is.
Their advertising is pretty ubiquitous, every ad always has a twentysomething seductively say: "What do you want to have in your boxx today?", and a wink at the camera.
<<=SugarCube.getLib().Images.drawLocation('shoe-store.jpg');>>
[[Browse for shoes|shoeboxx]]
[[Central Mall]]<<= SugarCube.getLib().StoreUX.renderCarousel("shoeboxx")>>
[[Shoeboxx]]You instinctively felt the need to see what new games are out, on the off chance there might be some interesting pre-owned games you might want to get once you have a little cash on hand.
As you walk in, you sense the gaze of a bunch of teenagers and a thirtysomething neckbeard, as well as hear a bitchy sound of condescension from the cute goth girl at the cash register.
<<= SugarCube.getLib().Dialogue.gamestore("...")>>
<<=SugarCube.getLib().Images.drawAction('game-store.jpg');>>
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()==1>>\
You feel like a deer in headlights. You stop at a little display of game-related stuff merch figures, and sort of gesture as if you'd forgotten something, before you walk out in fear that someone is going to catch on with this unwanted attention.
<</if>>\
<<if SugarCube.getLib().PlayerModel.checkClothingTolerance()==2>>\
You're not really looking for anything at the moment.
<</if>>\
[[Central Mall]]You enter the Women's Washroom.
<<=SugarCube.getLib().Images.drawLocation('mall-bathroom.jpg');>>
<<if SugarCube.getLib().PlayerModel.hasGirlyGenitals()>>\
One thing you appreciate about being a girl is how much nicer the bathroom is.
<<else>>\
You go to a stall. You are paranoid someone might catch a glimpse of your cage, but there's something exciting about all of this.
<</if>>\
[[Check your look|Mall Mirror]]
[[Central Mall]]<<if (SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isDecentOutfit)>>\
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllWomanOutfit>>\
Back to [[Mall - Womens Washroom]]
<<else>>\
You feel uncomfortable not being dressed in a woman's outfit, given you are in the Women's washroom.
<</if>>\
<<else>>\
Despite everything, you don't quite feel comfortable to go out in the mall dressed like this.
<</if>>\
You really love how the mall has upgraded the bathrooms here to also allow for checking yourself in an outfit. It's a bit of a hassle to get to but they put in some changerooms here that have better mirrors and lighting than at a most of the smaller stores.
<<=SugarCube.getLib().MirrorUX.drawMirrorView();>>
<<if (SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isDecentOutfit)>>\
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllWomanOutfit>>\
Back to [[Mall - Womens Washroom]]
<<else>>\
You feel uncomfortable not being dressed in a woman's outfit, given you are in the Women's washroom.
<</if>>\
<<else>>\
Despite everything, you don't quite feel comfortable to go out in the mall dressed like this.
<</if>>\You activate the "car summon" feature on your watch, it notifies you the car is enroute to pick you up in a couple of minutes.
On arrival, the watch reminds you that the car uses a two factor authentication system based on your voice and appearance as <<print SugarCube.getLib().PlayerModel.getHeirName()>>.
As you get close to the car, you see a subtle infrared light illuminating you.
<<= SugarCube.getLib().Dialogue.speaker(`User visually recognized. Confirm 2FA voice print.`);>>
<<if !SugarCube.getLib().PlayerModel.hasGirlyGenitals()>>\
You use your girl-voice:
<</if>>
<<= SugarCube.getLib().Dialogue.heir(`It's me, <<print SugarCube.getLib().PlayerModel.getHeirName()>>. Let's go!`);>>
<<if SugarCube.getLib().OutfitsAnalyser.describeCurrentOutfit().isAllWomanOutfit || (SugarCube.getLib().PlayerModel.looksLikeAGirl() && SugarCube.getLib().OutfitsAnalyser.isCosplay())>>\
The passenger door slinks up into the ceiling of the car.
[[Enter self driving car]]
<<else>>
As you approach, your watch indicates that <<=SugarCube.getLib().PlayerModel.getHeirName()>> needs to be visible to the car. You walk all around the car, it just doesn't seem to recognize you, at least with your current appearance.
<</if>>
Use your watch to <<link "Dismiss car">><<script>>Engine.backward();<</script>><</link>>You get yourself comfortably seated in the back of the car, as it starts to get moving.
<<=SugarCube.getLib().Images.drawAction('self-drive-car.webp');>>
<<= SugarCube.getLib().Dialogue.speaker("Select Destination") >>\
[[Go to Baldric House|Baldric House]]
[[Go to Central Mall]]
<<if SugarCube.getLib().Tasks.hasTask("train-for-doll-suit") || hasVisited("Ballet Studio")>>\
[[Go to Ballet Studio|Ballet Studio]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("need-drone-license") || hasVisited("Department of Humanity - Exterior")>>\
[[Go to Department of Humanity|Department of Humanity - Exterior]]
<</if>>\
<<if (SugarCube.getLib().Tasks.hasTask("start-internship-today"))>>\
[[Go to Maristech Orientation]]
<</if>>\
<<if hasVisited("You are guided into the office")>>\
[[Go to your Office at Maristech|Maristech Campus]]
<<if SugarCube.getLib().Tasks.hasTask("go-to-sea-station")>>\
[[Take your car to the Airport!]] - Time to go to the Sea Station!
<</if>>\
<</if>>\<<if State.turns==1>>\
INTERNAL STEP: Loading game script and performing one-time initialization of game state.
<img src="images/pay-no-attention-curtain.jpg" />
If you clicked the back button, and see this, click the "go forward" or "restart" buttons on the left side of the page.
If through no action of your own, you are *stuck* here, even after restarting, please go to [[Developer Notes]] to see how you can describe the circumstances (e.g. browser/OS).
<<else>>\
<h1>The Claim</h1>\
Version: <<=SugarCube.getLib().Versioning.getCurrentVersion();>>
This is a free, non-commercial work of interactive fiction and creative commentary. It contains explicit sexual themes and imagery, including feminization and female transformation of a male protagonist, as well as loss of agency by the main character. All activity and imagery in this game pertains to adults. Themes of rapid bodily transformations are depicted, which are unrealistic. Portions of the game entail very serious subject matter which can be unpleasant. This version is not complete - you should review this summary with future updates.
By proceeding, you agree that you are above the age of consent in your country of residence and legally able to view this material in your jurisdiction. If not, there are some much better [[browser games|https://www.pcgamer.com/best-browser-games/]] you should check out now!
In addition to the above reasons this may not be for everyone, the author warns you the writing here is mediocre, unrealistic, and the limited branching of the "gameplay" may not be the best use of your precious time.
<p style="color: yellow;"> Note: The quality of this game is a community effort, which succeeds with the help of players like you. Specific feedback from players on tfgames forum is how bugs and problems are quickly recognized and fixed. For hard to reproduce issues and savegame compatibility problems with an earlier version, make sure to hold onto the save when reporting the issue, as it may be needed to reproduce an issue and test effectiveness of a fix. Thanks! </p>
For info about plans for the game itself(may contain spoilers) and how to submit feedback, refer to [[Developer Notes]].
For the few remaining souls who are still here, [[Start|Exposition: Intro]].
Experienced players may restore a save game from a set of [[reference saves]].
<</if>>You are Billy, a young guy who caught a lucky break, to get paid for some light work as a housekeeper at a palatial townhome.
You were going to head back home off school for the summer, but this opportunity came up. The Ridge family wants you to watch over the family home, while they go on a grand family sightseeing trip in Europe. You had struggled to save up to go for your next year of school, but it had been tough making ends meet.
<<=SugarCube.getLib().Images.drawAction('college-campus.jpg');>>
[[Next|Exposition: Your job for the summer]]This job might be a little boring, but it will have paid off when the Ridge family returns from their trip at the end of Summer, as you're getting paid $10/hr for what is described as 20 hours a week of light work, and following instructions from an email you got earlier. In reality, you probably don't need to spend more than a couple hours a week doing occasional chores. This is more than you've every been paid for a job, before.
<<=SugarCube.getLib().Images.drawAction('job-money.webp');>>
This will also provide you time to catch up on your studies for next year and maybe get in a bit better shape. Kate arranged for her grocery deliver service at a reduced volume just for you, and you can make adjustments as you like. You have no expenses while you are here, so everything you earn can be saved for school.
[[Next|Exposition: Why are you here]]That's not the only reason you are here... You have been secretly in love with Stacy Ridge, their daughter and your classmate.
<<=SugarCube.getLib().Images.drawPerson('stacy-ridge.jpg');>>
She has been through some tough times (girls can be so mean to each other), and you've always been there for her - through thick and thin. Her friendship and familiarity with you definitely helped you get this job. You were there often enough, that her parents, Mark and Kate felt accustomed to your safe presence, almost an honorary member of the family.
<<=SugarCube.getLib().Images.drawPerson('mark-ridge.jpg');>>\
<<=SugarCube.getLib().Images.drawPerson('kate-ridge.jpg');>>
She is the only girl you are close with, often hanging out doing homework or seeing movies together but you've never found the courage to show her how you feel for her. Given the right moment, you want to show her you can rock her world.
[[Your Physique]]"My physique doesn't help set me apart", you sigh. On reflection, you are a bit small compared to other guys your age. You're 171cm tall, and weigh about 63kg. It's not all bad, you are in good health, your skin is blemish free, and your mom says you're cute. Ultimately, you never seem to find the courage to make the first step.
<<=SugarCube.getLib().Images.drawPerson(SugarCube.getLib().PlayerModel.getCharacterImage(1));>>
But now, it's time to get to work. You will need to get set up clean, and dust the interiors, while watering the plants and monitoring the outside property.
The Uber driver drops you off with your duffle bag outside the house.
First things first - you should drop off your luggage - it's kind of heavy!
<<=SugarCube.getLib().Tasks.addTask("drop-luggage");>>
Leave the car to approach [[Baldric House]]From 1999 to 2008, the country had observed a seemingly unstoppable dot-com boom which had severely devastated many local businesses and traditional lifestyles throughout the country.
From the anger of growing numbers of unemployed, the "[[Homeland Values|Homeland Values Movement]]" protest movement emerged as an increasingly disruptive force, and congress was forced into passing the controversial Butler-Hancock Act as a lesser evil.
The act introduced a 100% tax on business-to-consumer transactions not conducted in a retail establishment. Furthermore, it introduced a 1600% tax on the value of business-to-consumer transactions where a party to the transaction is not human. The last part of the act introduced the "Department of Humanity", to aggressively investigate and prosecute contraventions.
Some felt that the act was a draconian restriction on civil liberties, and froze innovation, while others felt the law was incomplete, and didn't go nearly far enough to protect jobs and traditional lifestyles.
From that point, the pace of consumer facing technology innovations stagnated, with many technology entrepreneurs shifting to more lucrative alternatives like fidget spinners, but "Main Street" saw a healthy a renewal in the aftermath.
<<link "Back">><<script>>Engine.backward();<</script>><</link>>A loose assemblage of civic and religious groups who share a consensus that society is changing too quickly, with capitalism transforming our world in ways which we cannot fully understand. While their members are not anti-technology per se, their official stance is a preference to allow changes after they have been proven to be completely safe and non-disruptive to society.
This organization maintains strong discipline among its members and exercises its influence through its political action committees. The movement has been quite effective at organizing protests of the "quiet majority", and in drumming up votes at all levels of government. Approximately 43% of members of the house of congress have campaigned on a platform of being "well aligned" with the principles of the Homeland Values movement, which coalesced into the "Homeland Caucus", currently led by representative Kyndall Pearson.
Quote from Representative Pearson during house debate on extending provisions of the [[Butler-Hancock Act]].
<<=SugarCube.getLib().Dialogue.speak("pearson",`So, I ask - is it so hard to understand? We're sick of all these tech companies, pushing their screens, their robots and their devices to intrude into every aspect of our lives. Is that the kind of world you want your kids growing up in? I don't want that for my daughter or my sons, and neither do my esteemed collegues, or the people back home who asked us to represent them. Mr. Speaker, we have come here to send a message to these oligarchs - Enough is enough!`)>>
See also [[The Coalition]].
<<link "Back">><<script>>Engine.backward();<</script>><</link>>The coalition of sovereign mankind is a more extreme branch of the [[Homeland Values Movement]]. Members of this group believe that the planet has been corrupted, and that democratic and scientific organizations are inevitably subverted to implement the will of their corporate masters. According to their leaders, the solution is a restoration of time tested social structures which can allow the people's common wisdom to be honored.
The coalition has been establishing a growing number of "Free Settlements", eschewing traditional government services.
Politically, this group feels the country should pursue a more isolationist direction, with libertarian ideals of small government, an absence of taxation and minimal regulation, in favor of self-sufficiency and community driven social structures.
Although the coalition has no central executive, Justus Chapman is a prominent leader within in the established Vermont Freehold, and is a major advocate for the organization in the public press.
Excerpt from "A more perfect way of living":
<<=SugarCube.getLib().Dialogue.speak("chapman",` ... If those meddlers, those takers, those ninnies and those scalawags could just get off our backs, we can create that shining beacon of liberty once and for all. Just think what you could do, if the fruits of your labor were all yours! ... The founding fathers believed that we should all be able to practice government that made sense for ourselves, without some central tyrant and his tax collectors watching over all of us.`)>>
Some critics have pointed out that most known members of [[The Red Hands]] had spent some amount of time at the Free Settlements.
<<link "Back">><<script>>Engine.backward();<</script>><</link>>Fanatically inspired by Damian Krughoff's 782 page treatise and rallying cry: "The Moral Imperative for Immediate Action", the Red Hands are an extremist network targeting organizations they describe to be "Enemies of Human Values" (commonly abbreviated as EHV's).
Followers of this group have claimed responsibility for 14 distinct attacks within the last two years. Targets have included family planning clinics, controversial sites of major technology companies and congregation sites of religious minorities. Experts have been noting a growing sophistication with more recent attacks.
The name of "Red Hands" is an acknowledgement by these members that their actions violate the morals of their creeds and the laws of the land, to confront what they consider a far greater evil.
Time at free settlements of [[The Coalition]] has been noted to be a common pattern the few surviving members and suspects who have faced criminal prosecution. It is worth noting that many attacks by the Red Hands involved suicide bombings. Coalition leaders members decry the actions of the Red Hands as lone criminals and deny any involvement or support.
Excerpt from "The Moral Imperative for Immediate Action":
<<=SugarCube.getLib().Dialogue.speak("krughoff",`...The laws of nature cannot be ignored out of sentimentality. Democracy is a failed system. The body politic is, and always shall be, weak and forgetful in times of trial. It is the obligation of the wise and prudent to provide clear direction without doubt. For the young and energetic, to act without hesitation.
These are our sacrifices. These are our burdens as men of conscience.
Cultures which honor this tradition have always thrived with vigor. For those who allow the weak and foolish to rule over the strong and wise, decadence and decay is inevitable. Stand with your brothers of superior character, and cast out thy enemy....`)>>
<<link "Back">><<script>>Engine.backward();<</script>><</link>>Hmm, time for an action film. 80's Batman kicking some ass? This should be fun.
<<=SugarCube.getLib().Images.drawAction('batman.jpg');>>
<<=SugarCube.getLib().Tasks.removeTask("watch-batman")>>\
[[continue with Batman]]Oh, No wait, this is the DeVito one with the Penguin. Joker always gets top billing in that world, but still comes across as a villain who was out to cause mayhem and chaos. The Penguin seems more complicated. He really seems to try to get you to feel sympathy for him as a product of our crazy society. The villains meant to hint there is a reaction to something not quite right in Gotham... Is it all just for entertainment, or were they trying to say something with these stories?
<<=SugarCube.getLib().Images.drawAction('batman-penguin.jpg');>>
Oh, and there's Catwoman... Meow. She really nails the kinky and unhinged look. Like, you know she might be up for just about anything.
<<=SugarCube.getLib().Images.drawAction('catwoman-crazy.jpg');>>
In general though, it's curious how these characters seem to take on another persona to do what they need to do, or as if people won't figure out who they are. The thought strikes you as kind of silly.
You are starting to feel tired, but you realize it's not healthy to overdo it with another late night binging on content. Time to go to bed.
<<=SugarCube.getLib().PlayerModel.setReadyForSleep()>>\
Return to [[Cinema]]You aren't feeling too picky - you hit up a crime-action movie you were too young to see as a kid. It's a few minutes in, but it's a dark, gritty one about drug smugglers and badass undercover cops who play things a little fast and loose.
<<=SugarCube.getLib().Images.drawAction('miami-vice-1.jpg');>>
It has some good music, including a pretty cool sounding song from Linkin Park - you remind yourself to add it to your playlist.
<<=SugarCube.getLib().Images.drawAction('miami-vice-2.jpg');>>
<<=SugarCube.getLib().Tasks.removeTask("watch-miami-vice");>>\
[[Done Watching - Miami Vice]]The movie ends eventually and you look at the clock - it's a little past midnight already. Usually at this hour you are already tucked in bed, but the last day's events have you way too excited to sleep.
You found a secret door in this house! And a quest that could lead to a huge treasure. A short lookup shows that the gold alone is worth today around 3 million dollars! Oh, and the things you could do with all that cash...
[[The possibilities]]Your mind starts to go to the gutter and you reach down inside your pants. Your cock seems to already be hard. You take the remote control and somehow luck out to find a channel with some late night sexy times.
<<=SugarCube.getLib().Images.drawAction('lesbian-porn.jpg');>>
Not one to look a gift horse in the mouth, you reach down to remove your pants and trousers all the way. As you raise your hips a little your hand slips between the cushions of the sofa and you feel something very soft in there, like a piece of cloth or something like that.
You grab it and pull it out.
[[A black thong|Theater: A black thong]]You examine the object only to discover that it is a women's underwear - and an extremely revealing one for sure.
<<= SugarCube.getLib().Dialogue.player("Wow, how could I have missed it while cleaning?");>>
<<= SugarCube.getLib().Dialogue.player("I wonder whose thong this is anyway" );>>
<<=SugarCube.getLib().Images.drawItem('black-thong.jpg');>>
Mrs. Ridge is a fit, attractive woman, but the size of the thong still seems small even for her hips. On the other hand, this could not be Stacy's underwear for sure - it's far too ... adult for her tastes and its definitely not the type you could buy in a regular clothes store.
The loud moans of the chicks on the video is still filling the air and your cock is on the edge of bursting.
You turn the thong inside out - they look used and a little dirty... Then it hits you.
<<= SugarCube.getLib().Dialogue.player("What if this really is Stacy's underwear?");>>
The thought is just too hot.
[[Theater - Smell Item]]You bring the thong up to your nose. The smell has a certain muskiness to it. You close your eyes, and lick them, imagining your tongue probing deep into Stacy's pussy as she's pushing herself on you.
Finally you decide to wrap the thong around your shaft and begin jerking with it. With just a couple of strokes, you erupt with a powerful orgasm, screaming from pleasure. A gush of cum, totally drenching the fine silk fiber of the underwear, until the white semen begins dripping down your palm.
Your vision fades out as [[you pass out on the couch]]A year has passed since you recovered the treasure, and life could not be better. You dropped out of school and invested the cash in the stock market. Since then, you've been having a lot of crazy hookups with perfect women.
You are driving fast in a Lamborghini, on a steamy evening in a tropic city. You stop by to pick up a hot girl.
"<<=SugarCube.getLib().PlayerModel.getName()>>, you are such an exciting date!" - the girl smiles as she enters the car. Her dress billows up a bit as she throws her thin long legs inside and you notice that she might be wearing no panties underneath. Her long perfect legs are just begging you to put your palm between them...and maybe further up, underneath her mini skirt...
<<=SugarCube.getLib().Images.drawAction('lambo-brunette.jpg');>>
The hotties don't care how you got rich, they are just want to be with a powerful man, eat an expensive dinner and dessert, then they will be begging to suck your cock. There's nothing they aren't willing to do...
[[You awaken in the theater]]"Aaaaahh" - a loud and over-dramatic moan wakes you up from your dream...Confused you open your eyes and see that it is already morning and you have spent the whole night on the couch.
The TV is still on with the volume turned up and the porn on the screen is still running.
You look down and see that your belly is a mess - the black thong is still curled around your soft dick, with the dried cum holding it tight. The room smells strange, reminds you of roses and vanilla.
<<= SugarCube.getLib().Dialogue.player(`Oh Shit!`);>>
You turn off the TV and get up. It's been a while since your last blackout. When you were a kid, you had a few stress-induced blackouts, which seemed to stop as you got older. Hopefully it's just a fluke.
<<= SugarCube.getLib().Dialogue.player(`What a great dream though.`);>>
You try to savor the details, but it's already fading.
<<= SugarCube.getLib().Dialogue.player('I must find a way to that treasure! But...how do I open the damn door?');>>
You could never find a girl who would just agree to go down that basement and dress up like Marissa. Even if you did, she'd surely demand a huge cut as soon as she had a clue what was going on.
You mind begins searching for possible solutions to the problem. Suddenly you notice the thong around your cock again, and think about Marissa's instructions.
<<= SugarCube.getLib().Dialogue.player(`but maybe...`);>>
<<=SugarCube.getLib().Tasks.addTask("house-has-clothes");>>\
<<=SugarCube.getLib().Tasks.addTask("first-shave");>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate();>>\
<<set $day to 2>>
[[Take black thong]]<<= SugarCube.getLib().Dialogue.player("I'll need to get this cleaned up. ");>>
You sniff for a moment.
<<= SugarCube.getLib().Dialogue.player("Hmm, I've got a little funk myself - I should go get myself cleaned up as well. Maybe I'll do that now?");>>
<<=SugarCube.getLib().InventoryUX.add("black-thong")>>\
<<set $thongIsDirty=true>>\
<<=SugarCube.getLib().Tasks.addTask("clothing-needs-cleaning");>>\
<<=SugarCube.getLib().Tasks.ensureTask("player-needs-shower");>>\
[[Cinema]]
Go to the upstairs [[Hallway Bathroom]]The last couple movies were a bit dark. You feel like a comedy for today.
There's a Mel Brooks flick about Robin Hood which doesn't seem to take itself too seriously. This could be good.
Oh interesting, the merry man "Achoo" was a young Dave Chappelle's first big break as a film actor.
<<=SugarCube.getLib().Images.drawAction('robin-hood.jpg');>>
As usual for a Robin Hood, the film has an archery tournament, but also a bunch of comedic gags and slapstick fighting. The film wraps happily with King Richard returning from the Crusades to arrest Prince John.
<<=SugarCube.getLib().Images.drawAction('robin-hood-stewart.jpg');>>
On marriage, Robin and Marian have some trouble on their wedding night. Damn, the legs on that Marian. Ha! Not an amazing movie, but it had its moments.
<<=SugarCube.getLib().Images.drawAction('robin-hood-belt.jpg');>>
As often happens after you watch a movie in this dark room, you are starting to feel tired.
<<=SugarCube.getLib().Dialogue.player("Wow, I'm really feeling exhausted.")>>
<<=SugarCube.getLib().PlayerModel.setReadyForSleep()>>\
<<=SugarCube.getLib().Tasks.removeTask("watch-robin-hood")>>\
[[Cinema]]<<=SugarCube.getLib().PlayerModel.toggleMakeup(false)>>\
You borrow some makeup cleaning supplies from the cabinet, and proceed to remove the makeup from your face. You are super glad the guides also talked about this part so you can return to normal.
<<=SugarCube.getLib().Images.drawAction('remove-makeup.webp');>>
For good measure, you massage in a bit of moisturizer.
<<=SugarCube.getLib().Images.drawAction('face-moisturizer.webp');>>
[[Hallway Bathroom]]<<if SugarCube.getLib().Skills.get("makeup") == 0>>\
<<=SugarCube.getLib().PlayerModel.toggleMakeup(true)>>\
From the tutorials, you have built up the nerve to put on some makeup to satisfy the demands of the door.
<<=SugarCube.getLib().Images.drawAction('foundation.webp');>>
<<=SugarCube.getLib().Images.drawAction('lipstick.webp');>>
Although you are clearly not practiced on doing the details, you think that it might be good enough in a dark room, or from a distance with someone who isn't looking too closely.
<<=SugarCube.getLib().Skills.set("makeup",1)>>\
<<else>>\
<<=SugarCube.getLib().PlayerModel.toggleMakeup(true)>>
This time, you sort of treat the process like a game, where you are going for precision. You're still taking a long time to do what is probably a basic thing for a teenage girl, but no big mistakes this time.
<<=SugarCube.getLib().Images.drawAction('foundation.webp');>>
<<=SugarCube.getLib().Images.drawAction('lipstick.webp');>>
<</if>>\
[[Hallway Bathroom]]<<if !SugarCube.getLib().PlayerModel.canWork()>>
You are too tired to work right now. Try tomorrow.
<<else>>
<<=SugarCube.getLib().Tasks.removeTask("help-margaret-research-data-entry")>>\
Margaret explains her lab procedures to distribute some Phytoplankton communities to a set of containers for one of her experiments.
<<=SugarCube.getLib().Dialogue.speak("biol","First, we always need to make sure the vessels are sterilized of prior media. I prepped our test bottles for today with our acid-sterilizer, we just need to rinse out with some Distilled Deionized Water (DDW). I'd like you scrub clean and then acid sterilize tomorrow's containers over there, and allow have them sit with acid overnight.")>>
After explaining the cleaning and sterilization process, she walks you through the procedure, where to get materials and snags to watch out for. The sciency rigor part is new to you, but you know a thing or two about cleaning. You have dealt with drudgery before, so the work isn't too burdensome.
<<=SugarCube.getLib().Dialogue.speak("biol","Ok, now we need to set up a set 16 cultures from community C12-J11-3... You can dispense them from the container at rack 11.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","For this study, we'll use the following nutrient ratios for each sample...")>>
This part takes a good bit longer as you find yourself checking and double-checking your measurements and that you're following instructions properly.
<<=SugarCube.getLib().StationWork.completeTask("help-margaret-research-culture prep")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Thanks for the help. Could you stop by tomorrow to help me on some core analyses?")>>
<<=SugarCube.getLib().Tasks.addTask("help-margaret-research-core-analysis")>>\
<</if>>
[[Station Research]]<<if !SugarCube.getLib().PlayerModel.canWork()>>\
You are too tired to work right now. Try tomorrow.
<<else>>
<<=SugarCube.getLib().Dialogue.speak("biol","I have a backlog of core sample data requests from our consortium partners. They've been starting to nag me about catching up on those, which is never a good sign.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","So, lets go over here to the core sample racks. The computer here provides a tracking record for where each sample is. We use this barcode scanner to track custody of each sample as it is removed and returned to the collection. It's sort of like a library of geological samples.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","For this one, let's see - Ok, they wanted a molecular spectroscopy pass to collect some data, and report it back to them. I've put the other tasks on this pad here. Feel free to check back with me and we can go through unfamiliar procedures.")>>
.. Several hours later, while you are seated, entering in some results at a computer, she stops by. Margaret puts her hand lightly on your shoulder, while she reviews and double checks your work.
<<=SugarCube.getLib().Dialogue.speak("biol","How's it going?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Not bad - once you get the process, it seems like a lot of it is about sticking to it and not getting sloppy.")>>
She comes in closer to get a look at the data you've been entering, she gently puts one hand on your shoulder, the other borrows the mouse. Up close, her perfume smells refreshing. As she gets more invested in the data, and she's leaning in her boobs are floating inches away from your face. You pretend not to notice.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh yeah! I like the look of this data. Right, sticking to the protocols can be a big part of this work. Our partners will appreciate that we got this out in a reasonable amount of time! I do too!")>>
She smiles, and the get back to a standing posture.
<<=SugarCube.getLib().Dialogue.speak("heir","Thanks!")>>
<<=SugarCube.getLib().StationWork.completeTask("help-margaret-research-core-analysis")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Thanks again for the help today... Ok, it looks like we're about ready to start installing the ansible transceivers. What SCUBA certifications have you got, and how many dives have you logged, so far?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Uhh... I haven't dived before, actually.")>>
She is a little caught off guard with that.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh! uhh, Wow! Well, I guess we'll have to start you up with some theory for tomorrow.")>>
<<=SugarCube.getLib().Tasks.addTask("scuba-training-theory")>>\
<</if>>\
[[Station Research]]<<if !SugarCube.getLib().PlayerModel.canWork()>>
You are too tired to work right now. Try tomorrow.
<<else>>
<<=SugarCube.getLib().Dialogue.speak("biol","Along with replacing the transceivers here on the station, we'll need to replace the ansible transceivers on the data platforms near the station on the continental shelf. For that, I'll need your help to install those. And just to confirm from before, you hadn't done any open water scuba diving or training before?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Uhhm, No...")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Ok. As you might imagine that is a bit less typical for people assigned to this offshore marine research station. No worries though, I'm a certified dive instructor, and we can get you started with the e-learning curriculum for the theory components.")>>
You spend the morning going through open water dive theory, and running through a set of quizzes explaining how to prepare and use your gear... More on managing buoyancy, standard procedures for dealing with your dive buddy, the marine environments and other users of the space. You feel a little more comfortable with your basic awareness of safety practices to avoid the dangers of diving and especially for the limited aspects you're being trained for with this basic qualification.
<<=SugarCube.getLib().Images.drawAction("dive-table.jpg")>>
By the end of the day, Margaret checks in with you.
<<=SugarCube.getLib().Dialogue.speak("biol","Ok! Awesome work - all your theory quizzes passed, you're ready for your first checkout dive.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Well, its been a long day, and your brain will want some time to absorb all that theory. Rest up. Give me a call from the moonpool, when you're ready for your dive!")>>
<<=SugarCube.getLib().StationWork.completeTask("scuba-training-theory")>>
<<=SugarCube.getLib().Tasks.addTask("check-out-dive")>>\
<</if>>\
[[Station Research]]It's time to install the main ansible... You review the instructions on your watch. Need to go up to the hold and bring the ansible equipment down to the communications room.
[[Station Main Hold]]You get the cart with all the ansible parts. You are shocked at how bulky and heavy all this stuff is... You take the elevator down to the advanced comms room.
You get prompted for credentials, and swipe your personal ID badge, which is accepted for your servicing work.
After you enter, the room closes itself off.
You review the instructions on your watch. There's a tablet in Hardcase A, which is one of the smaller ones. After unlocking it, you open and find inside, you see some simple hand tools and the tablet.
You start looking at the instructions:
<div class="letter">PROCESS OUTLINE:
DAY 1
1-Installation of upgraded Ansible Housing
2-New Ansible Transceiver Installation
3-Ansible Test procedure
4-Activation of Ansible Duplexing Mode
5-Backup Data Extraction from Temporal Ansible with MSFS
DAY 2
6-Remote Disconnect of Legacy Systems
DAY 3
7-Final validation of upgraded systems
8-Shutdown of Legacy Ansible & disablement of duplexing mode
9-Removal & Disposal of Legacy Ansible</div>
You flip through. It's a highly prescriptive twelve page series of simple instructions in a few major phases, which you flip through. According to the docs, each stage can safely be paused indefinitely as neccessary.
None of them look particularly tricky... Just a lot of details with boring IT-speak.
[[You proceed with the physical installation steps]]You go through the Installation of upgraded ansible housing. The parts all seem to be machined to a ridiculous level of precision, such that although there is a bunch of steps, the parts are all neatly packaged, and things go exactly as expected. From what you'd heard from one of your cousins who had been apprenticing as a carpenter, that's not exactly how this stuff normally works.
30 minutes later, and you've already finished parts 1 & 2. The ansible transceiver chip is physically installed in its housing already!
<<=SugarCube.getLib().Images.drawAction('ansible-chip.jpg');>>
Diagnostics... successful! At this pace, you'll be done before lunch!
[[Move on to part 3]]Part 3 - Ansible Test procedure...
This part has you running a series of automated tests with the new ansible to communicate with Maristech. The device passes with flying colors!
Part 4 - Activation of Ansible Duplexing Mode
For this part, you reconfigure the ansibles to allow the use of both the old and new remote ansibles to communicate with the station, so you and Margaret can remove the old ansibles tomorrow.
[[Move on to part 5]]Part 5 - Backup data extraction...
<div class="letter">-Unlock and carefully remove the MFMS from Hardcase C, unfold MFMS. Allow MFMS to sit for 20 minutes at ambient atmospheric pressure and temperature
-Inspect MFMS for debris or damage.If any defects are observed, refuse delivery and contact manufacturer for support, do not proceed with installation.
-Follow MFMS quick start guide</div>
<<=SugarCube.getLib().Dialogue.speak("heir","huh... So, what is an MFMS?")>>
Must be some kind of fancy mechanical widget...Time to find Hardcase C.
[[Find the MFMS]]<<=SugarCube.getLib().Dialogue.speak("heir","Fuck... Whatever this MFMS is, it weighs a ton...")>>
Of course, It's the biggest case of the set, like 4 feet long, 2 feet wide and a foot and a half tall. You carefully open it, and see the shiny device with a couple documents covering it, titled:
<div class="letter">MARISTECH FARADAY MERMAID SUIT Mk2 prototype (MFMS) - QUICK START GUIDE
</div>
<div class="letter">MARISTECH FARADAY MERMAID SUIT Mk2 prototype(MFMS) - REFERENCE MANUAL
</div>
<<=SugarCube.getLib().Dialogue.speak("heir","Whaat...")>>
You chuck the massive manual to the side, and start flipping through the quick start guide. Perhaps dealing with Marissa and the computer, something like this shouldn't have been a surprise.
Apparently the mermaid suit allows the wearer to covertly swim at deeper "intermediate" depths and longer durations than conventional SCUBA systems, without the tell-tale detectability of traditional ocean-going submersibles thanks to its compact size and a "sonar disrupting nanotube coating".
You double check your watch for the details. So, it turns out, the temporal ansible was never actually on this station, and isn't documented or known to anyone on the station, to avoid discovery. It's actually a couple miles away, and you'll need to wear this MFMS to swim there and back.
But, this thing... it... doesn't seem like something built to "mil-spec" or government spec... It's not like the obligatory utilitarian equipment which seems to be everywhere down here, either. It's like a scaly blue-pearlescent surface. It just looks more like a living thing, or an insanely expensive and very well made work of art, rather than a piece of equipment. You wonder what else might be custom about it.
You unfold it out from the case... It feels life if a mermaid's body had collapsed in on itself... and mermaids were real . The skin... Her skin... it's so smooth - when you touch it, your hand seems to slide right down the surface with no friction at all. It has one large, powerful looking tail, which you unfold.
<<=SugarCube.getLib().Dialogue.speak("heir","That's crazy...")>>
Per the instructions, you flatten out the suit, inspect it for damage, and let it rest while you flip through the next steps.
DONNING SUIT...
<div class="letter">Extract information retention and support capsule from hardcase B.
Tap identification card on base.
Apply liberal quantities of installation lubricant to lateral surfaces and have device operator install...</div>
<<=SugarCube.getLib().Dialogue.speak("heir","capsule... Capsule... Where are you?")>>
[[You find the capsule]]You open the case. And laugh at the contents.
<<=SugarCube.getLib().Dialogue.speak("heir","Why does this thing look like a massive butt plug... Marissa, you had a one track mind...")>>
The cylindrical "capsule" has some kind of electronic connector at the base. You tap it to your card, and it makes some sort of "happy chime" tune after you do so.
For the next step... There's no one you can argue with down here... Also, you're not sure how long all this is going to take, so you strip down, slather the 'capsule' with the provided lube, and slowly work the mass of it deep inside you.
<<=SugarCube.getLib().Dialogue.speak("heir","phhhuhhuhuk...")>>
You have to stop a couple times,as it's a little too intense, but finally, it is seated inside you. Your breathing calms enough for you to look at the next steps.
... [[OPENING SUIT]]...OPENING SUIT
<div class="letter">While the suit is in the empty and dormant state, press the activation ring near the center of the suit to initiate opening...</div>
A helpful diagram shows the activation ring to be a circular nub where you'd expect her genitals to be.
<<=SugarCube.getLib().Dialogue.speak("heir","Here goes.")>>
With a bit of trepidation, you push the button. A dot of yellow light appears where you pressed. It is so subtle, the glow is more like a firefly than a light. The glow slowly spirals around where you pressed with a subtle pulsing of brightness. After about 30 seconds, the light stops spinning, the ring glows a dim green color. The back of the suit splits open, peeling down the middle, to "her" ass. The back of the silvery head flips backwards.
<div class="letter">Orient the suit "face-down"
Activate the MFMS support cart
Attach the support cart harness clips to the retention rings
Connect suit to support device on cart</div>
[[Flip the suit]]The suit... it seems more like a living thing. The inside is quite dark, but what you can see is pinkish - it seems almost organic - but also shiny, in the way it reflects light.
You stick a hand in, out of curiosity... Unlike the dollsuit, the inside is almost warm to the touch... It has a weird slime texture to it. Perhaps more of the neuro-conductive gel? Your hand exposes the opening wider. There is a slightly fragrant floral odor to the suit. The pink "flesh" color seems "healthy" and your subconscious mind is quickly drawn to it... Attracted to the insane idea of immediately putting yourself "inside" of this hollow mermaid...
But first, the cart... You locate the little unfolding rolling cart in another case which extends out from its packed form. There's some machine at the bottom with a cable. The cart has telescoping metal arms on both sides, which you extend out. Both has a set of four nylon straps with carabiners at the ends. You quickly figure out that these can hook various eyelets on the MFMS to support it at a slight angle from vertical to raise it up. It looks like this is designed to make the bulky suit easier to put on than from the floor. A kinky thought runs through your mind... The suit could be suspended for less... scientific endeavors. The cart also has a couple of really sturdy handles at the side, which seem like they will be helpful to help you stay balanced while getting in. There's also some kind of joystick on one side.
Finally you connect the cable from the device on the cart to a matching notch in the narrow of the tail.
<div class="letter">Arrange for operator to remove ALL clothing and accessories, with exception of support capsule and any genital security devices.
Arrange for operator to enter suit feet first, one leg at a time.
Slide arms into matching appendages.
Take breathing orifice into mouth
Press activation ring to initiate operator-suit integration process
</div>
[[You're not sure what that last part implies, but no stopping now.]]<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(true)>>\
You strip out from your clothes, and put it all in a tidy arrangement near the wall.... On one hand, there is something unnatural about this thing, but the intimacy of it kind of turns you on. You're glad you at least have some privacy to do this.
You hesitantly slide one leg into the darkness of the tail. The slimy texture is kind of gross, but your leg quickly works its way down, and your foot finds support with rigid spots between what seems to be the narrowest point of 'her' majestic tail. You grab hold of the cart's side handles, and take your second foot off the ground, to slide into the suit. Gravity is now pulling you into the suit - a nagging thought occurs to you- it could be much harder to get out of this tail, than it was getting in.
Next, you work your right hand into the slender right arm sleeve. Getting your fingers in takes some effort - you feel some goop blow out into your armpit after you work your fingers in. With your now shimmering silver-blue "gloved" hand holding the cart handle, you slide your other arm in, as more of your body finds itself in the gentle embrace of this suit, hanging from the cart. You mesh your two glossy hands together.
You arrange your hair to make sure it will fit under the head of the suit. Unlike most of the skin which is so very sleek and smooth, the fingertips of the suit has some kind of rubberized texturing to give a rather good hold on things. You feel behind the suit - the two sides of the suit don't really want to close on their own, and there's no physical affordance like a zipper to be found.
Finally, you take the "mouthpiece" into your mouth. You're relieved that it is very much just like a diving regulator, passing air normally through a mouth hole in the face. But the inside of the head of the mermaid is opaque. You are plunged in darkness. So mysterious.
<<=SugarCube.getLib().Dialogue.speak("heir","Well, Now or never... Here I go")>>
[[You push the activation ring]]Now, you feel the suit closing in around you, and can't see anything. the back of the "head" comes enclosing around every part of your own. The gap over your spine in the back was open seems to pull itself together like a zipper, starting from above your butt up to just behind your shoulders. You don't feel the air on your naked body anymore. Your ears get plugged, and you feel your closed eyelids in direct contact with a thick gel. Your eyelids resist opening now.
The suit has completely encased you.
<<=SugarCube.getLib().Dialogue.speak("merm","Connecting with advisory capsule.")>>
You then feel muscle fibers of the suit contracting slightly around your body, surprisingly comfortable, sort of similar to how your favorite yoga pants nicely hug your butt. As opposed to almost-crushingly tight, like the dollsuit. Attaching to the "capsule" in deep in your butt... You feel it gingerly pulse inside you a few times.
Finally, you feel a voice speak... in your head.
<<=SugarCube.getLib().Dialogue.speak("merm","<<=SugarCube.getLib().PlayerModel.getHeirName()>>, this is your suit speaking. Identification and mission verified. You are safe inside me. ")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Wait, whutt?! Are you alive?")>>
<<=SugarCube.getLib().Dialogue.speak("merm","No, I am merely a user interaction and guidance program. Please relax for neuralink attunement to complete.")>>
Suddenly, you feel your feet on the floor of the room.
<<=SugarCube.getLib().Dialogue.speak("heir","Wait, is this thing making me taller?")>>
<<=SugarCube.getLib().Dialogue.speak("merm","No, at least not yet, please stand by for attunement to complete.")>>
The room becomes visible, the light seems so much brighter now, your field of view is much wider than normal.
You touch to feel... Her face - it is almost perfectly smooth and rounded, there is no mouth or nose. The hands- encased in smooth, glossy scales which continue up her elegant arms. As you bring your finger up to her eyes... You don't instinctively close your eye when it touches. You find yourself able to blink, but you don't feel any resistance from your finger, as if the eyelid was on the inside the eye.
<<=SugarCube.getLib().Dialogue.speak("merm","Adapting wearer to suit")>>
You feel some discomfort in your chest, and cough momentarily but you can't pin it down, but it passes. Momentarily you feel that tingly sensation as if your leg fell asleep, but for your entire body. It passes. Now, you don't feel your arms or legs as inside the warm, thick suit. Instead you start feeling a gentle draft on the mermaid's scales.
As you look down, the first thing you notice, is her breasts... they are magnificent. And the feeling of the floor, you realize is her sensitive tail resting upon it. The room feels so very... Dry on her... scales. You feel... Naked in the room. A body like this belongs in water... You suddenly feel an irresistible craving to be in the water.
<<=SugarCube.getLib().Dialogue.speak("merm","Enhancing tail geometry")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Owww. That hurts!")>>
You feel a sharp pain and some hear dull popping sounds. It feels like your legs are being drawn together and stretched out. Where the flat end of the tail felt loosely connected, it now feels as if it were your feet and all part of you. The pain has subsided, fortunately.
<<=SugarCube.getLib().Dialogue.speak("heir","Phew... I hope that doesn't leave a mark.")>>
[[Check the instructions for next step]]You are just out of reach of the guide notes, so use your weight and awkwardly kick with your tail to shift the cart within arms reach of it. Finally you pick it up.
<div class="letter">Operator can transition to internal instructions using the thought word "advise".
</div>
<<=SugarCube.getLib().Dialogue.speak("heir","advise")>>
<<=SugarCube.getLib().Dialogue.speak("merm","STATUS: Suit is integrated with wearer. Extending riding platform for mermaid transportation mode. Operator, please move self to water lockout cell.")>>
Right now your tail is on the floor - A "V" shaped platform rises up from the cart, stopping at a height which allows you to rest your knees, and then a back plate starts tilting upward, giving your tail some support.
<<=SugarCube.getLib().Dialogue.speak("heir","Where is that? And how? I can't walk like this!")>>
It's feeling like a desert in here - Was it always so dry in here?
<<=SugarCube.getLib().Dialogue.speak("merm","Proceed forward and turn right at corridor. Use the cart control stick below rest handle. Activating navigational homing system.")>>
[[You try to control the cart]]You make an attempt to control the cart with the joystick - it's crazy sensitive and jerky. After a few awkward movements, you figure out how to slowly cart your mermaid booty over there. You see a set of animated navigational arrows in your field of vision. As you get closer, you feel accelerating pulses from the plug-capsule in your ass reinforcing the message you are getting closer to the destination.
<<=SugarCube.getLib().Dialogue.speak("heir","That's a curious choice...")>>
You can only imagine what a silly sight you would make, this bluish mermaid, with an ungainly tail, kneeling on top of a tiny wheelchair-like cart as it rolls around dry ground.
<<=SugarCube.getLib().Dialogue.speak("merm","We are arriving at our destination. Holding wheels in parking mode. Lowering riding platform. Detach support cable and suspension clips to release self from cart, and open inner water lockout cell door.")>>
You disconnect yourself from the cart's clips one by one, and flop yourself onto the floor. Shimmying on your tail-knees to the inner water lockout hatch on the floor, you see two indicators. One saying "outer door closed", and another "safe to open inner door". You open the inner water lock door along the well. Once opened, the water vapor rising out from the lock feels so fresh and inviting.
<<=SugarCube.getLib().Dialogue.speak("merm","Operator, lower us into the water and activate pressurized swim mode with thought-word 'aquatic' and prepare for phase transition.")>>
You slowly slide in with the tip of your tail looking into the water. You push your ankles into the water - sitting at the edge with the water, the cooling effect is nice. You love the sensation of how the turbulent water plays across your scales.
You turn around and lower yourself, using your arms to steady yourself into the water. You don't feel any kind of cold shock around your groin. You dip in with the water to breast depth. You feel your body relax, immersed in the water like this.
[[Activate swim mode]]<<=SugarCube.getLib().Dialogue.speak("heir","Aquatic")>>
And just like that, you start feel the skin to the sides of your breasts starting to move on its own. Suddenly you feel the suit compress itself around your body. It is a little uncomfortable, just shy of painful, but similar to the dollsuit, so you can tolerate that. As you see the incredible curves it bestows onto you, this seems to be another one of those times, where beauty entails discomfort.
Oh fuck. Something seems to have gone wrong! The mouthpiece is suddenly flooding with water. No, to die by drowning, trapped in this fiendish suit, with air so close but so far. This must be how it feels like for people getting waterboarded.
[[Try to find a way to get the mask off]]
[[Try to stay calm and hope for the best|Try to find peace in the moment]]<<=SugarCube.getLib().Dialogue.speak("heir","Wait, stop... I... (cough) can't (cough)")>>
You start freaking out, trying to find a way to disengage or stop it... It's too late to get out. You are completely trapped inside this thing. The mouth hole for breathing has sealed shut. The face is so perfectly smooth, there's no mask to remove or a way for you to get the your mouth to fresh air before you drown! You try the button, but no effect! How would anyone find or recover your dead body in this sealed room?
[[You try to be stoic|Try to find peace in the moment]]You try to collect yourself, and hear:
<<=SugarCube.getLib().Dialogue.speak("merm","Do not panic. You are safe, you are not drowning. Your lungs are being irrigated with a breathable, oxygen rich mixture of conditioned liquid perfluorocarbon.")>>
<<=SugarCube.getLib().Dialogue.speak("merm","However, liquid fluid exchange in your lungs is insufficient for normal respiration. Your bloodstream is now being oxygenated by gas exchange by our gills.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","What?!")>>
<<=SugarCube.getLib().Dialogue.speak("merm","Our gills will allow your body to obtain sufficient oxygen and to discharge carbon dioxide without a supplemental payload using the surrounding water. Have you regained awareness of your situation?")>>
With your lungs full of the fluid, you realize it is true, you aren't drowning.
That said, this breathing in water thing is unsettling. You are feeling quite out of your element. Ironic that one would describes this sort of predicament as being like a fish out of water.
<<=SugarCube.getLib().Dialogue.speak("heir","Fuck... That was really scary, you could warn a girl, you know? Something like, 'oh, by the way, you won't *really* be drowning with water in your lungs while trapped inside of this sexy but absolutely claustrophobic suit'...")>>
It felt good to get that off your chest.
<<=SugarCube.getLib().Dialogue.speak("heir","Ok, yes... I'm fine.")>>
<<=SugarCube.getLib().Dialogue.speak("merm","Apologies. The creators of this program designed it with the expectation that the operator of this advanced system has thoroughly reviewed the reference manual before first use.")>>
As you regain your calm, the "gills" behind your breasts are gently swaying in the water. The way they rhythmically sway is almost hypnotic to watch.
<<=SugarCube.getLib().Dialogue.speak("merm","Now, please close the inner hatch and equalize exterior pressure for opening outer hatch.")>>
You close the inner hatch and press an "exterior equalization" button.
<<=SugarCube.getLib().Dialogue.speak("heir","Ok, inner hatch is closed")>>
You see a green "unlocked" light blinking for the outer hatch.
<<=SugarCube.getLib().Dialogue.speak("merm","Next, please open the outer hatch.")>>
[[Perform a 'self-inspection' of the suit before departing]]
[[You open the outer hatch and depart the station]]<<=SugarCube.getLib().Dialogue.speak("heir","I'm sorry, I think I'm a little tired from the diving, I'm not really keen on a movie right now. Uhh, I'm really busy with work, not much time for dating or that kind of thing right now.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, uhh - no biggie... Oh, shoot I forgot to clean up the filters in the lab... Sorry, I have to run!")>>
She feigns a smile and quietly makes a beeline for the exit.
[[Station Moonpool]]<<=SugarCube.getLib().Dialogue.speak("heir","Thanks for the offer. You've been really helpful, and working with you has been fun. But, I was just supposed to do a call to my SO tonight. You know how things can get busy sometimes.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Oh... yeah, of course. Work gets crazy and pesky calls with SO's, ha ha.")>>
She makes a wacky face, holds up her hand as if holding a phone and bobs her head as if she's talking on said phone. She doesn't normally get too animated, but she seems to be over-compensating to seem chipper.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, no biggie. Anyway, well yeah... Ok, maybe some other time")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Enjoy your movie!")>>
She quietly makes a beeline for the exit.
[[Station Moonpool]]You arrive in the Galley to find the room darkened, with a projector showing a title screen for a nature documentary.
As you arrive, you see margaret taking a baking sheet out of the oven. There's a bottle of some cheap looking white wine in an ice bucket, and a couple mess hall tumblers. Some shuffling noises in the kitchen, and then she is walking over with a tray and a bowl.
<<=SugarCube.getLib().Dialogue.speak("biol","Ok, confession time... I'm a fiend for these Zucchini Spears.")>>"
<<=SugarCube.getLib().Images.drawAction("zuccini-spears.jpg")>>
<<=SugarCube.getLib().Dialogue.speak("biol","And this other bowl has roasted chickpeas with seasonings. You won't be able to eat just one.")>>
<<=SugarCube.getLib().Images.drawAction("chickpeas.jpg")>>
She sets the snacks up on the table in front of you two, and pours servings of wine in the plastic mess tumblers.
<<=SugarCube.getLib().Dialogue.speak("biol","Sorry, no glassware here. Shall we start the movie?")>>
It's admittedly not a particularly elaborate setup, but you can tell she took some effort in preparing this stuff.
The documentary has some incredible scenes of vivid color and action. You wonder how long the camera crews took to get those amazing shots.
<<=SugarCube.getLib().Images.drawAction("nature-documentary2.jpg")>>
[[The movie continues]]You shiver, and feel yourself getting a little cold from a draft, you look up and notice the air has started blowing from a vent.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, are you feeling that too? The AC sometimes can be aggressive when it comes on, and I could never figure out how to stop it. I sometimes bring this blanket to cover my lap for when I'm watching tv here.")>>
She pulls a fleece blanket out from her bag.
<<=SugarCube.getLib().Dialogue.speak("biol","I'm going to throw this on my lap... Want to share this blanket with me?")>>
[[No I'm fine]]
[[Please, that sounds great!]]The blanket isn't super wide, so you find yourselves seated a little closer... The scenes of the documentary are quite captivating, but your attention isn't entirely on the movie.
<<=SugarCube.getLib().Images.drawAction("nature-documentary.jpg")>>
You feel her hand gently grazing the outside of your leg. You glance over to her. She shyly gazes down and away. But you also see what might be a coy smile.
<<=SugarCube.getLib().Dialogue.speak("biol","My back and shoulders are so sore from lugging around those heavy scuba tanks this morning. ughh...")>>
She rubs the back of her neck, but she can't really reach very well...
[[Rub her shoulders]]
[[Sorry to hear that|The film continues]]The scenes of the documentary are quite captivating...
<<=SugarCube.getLib().Images.drawAction("nature-documentary.jpg")>>
[[The film continues]]<<=SugarCube.getLib().Dialogue.speak("heir","Let me get that.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, could you? You're the best.")>>
She unzips her jacket down, giving you better access. You oblige with kneading her shoulders and back as you watch the film. She's right next to you. Her legs are putting out heat. You can hear her breathing is excited.
<<=SugarCube.getLib().Dialogue.speak("biol","That's nice. Could you go a little lower on my back? If you want to put a little more pressure, I can handle it.")>>
She winks at you. You reach up from under her shirt to massage her lower back. You oblige and really work your thumbs in. She bites her lip and leans her back into your grip. She then slides a hand under the blanket and between your thighs.
[[You continue]]Her deep breaths are audible, as you make slow circling motions over her back. She is stroking her fingers over your clothed inner thighs. She turns to face you and move her face closer to yours as...
The mess hall door loudly opens. Titus enters the darkened room. You discreetly shift your hands out from Margaret's back. She still has hers in your lap.
<<=SugarCube.getLib().Dialogue.speak("merc","Hey nerds! What'cha watching?")>>
Before either of you can respond he's already figured it out. A baby lizard is being chased by a legion of hungry snakes
<<=SugarCube.getLib().Dialogue.speak("merc","Oh! That's one of those nature documentaries! I didn't realize it was movie night! Look at that little lizard go! hehe")>>
<<=SugarCube.getLib().Images.drawAction("sneks.jpg")>>
<<=SugarCube.getLib().Dialogue.speak("merc","Hah! The little bastard made it!")>>
Bar goes to grab a can of beer from the fridge and grabs a seat at the table. You're a little surprised the gruff mercenary would join you for this.
<<=SugarCube.getLib().Dialogue.speak("merc","Oh, these look nice. Can I?...")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Be my guest...")>>
Margaret gestures at the food. He grabs a bite of one of the spears.
<<=SugarCube.getLib().Dialogue.speak("merc","Oh, this has just a little heat. What is that spice, Coriander?")>>
Meanwhile, her hand is continuing to slowly play in your thigh gap under the blanket. She's been probing around your <<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>chastity belt<<else>>chastity cage<</if>>. It's hard to think straight at this point, but not enough to give you release.
You hear the door...
<<=SugarCube.getLib().Dialogue.speak("eng","Noche de cine!")>>
Bar hoists up a beer to salute your colleague, who grabs a beer as well, and gets seated about a foot away from you. He seems oblivious of Margaret's hand. You look at her - The movie is almost over, and the two of you can soon have some girly fun in private.
[[The film ends]]The mess hall door loudly opens.
<<=SugarCube.getLib().Dialogue.speak("merc","Hey nerds! What'cha watching?")>>
Before either of you can respond he's already figured it out. A baby lizard is being chased by a legion of hungry snakes
<<=SugarCube.getLib().Dialogue.speak("merc","Oh! That oh one of those nature documentaries! I didn't realize it was movie night! Look at that little lizard go! hehe")>>
<<=SugarCube.getLib().Images.drawAction("sneks.jpg")>>
<<=SugarCube.getLib().Dialogue.speak("merc","Hah! The little bastard made it!")>>
Bar goes to grab a beer from the fridge and grabs a seat at the table. You're a little surprised the tough mercenary would join you for this.
<<=SugarCube.getLib().Dialogue.speak("merc","Oh, these look nice. Can I?...")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Be my guest...")>>
You hear the door...
<<=SugarCube.getLib().Dialogue.speak("eng","Noche de cine!")>>
Bar hoists up a beer to salute your colleague, who grabs a beer as well, and gets seated about a foot away from you...
Eventually the movie wraps up, and you help Margaret clean up.
You're tired from the dive, so you go to your bunk to [[Sleep|Sleep on research station - Recurring]]<<=SugarCube.getLib().Dialogue.speak("merc","I gotta admit, that was a pretty nice way to unwind. A toast to the hostess for getting the crew together for a movie night!")>>
Everyone is willing to drink to that.
<<=SugarCube.getLib().Dialogue.speak("merc","But, Elso just got in... We can't stop there. Who's got a hankering for another movie? Oh, I know just the thing for our rookie here...")>>
He flips through the old DVD collection to find what he's looking for.
<<=SugarCube.getLib().Dialogue.speak("merc","Deep Blue Sea... Just the thing for right before bed on a station like this, haha! Samuel L Jackson has a speech that is to die for.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Ok, I'll admit Saffron Burrows is kind of a bad-ass in this one...")>>
<<=SugarCube.getLib().Dialogue.speak("merc","Well, yeah - she's a stone fox. Who wouldn't tap that, right?")>>
Bar puts out his Beer - Elso clinks his bottle with it. Did he even understand what he said? Margaret is blushing a little and smiling at you.
<<=SugarCube.getLib().Dialogue.speak("merc","So, Rookie are you gonna watch, or chicken out on us?")>>
No thanks (The peer pressure is far too great)
[[uhh, sure]]As the room goes dark with the new movie, Margaret gives your thighs a break. It's good she's being careful about not getting caught out by the others.
You start watching the film... It's a goofy sci-fi horror B-Movie...
At a point where there's a lull in the action, Margaret caresses your back - it feels nice. There's an interesting speech by one of the characters as the party rallies together...
<<=SugarCube.getLib().Images.drawAction("deep-blue-sea2.jpg")>>
But, this is a horror movie, so the situation becomes more desperate. This movie seems to have opted to titillate, rather than being high brow. You can forgive them on that.
<<=SugarCube.getLib().Images.drawAction("deep-blue-sea.jpg")>>
It is a little unsettling to see a movie about being on a sinking research station trapped with sharks, but you remember it's all hammed up for the drama on the big screen, and none of it is real. Eventually, the movie comes to a climactic ending, and everyone gets up as the party breaks off.
<<=SugarCube.getLib().Dialogue.speak("heir","I'll give you a hand with cleaning up?")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Thanks - sure, could you put that stuff in the garbage and wipe the table? Have a good night boys.")>>
<<=SugarCube.getLib().Dialogue.speak("merc","Thanks again, good night all.")>>
Bar lets out a hearty belch, crushes his can, throws it in the garbage and struts out.
<<=SugarCube.getLib().Dialogue.speak("eng","buenas noches!")>>
Elso waves and leaves.
[[You start cleaning up]]The men head off, and you two are once again left alone... After you've put things away in the kitchen, Margaret jumps on you, clamping her petite legs around your waist, and starts kissing you, almost knocking you off balance. You shift her onto the counter, where the two of you continue what is a long make-out session. Meanwhile, her hands are exploring your back, and lower...
<<if SugarCube.getLib().Slot.get("ass") != null >>\
She gets a hand under your panty, and gets hold of your buttplug. She doesn't have a strong grip from where she is, but she starts rocking it in and out with her gentle touch. You can't help but moan...
<<else>>\
She gets a hand under your panty, and starts fingering your ass. It's a bit of a stretch from where she is, so she doesn't go deep with that one finger, but you feel her gentle touch nonetheless. You can't help but moan...
<</if>>\
<<=SugarCube.getLib().Dialogue.speak("heir","ohhhh")>>
<<=SugarCube.getLib().Dialogue.speak("biol","You really like that, don't you? Oh, I bet you're still hungry...")>>
She makes her way to the fridge.
<<=SugarCube.getLib().Dialogue.speak("heir","No actually those snacks were nice, but I'm pretty full.")>>
She pulls out a couple large cucumbers. With a mischievous look, she responds... and rubs one of the cucumbers over her crotch.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, honey - I saved these for us... But, we're not making a cucumber salad with these ones. And I don't think you're close to full yet.")>>
She puts them in her bag, and the two of you [[head to her office]]. The guys never go there.<<= SugarCube.getLib().MirrorUX.saveLastOutfit()>>\
<<= SugarCube.getLib().MirrorUX.removeExplicit(["penis","ass"])>>\
After a quick detour to grab some condoms from her bunk, you descend together to her office. She lays the blanket on the floor, and the two of you start kissing, and tearing your clothes off of each other like some wild animals fit for that documentary.
Margaret can't wait - she bends over, adds some lube to a cucumber and plunges it between her legs.
<<=SugarCube.getLib().Dialogue.speak("biol","Ohh god, it's still so cold from the fridge...")>>
You take the hint, and get in behind her, <<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>fucking her with it as if you were a man and the cucumber were your dick. Well, in a sense you "were" a man, but you are very much now fucking her "as if" it were your dick. <<else>> fucking her with the cucumber. You feel slightly envious of the vegetable inside her... Your tiny remnant remains trapped in a dainty cage unable to feel or pleasure her, but you do have to admit you have some gorgeous curves, at least.<</if>>
<<=SugarCube.getLib().Images.drawAction("cucumber-fuck.jpg")>>
Margaret passes through some orgasms that way, until you both start to get bored with "fucking" her that way...
You continue to toy her with the vegetable with one hand, while you start licking her sweet folds and caress her with the other. You like the way she tastes, and from her moans, she seems to enjoy the closer attention you provide her clit.
<<=SugarCube.getLib().Images.drawAction("cucumber-lick.jpg")>>
You start to pick up the pace, ream her with deeper plunges of the vegetable, setting her off with spasms in a delirious orgasm. As she comes back from the highs of that, she stands up and cradle the cucumber between her lean legs, in front of your face. You hear a contrived "tough girl" voice which is incongruous with the Margaret you know.
<<=SugarCube.getLib().Dialogue.speak("biol","Come on bitch, you know you want it.")>>
You can't help but laugh at her say that... However, it's just a vegetable, between the legs of this gorgeous woman, gesturing for some more oral sex.
You start working on taking girth of it, as you have fun with her and try to impress her with how good you are at that. It's weird how relaxing it is to have your mouth filled up like that. Margaret takes it nice and slow.
<<=SugarCube.getLib().Images.drawAction("cucumber-suck.jpg")>>
She's starting to get aroused as your putting pressure on her pussy lips with it.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, oh... I'm coming!")>>
Her getting turned on like that kind of gets you excited, so you work your head even faster on on the "shaft", and you see some wetness squirting out of her.
<<=SugarCube.getLib().Dialogue.speak("biol","Mmm... That was really good.")>>
She takes the cucumber out, presenting the girlcum laden end to you, as she slides the other end into her own mouth. The two of you attempt to deepthroat it, lady-and-the-tramp-style, as you stare into each other's eyes...
<<=SugarCube.getLib().Images.drawAction("cucumber-kiss.jpg")>>
As it happens, neither of you can take anything close to that in your respective mouths, nor are super aroused at that experience, but you have a good laugh at the attempt.
[[Margaret reaches a hand toward your groin]]<<=SugarCube.getLib().PlayerModel.triggerSexualRelease(false)>>\
<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>\
Margaret puts a hand to your belt, and rubs it up and down.
<<else>>\
Margaret puts a hand to the chasti-flex, and rubs it up and down.
<</if>>\
<<=SugarCube.getLib().Dialogue.speak("biol","So, when I do this... Do you feel anything from that?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","No, I haven't been able to get stimulated there, when wearing it. But...")>>
<<=SugarCube.getLib().Dialogue.speak("biol","but?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Well, I've become really sensitive to having orgasms... You know, back there...")>>
She responds coyly. She turns her head to look behind her.
<<=SugarCube.getLib().Dialogue.speak("biol","Back there? Back where?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","sigh...")>>
You get on your knees and turn away from her. She gives your ass a quick slap, you whelp. She puts a condom on the veg and lubes it up...
<<if SugarCube.getLib().Slot.get("ass") != null >>\
She toys with your plug, rocking it back and forth, and then pulls it out before sliding the cucumber into you, her other hand caressing your back.
<<else>>
She then toys the cucumber around your behind, before insistently sliding into you, her other hand caressing your back.
<</if>>
<<=SugarCube.getLib().Dialogue.speak("heir","Ohh. ho hohhh...")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Shhhssh")>>
She pumps you with it so slowly. You can feel your excitement rising... It's been a little while since you last felt an orgasm. You can't help but clench tight on it. Margaret seems to be getting into teasing you this way, as she whispers into your ear.
<<=SugarCube.getLib().Dialogue.speak("biol","That's it, cutie... ")>>
The two of you start to work up a good rhythm. Margaret is really into this now. She slaps your ass a couple times and says:
<<=SugarCube.getLib().Dialogue.speak("biol","Mmm, yeah baby! Take my big... green... sexy... uhh... cucumber cock..")>>
She sounds so ridiculous saying that, you start to laugh. Something about the laughter triggers something else and pushes you over the edge... You feel your body cumming as waves of orgasmic relief pass through you.
<<=SugarCube.getLib().Dialogue.speak("heir","ohh... I thought I was going to explode. Mmm...")>>
She, runs a hand along your shoulder and grabs a cloth to wipe some dribble that starts coming out of your chastity device. You look at the clock - it's late. Real late.
<<=SugarCube.getLib().Dialogue.speak("heir","Oh Fuck, we were really going at it for that long?")>>
<<=SugarCube.getLib().PlayerModel.triggerSexualRelease(false)>>
[[You both start getting dressed]]<<= SugarCube.getLib().MirrorUX.restoreLastOutfit()>>\
She gives you a quick peck on the lips, and is starting to get dressed.
<<=SugarCube.getLib().Dialogue.speak("biol","Yeah- I lost count of how many times I... uhh, That was nice.")>>
You are starting to do likewise, as she's tidying up the scene of the crime. You both quietly take the stairs to quarters and go to your respective bunks.
[[You arrive at your bunk]]It's soo late...
<<=SugarCube.getLib().Images.drawAction("quarters.jpg")>>
[[Sleep|Sleep on research station - Recurring]]<<if !SugarCube.getLib().PlayerModel.canWork()>>
You are too tired to work right now. Try tomorrow.
<<else>>
You suit up once more with Margaret to go out for your real dive.
For this one she has you controlling a drone to tow the equipment and back her up on installing the remote platform ansibles.
<<=SugarCube.getLib().Images.drawAction("underwater-drone.jpg")>>
The drone is a big help with lugging the gear, and you use it to spare a bit of effort at swimming. It's also kind of fun to use.
The first 12 platforms at shallower depths go pretty quick. Just practicing the dive techniques was a bit of work on your check-out dive... Having to actively work through the install checklists with Margaret, while being careful to avoid mistakes was physically and mentally exhausting for you. You come out of the water...
<<=SugarCube.getLib().Images.drawAction("second-dive.jpg")>>
You stay in your wetsuits and unwind at the moonpool for about half an hour. Margaret gets a fresh set of tanks ready for the second round.
The second dive has the two of you replacing another 8 ansibles on remote platforms, it's fewer of them, but the deeper water means you are using your air more quickly at the higher pressure, and have less time to work. Fortunately two sets of hands make the work move considerably quicker. Margaret was a lot better at this stuff than you, but she seems glad that you were able to lend a bit of support while she does this work.
<<=SugarCube.getLib().StationWork.completeTask("install-ansible-transceivers")>>\
<<=SugarCube.getLib().Tasks.addTask("remove-old-ansible")>>\
<</if>>
[[Go somewhere else|Sea Station]]<<if !SugarCube.getLib().PlayerModel.canWork()>>
You are too tired to work right now. Try tomorrow.
<<else>>
You get set up in the bridge to help Margaret perform the installs of the new remote platform ansibles.
<<=SugarCube.getLib().Images.drawAction("control-room.jpg")>>
For this, she has you controlling a remote drone to help lug around the replacement parts, and keeping track of her vitals for the long dive.
<<=SugarCube.getLib().Images.drawAction("underwater-drone.jpg")>>
Due to short amounts of bottom time where some of the platforms are, Margaret stops the dive after switching 13 of the ansibles at shallower depths, to take a 30 minute break at the moonpool, and switches a new tank. From there, she does another 7 at moderate depths, followed by another break. By the end of the second dive, you can hear some stress in her voice, and she comes back from that. Finally, she goes out for a deep dive to swap out 4 transceivers on the deepest of the remote platforms, heading back with just moments to spare.
<<=SugarCube.getLib().StationWork.completeTask("support-ansible-transceiver-install")>>\
<<=SugarCube.getLib().Tasks.addTask("remove-old-ansible")>>\
You meet and congratulate her on changing the equipment - it seemed like tough work. She seems completely exhausted, but happy to be done, at least. Now, you just need to remove the old ansible for this station, and your work here is done.
<</if>>
[[Go somewhere else|Sea Station]]<<if !SugarCube.getLib().PlayerModel.canWork()>>
It's too late to do this right now. Try tomorrow.
[[Go somewhere else|Sea Station]]
<<else>>
<<=SugarCube.getLib().Dialogue.speak("merc","So, the nerds are done playing in the sand? Looks like you picked a good time to wrap things up. Radar has the storm finally clearing up.")>>
<<=SugarCube.getLib().Dialogue.speak("merc","Looks like the Heli will be coming in, in about 20 minutes. You've got some time to gather your gear.")>>
[[Collect your stuff from your bunk]]
<</if>><<=SugarCube.getLib().StationWork.completeTaskNoPay("prepare-to-leave-station")>>
You hustle down to your bunk. You clear off the sheets and towels and take them over to the station laundry. Finally, you collect your stuff from the locker and bundle it together.
You get back up to the bridge with a few minutes to spare. Margaret is lounging up there.
<<=SugarCube.getLib().Dialogue.speak("heir","... It's time for me to clear out.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Thanks for the help here on the station! These last few days were... good.")>>
There's a certain look in her eyes, and you and Margaret awkwardly have a light hug.
<<=SugarCube.getLib().Dialogue.speak("heir","uhh, thanks for showing me the ropes with... things here.")>>
From behind her, you can see the dot on the radar screen.
<<=SugarCube.getLib().Dialogue.speak("merc","Helicopter is approaching the deck, better bring up the cart.")>>
You and Margaret take the elevator down to the hold. The heavily loaded cart takes a bit of effort, but the two of you pull it back, onto the elevator.
<<if hasVisited("Margaret reaches a hand toward your groin")>>\
[[Kiss Margaret]] in this quiet moment alone
<</if>>\
[[Press the Elevator Button]]The two of you aren't really sure what to say to each other at this point.
[[You arrive at the top stop]]The two of you only have a moment to yourselves, but you try to savor that last little bit as the elevator ascends.
<<=SugarCube.getLib().Images.drawAction('marg-lez-kiss.jpg');>>
<<=SugarCube.getLib().Dialogue.speak("biol","mmm... Don't be a stranger. Maybe we can bump into each other again some time?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","I could think of worse things...")>>
[[You arrive at the top stop]]The elevator arrives. You and Margaret hustle the gear to the side of the helicopter platform. After less than a minute, Bar arrives up top, and the helicopter descends toward the station.
Suddenly, it has landed and everyone is running the gear onto the helicopter. Before you know it, everything is loaded on.
[[Fly back to Montevideo]]The helicopter trip back seems to go quicker, the wind seems to be helping you out on this one.
<<=SugarCube.getLib().Images.drawAction("helicopter.jpg")>>
The familiar sight of the city comes into view.
<<=SugarCube.getLib().Images.drawAction("montevideo.jpg")>>
Again, at the airport, a private jet is waiting for you at a hangar. The staff loads everything up, and you are immediately taken to the cabin on the jet.
Your watch beeps at you now that you're back in cell-service range.
<<=SugarCube.getLib().Dialogue.speak("computer","Welcome back. I hope your trip was a safe one. I see from the cargo data, you successfully obtained the temporal ansible data. It will be integrated with my core on your return.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","It was an interesting trip. I might have liked a little more time to get used to things there. Maybe have a bit of fun with the researchers there.")>>
<<=SugarCube.getLib().Dialogue.speak("computer","Fun may be had at times, but the Heiress of Maristech Corp must stay mindful of the bigger picture. Speaking of which, we have something of an urgent situation which has arisen with a member of the executive staff. This will require your personal attention at the earliest opportunity. Due to the sensitivity of the situation, we can discuss further from the console.")>>
[[You sleep on the flight home]]You have the flight-hostess serve you a couple drinks and try to sleep through your flights back home.
<<=SugarCube.getLib().Images.drawAction("aircraft-interior.jpg")>>
After numerous hours in the jet, you feel a bit tired and jet lagged when you return to your home airport.
<<=SugarCube.getLib().Tasks.addTask("deal-with-problem-exec")>>
Finally, self driving car gets you back to the house in no time flat. You see it coming into view... After so long on the austere station, it's a little weird to think that you are going "home", and this is your "normal" life.
[[Baldric House]]<<if !SugarCube.getLib().PlayerModel.canWork()>>
You are too tired to work right now. Try tomorrow.
[[Go somewhere else|Sea Station]]
<<else>>
You signal to Margaret that you're ready for your dive.
<<=SugarCube.getLib().Dialogue.speak("biol","Hey! Good to see you're ready for this!")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Normally you could shop around to get your own equipment beforehand, but we'll need to make do with a stock fit using what we have here on the site.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","What does that mean?")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Well, I might have slightly overestimated our inventory.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Slightly underestimated?")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Well, they said this station used to handle a lot of visiting divers. Unfortunately, I guess people didn't take care of the loaner equipment very well. There's a few torn up Men's medium suits. A moldy old Women's medium... I'll just say you wouldn't want to touch that thing with a 10 ft. pole- that one needs to be purified in fire.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","There was a couple suits that were not in half bad shape. But they were a Men's Large and Women's XL suit... Looking at the measurements, both of those would just flush water for you, and you'd be experiencing hypothermia in less than a minute. But it'll be fine. You can borrow my alternate suit, it's a 7mm women's small.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","But, aren't you a lot smaller than me?")>>
Margaret is built like a pixie - maybe a little more than 5 feet tall. If she was any shorter, she'd need to dive in a kids' wetsuit.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, come on, maybe I'm only a bit more shorter than you... I mean, ok maybe it can be a tad snug for me, but I'll give you a helping hand if you need. We can apply a bit of talcum power to give you a head start.")>>
Rather than bother trying to find some measuring tape, she puts her arms parallel, straight out from her waist and closes in, with her hands on your sides.
<<=SugarCube.getLib().Dialogue.speak("biol","Look, see- our waists are practically the same size.")>>
She seems to have convincingly demonstrated that yes, you both have similarly sized waists.
<<=SugarCube.getLib().Dialogue.speak("heir","I don't know. Are you sure this will work?")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Oh come on... These high performance dive suits are designed with highly flexible rubber compounds. If I thought you would tear or stretch out one of my awesome wetsuits, I wouldn't chance that. Where's your spirit of adventure? You wouldn't want to spend your time bottled up here when you could see all the beauty outside, would you?")>>
She's so preoccupied with convincing you to wear the suit, she still hasn't moved her hands from your sides... It's kind of distracting.
<<=SugarCube.getLib().Dialogue.speak("heir","Uhh, I guess you're right")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Awesome. I get to watch you have your first time - this is going to be sweet!")>>
[[Put on diving wetsuit]]
<</if>><<=SugarCube.getLib().PlayerModel.togglePlayerHidden(true)>>\
You apply a bit of talcum, and slide your legs into the suit. This one has nylon facings on the inside and outside, which helps move fairly gently and it is pretty durable against your nails which is a relief. As you pull the narrower part up your calves you start to feel some resistance. As the legs reach your thighs, you're starting to feel a gentle pressure around your legs. It soon gets stuck not making progress, and you would hate to damage her suit. Right now the suit is kind of dangling off your thighs with another foot to go, so you have to carefully waddle to her.
<<=SugarCube.getLib().Dialogue.speak("heir","umm, sorry - I don't think I can fit this one, and I wouldn't want to damage it.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","heh heh... Oh, don't be silly. You're almost there - let's see here.")>>
She comes up close in front of you and pulls up on the waist of the suit. From this angle she tries, but isn't able to get great leverage.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, this might need a little more. We'll get you in this thing.")>>
She moves to go behind you. She pulls up on the wetsuit again. The leg moved a bit. She shuffles some material up your leg. She pulls up on the suit again. A little bit more. The two of you repeat this little dance as she pulls the suit up from side to side. You feel her soft breasts on your back, and her elevated breathing on your shoulder, with your tush bumping into her groin.
<<=SugarCube.getLib().Dialogue.speak("biol","ughh... Hehe... (groan) You're almost there!")>>
Finally, with a feat of strength she has you lifted up with a pull of the suit, a stubborn air pocket "farts" giving way to gravity, and you feel yourself suddenly fall several inches into the waist of the suit. \
<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>\
The pressure gets transmitted through your chastity belt and dilator, which gets you feeling a little more wet and aroused.
<<else>>\
You feel what is likely small sputter of precum from your chasti-flex at the sudden stimulation.
<</if>>\
<<=SugarCube.getLib().Dialogue.speak("heir","Ohhh.")>>
With your waist settled in nicely, you slide your arms into the sleeves. You pull on the back zipper, but it seems to get caught, the back part has some trouble getting closed, so you ask Margaret to help zip you up.
<<=SugarCube.getLib().Images.drawAction("wetsuit-back-zipper.jpg")>>
She clears out the jam of the zipper and runs her hands over the small of your back, as she zips you up. From there, she runs her hands all over your suit to straighten up any spots that aren't quite lined up. She right and then says:
<<=SugarCube.getLib().Dialogue.speak("biol","Ok, that was a bit tricky to put on... But, it actually fits you really well from what I can see. It looks like a second skin, like no wrinkles, folds or loose material. Try move your arms now - it's good if it feels a bit tight to keep warm water in, but we need to make sure there's no pinching, you can comfortably breathe and that you have your full range of motion. Does that feel ok?" )>>
<<=SugarCube.getLib().Dialogue.speak("heir","Yeah, it's fine, thanks!")>>
More than fine maybe... It was snug to put on and feels a bit weird, but the protection of the soft, thick suit which follows the curves of your body makes you feel like a superhero or something. You take some selfies to capture the novelty of the moment.
<<=SugarCube.getLib().Images.drawAction("wetsuit-smooth-chest.jpg")>>
Some girls complain that wetsuits don't make them look good, but you kind of like shape your boobs take under the rubber. The gentle pressure the tight suit exerts on them isn't unpleasant.
<<=SugarCube.getLib().Images.drawAction("wetsuit-bathroom2.jpg")>>
<<=SugarCube.getLib().Images.drawAction("wetsuit-selfie.jpg")>>
Now, it's time to get in the water.
[[Get in the water]]You collect your booties, gloves and hood, and then arrange your required equipment on the floor based on the lessons for an open water dive. It's exciting, but also you are concerned about making some kind of deadly mistake.
Before you go for your dive, Margaret wants you to first pop into the moonpool to demonstrate that you can safely swim a couple lengths unassisted.
<<if SugarCube.getLib().Skills.get("swimming") <= 5>>\
You struggle quite a bit with your swimming. Margaret is very apologetic as she helps pull you out of the water.
<<=SugarCube.getLib().Dialogue.speak("biol","I'm sorry, it would be irresponsible for me to take you out with your current swimming abilities. I'll certify that you've completed the theory components, but we'll have to cancel this checkout dive.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","The next step is for you to install the station's replacement ansible. After that, I'll deal with installing the remote ansibles outside the station, but I could use your help to coordinate the install from the bridge.")>>
<<=SugarCube.getLib().StationWork.completeTask("check-out-dive")>>\
<<=SugarCube.getLib().Tasks.addTask("support-ansible-transceiver-install")>>\
<<=SugarCube.getLib().Tasks.addTask("install-replacement-ansible")>>\
[[Station Research]]
<<else>>\
<<if SugarCube.getLib().Skills.get("swimming") <= 20 >>\
You notice that with the suit and the buoyancy of the salt water, you glide through the water with less effort than back at your swimming pool.
<<=SugarCube.getLib().Dialogue.speak("biol","Cool, ok that looks good. You'll be able to handle yourself in the water. You can get out for a breather, and then we'll go for our dive.")>>
<<else>>\
With the suit and the buoyancy of the salt water, swimming takes less effort than you are used to in the pool.
<<=SugarCube.getLib().Dialogue.speak("biol","Wow, you've got some powerful strokes and good form, now that is out of the way, do you want to take a quick break, get your gear and we shall we go a little deeper? She looks into your eyes and smiles.")>>
Normally she's been bit awkward and distant at times, but you feel like, she's been opening up a bit to you.
<</if>>\
After demonstrating your swimming abilities you climb out for a momentary rest.
<<=SugarCube.getLib().Images.drawAction("first-dive-swim.jpg")>>
Margaret then watches as you check over all your equipment to her satisfaction.
<<=SugarCube.getLib().Dialogue.speak("biol","Alright, good job, now let's go diving!")>>
[[Go for the Dive]]
<</if>>\You start donning all the extra the gear. Out of the water the tank is a little heavy and awkward, but you keep your balance. With your fins and everything else on you slowly make your way to the moonpool edge. As you are on a stable platform, You will do a giant stride entry into the water.
In one moment you are kicking one leg forward in the air, while the other pushes away from the deck. In the next, the water and noisy bubbles are swirling around in a few moments of chaos. Your vest keeps you buoyant, and you regain your bearings. You give her a thumbs up! That was exciting!
After she gets in the water, Margaret starts running through a pre-planned checklist of skills to make sure you understand the principles, and can calmly deal with problems like clearing water in your mask, or needing air from your buddy. With the neutral buoyancy, having all the equipment, the padding of the suit, it's different from just swimming at the surface of a pool. Being immersed in the water, and observing things for an extended period like this - it's an interesting experience.
<<=SugarCube.getLib().Images.drawAction("first-dive.jpg")>>
There's so much to do - everything feels like it takes a while, and you feel like you are at the edge of being overwhelmed, experiencing this stuff for the first time. However, before you know it you start to find yourself more comfortable - breathing calmly, adjusting your buoyancy and maneuvering underwater.
After you run through all the checks, Margaret allows you some time to get a sense for the scenery near the station. Suddenly a big school of fish surrounds in a glittering field of dancing silver! Following them, you see a pod of dolphins come within 5 feet of you, but they don't seem interested in you, and keep swimming.
<<=SugarCube.getLib().Images.drawAction("dusky-dolphin.jpg")>>
Just as you're starting to have fun, you hear a metal tapping sound, and spin around see Margaret giving the thumbs up signal, which you reciprocate - it's time to surface in the moonpool and finish your first dive after what turns out to have been 30 minutes.
<<=SugarCube.getLib().Images.drawAction("first-dive-surface.jpg")>>
As you reach the surface, you share a high five with Margaret.
<<=SugarCube.getLib().Dialogue.speak("heir","That was really cool!")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Awesome. You handled yourself pretty well down there.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Thanks!")>>
After taking off your swim fins, you both climb up from the moon pool ladder.
<<=SugarCube.getLib().Dialogue.speak("biol","I'll be filling in the paperwork for you to get your open water certification. You'll be ready to go out and help me change out the remote ansibles, which is good, as that isn't something I'd want to have to do on my own.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","But that's for tomorrow. Now that you've gone through the techniques, be sure to take some time to brush up on parts you weren't 100% sure on while things are still fresh. For instance, you hesitated a bit with...")>>
She goes over correcting some techniques you didn't quite nail, which you make note of.
<<=SugarCube.getLib().Dialogue.speak("heir","Ok, got it!")>>
<<=SugarCube.getLib().Dialogue.speak("biol","But now... I don't know about you, but I'm about ready to peel out of my suit.")>>
[[Time to drop all that heavy gear]]You drop the fins. Then you unbuckle your buoyancy compensator pack and weight belt to safely place on the floor. Then the dive knife. Finally, you get seated to a bench beside Margaret to start taking off your waterlogged wetsuit. jeebus... Was the air down here always this cold? As your dexterity isn't so good from the thick neoprene and cold, she helps you peel off your gloves, and you do likewise for her. You both are slightly shivery and trying to work quickly.
Putting it on dry was a little tricky, but it's a whole other thing getting out of this thick, tiny wetsuit while you are soaked. Getting the arms off seems to require you to contort yourself in ways you don't remember having to do when it was dry, but you ultimately get your arms free, and the suit is down to your waist. With the chest of your wetsuit off, you are embarrassed as you notice that your wet nipples are making points under your swimsuit. From there, getting the legs off is a fierce struggle to break free from a tight suit that just doesn't want to let you go, especially with hands that are tired and a little numb. You didn't really notice you were a bit of cool in the water before, but you sure do now!
After Margaret has gotten herself out of her wetsuit and enjoyed a moment of laughter watching your struggle, she helps you work your way out of the legs. She grabs the stuff, hoses everything down with fresh water and puts the gear in a drying rack room with a big dehumidifier and lots of fans.
<<=SugarCube.getLib().Dialogue.speak("biol","You'll appreciate being able to put on a suit when it is mostly dry again. Take this, and shower up now.")>>
She gives you a fuzzy bathrobe and towel to dry off with.
[[Take a warm post dive shower]]After all that swimming, you feel rejuvenated as the warm water trickles all over your body and washes the salt water off of you.
You dry off, change out of your swim gear, and put on your regular uniform.
<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(false)>>\
<<=SugarCube.getLib().StationWork.completeTask("check-out-dive")>>\
<<=SugarCube.getLib().Tasks.addTask("install-replacement-ansible")>>\
<<=SugarCube.getLib().Tasks.addTask("install-ansible-transceivers")>>
<<=SugarCube.getLib().Dialogue.speak("biol","I hope you enjoyed your first dive. From here, you'll need to install the station ansible in the Advanced Comms room, and then after that's done, we can wrap things up by installing the offsite ansible transceivers.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","I really appreciate that you've been able to come to the site and help us out here. Even with me having to teach you some stuff, you've been helping me catch up on the work backlog here. And it's kind of been fun having you here.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","You're probably pretty tired from the long day and the dive work, but I think I'm going to pop a bottle of wine and watch a movie up in the galley. I understand if that's not your thing. But, you'd be welcome to join me... but, only if you want to of course.")>>
[[Sounds like fun|Watch Movie with Margaret]] - Seems like she's up for some fun.
[[Maybe some other time]] - She's pretty, but your not really in the mood for stuff with her right now.
[[Politely decline|Politely Decline Margaret]] - She's not your type, and her advances toward you have made you felt awkward. Best to drop a hint that you're not on the market.You don't feel comfortable with the idea of your normal PJ's. Down here, things could go wrong at a moments notice, so you'd rather be prepared.
<<=SugarCube.getLib().PlayerModel.fallAsleep(false)>>\
[[Wake up to a new day|Wake up to a new day - Recurring]]It is a new day. <<set $day to $day+1>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
[[Take a shower|Take a shower - Recurring]]<<if SugarCube.getLib().PlayerModel.needsShave()>>
You shower up, and shave to get silky smooth.
<<=SugarCube.getLib().PlayerModel.shave()>>\
<<=SugarCube.getLib().Images.drawAction('shower-shave.jpg');>>
<<else>>
You quickly take your shower.
<</if>>
<<=SugarCube.getLib().Images.drawAction("station-bathroom.jpg")>>
You pop open your hygiene kit, brush your teeth and comb your hair.
<<=SugarCube.getLib().PlayerModel.toggleMakeup(false)>>\
<<if hasVisited("Ask Margaret about borrowing Makeup")>>\
[[Put on Makeup|Sea-Station - Put on makeup]]
<</if>>\
[[Time to start your day|Sea Station]]<<=SugarCube.getLib().Images.drawAction('kloss-lipstick.webp');>>
<<=SugarCube.getLib().PlayerModel.toggleMakeup(true)>>\
That's so much better!
[[Time to start your day|Sea Station]]Where do you want to go now? Your agenda for work while on the station is tracked on the "TASKS" page of your watch.
<<=SugarCube.getLib().Images.drawAction("station-map.png")>>
Level 12 - Observation Deck (Sealed due to inclement weather)
Level 11 - Main Boat Deck (Sealed due to inclement weather)
Level 7 - [[Bridge|Station Bridge]]
Level 6 - [[Galley|Station Galley]] | [[Lounge|Station Lounge]]
Level 5 - [[Quarters|Station Quarters]]
Level 4 - [[Research|Station Research]]
Level 3 - [[Main Hold|Station Main Hold]]
Level 2 - [[Engineering|Station Engineering]]
Level 1 - [[Station Moonpool]] | [[Station Advanced Comms]] (Ansible Facility)The bridge seems to be doing fine.
<<=SugarCube.getLib().Images.drawAction("control-room.jpg")>>
Bar is keeping an eye on the radar screen.
<<if SugarCube.getLib().Tasks.hasTask("prepare-to-leave-station")>>\
The storm seems to have passed.
[[Arrange to leave station]]
<<else>>
The weather up top looks... awful.
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("support-ansible-transceiver-install")>>\
[[Support install of ansible transceivers]]
<</if>>\
[[Go somewhere else|Sea Station]]Not much happening here in the galley.
<<=SugarCube.getLib().Images.drawAction("galley.jpg")>>
[[Go somewhere else|Sea Station]]It's quite peaceful in the observation lounge.
<<=SugarCube.getLib().Images.drawAction("bridge-window.jpg")>>
<<if !hasVisited("Politely Decline Margaret") && !hasVisited("Hard Decline Margaret")>>\
Do some [[Yoga|Station Yoga]]
<<else>>\
Do some [[Yoga|Solo Station Yoga]]
<</if>>\
[[Go somewhere else|Sea Station]]<<=SugarCube.getLib().Exercises.doStationYoga(true)>>\
Return to [[Lounge|Station Lounge]]<<=SugarCube.getLib().Exercises.doStationYoga(false)>>\
Return to [[Lounge|Station Lounge]]<<=SugarCube.getLib().Images.drawAction("quarters.jpg")>>
[[Sleep|Sleep on research station - Recurring]]
[[Go somewhere else|Sea Station]]<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(false)>>\
The circulating pumps in the lab are droning along. Although it's a bit loud, the atmosphere of the lab surprisingly calming.
<<=SugarCube.getLib().Images.drawAction("research-lab.jpg")>>
<<=SugarCube.getLib().Images.drawAction("plankton-lab.jpg")>>
<<if SugarCube.getLib().Tasks.hasTask("help-margaret-research-culture prep")>>\
[[Help Margaret with her culture prep]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("help-margaret-research-core-analysis")>>\
[[Help Margaret with her core analysis]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("scuba-training-theory")>>\
[[Get a SCUBA Crash Course]]
<</if>>\
[[Go somewhere else|Sea Station]]Not much interesting stuff in the hold, from what you can see.
<<=SugarCube.getLib().Images.drawAction("cargo-hold.jpg")>>
<<if SugarCube.getLib().Tasks.hasTask("install-replacement-ansible") && hasVisited("Install the main ansible") >>\
[[Get ansible equipment cart]]
<</if>>\
[[Go somewhere else|Sea Station]]The equipment on the engineering deck hums along. There's not much to do here.
<<=SugarCube.getLib().Images.drawAction("engineering-deck.jpg")>>
[[Go somewhere else|Sea Station]]The glow from beneath in the moonpool looks quite magical.
<<=SugarCube.getLib().Images.drawAction("moon-pool.jpg")>>
<<if SugarCube.getLib().Tasks.hasTask("check-out-dive")>>\
[[Proceed on Checkout dive]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("install-ansible-transceivers") && !SugarCube.getLib().Tasks.hasTask("install-replacement-ansible")>>\
[[Install ansible transceivers]]
<</if>>
[[Go somewhere else|Sea Station]]You approach the Advanced Comms Area. It's locked to regular personnel.
<<if SugarCube.getLib().Tasks.hasTask("install-replacement-ansible")>>\
[[Install the main ansible]]
<</if>>\
<<if SugarCube.getLib().Tasks.hasTask("remove-old-ansible")>>\
[[Remove old station ansible]]
<</if>>
[[Go somewhere else|Sea Station]]<<if SugarCube.getLib().PlayerModel.isReadyForSleep()>>\
<<=SugarCube.getLib().PlayerModel.fallAsleep()>>\
<<else>>
<<=SugarCube.getLib().PlayerModel.explainNoSleep();>>
[[Quarters|Station Quarters]]
<</if>><<if !SugarCube.getLib().PlayerModel.canWork()>>
You are too tired to work right now. Try tomorrow.
<<else>>
You flip through the instructions for wrapping up the ansible install.
<<=SugarCube.getLib().Dialogue.speak("heir","Let's see.. Starting diagnostics...")>>
The system runs through a pile of tests with all the remote stations. Everything comes up green, and the computer says it's safe to proceed with removing the old system.
So you move ahead with the next step...
<<=SugarCube.getLib().Dialogue.speak("heir","...Disable ansible duplexing... Where's that switch? Oh here it is.")>>
Now, the new ansible is the only one connected to the remote stations.
<<=SugarCube.getLib().Dialogue.speak("heir","and... Shutting down the old ansible...")>>
You review the instructions to dismount the old ansible from the hardware. This one is a bit of a beast to to take apart. It's like some Ikea kit from hell, with hundreds of parts, which you collect into a couple of empty boxes.
<<=SugarCube.getLib().StationWork.completeTask("remove-old-ansible")>>
<<=SugarCube.getLib().Tasks.addTask("prepare-to-leave-station")>>
<</if>>
[[Go somewhere else|Sea Station]]Out of prudence, you decide this would be a good moment to perform a "self inspection" health check on the suit.
You feel yourself over to make sure this suit and your body hasn't been hurt or damaged.
If you've learned anything from the computer in your time together, It's so very important that vital tissues like your breasts and ass have not been harmed. That long tail, too - it's important to make sure that every little bit of this body is still healthy ready to perform this task. The sensation of the texture on your fingers playing over the slippery scales of the powerful tail is a little arousing.
Before you get completely distracted by the possibilities, you remind yourself there is a job to do though... After you finish the self examination, you are impressed at how well the suit fits, and feel confident that there is no damage to it, and feel ready to proceed with the next step.
[[You open the outer hatch and depart the station]]<<=SugarCube.getLib().Dialogue.speak("merm","Please close the outer hatch.")>>
You close it back up.
<<=SugarCube.getLib().Dialogue.speak("merm","Proceed to swim towards new destination marker.")>>
You look at the destination...
That isn't just... a couple miles out. That's down... Deep down... In inky black water that's a lot deeper than the continental shelf where the station sits.
<<=SugarCube.getLib().Images.drawAction('thass.jpg');>>
[[You start kicking with the tail]]You start swimming down into the darkness...
<<if SugarCube.getLib().Skills.get("swimming") <= 20 >>\
<<if SugarCube.getLib().Skills.get("swimming") <= 5 >>\
You really regret not having gotten more swimming practice in... It's terrifying trying to cover this distance in open water, and no one around to help you if anything goes wrong. Thank goodness the suit allows you to take breaks as needed. As you keep getting deeper and deeper, the water presses harder on the suit. After almost two stressful hours, you are extremely relieved to see faint hints of an aquatic site emerging at this absurd depth.
<<else>>\
This is some serious swimming, much longer than you've ever done before. You find maintaining your direction around a little tricky, and feel paranoid about getting pulled by the current, but the tail amplifies your strength, and with some care you find yourself closing the distance, but a little tired from the effort. As you keep getting deeper and deeper, the water presses harder on the suit. After about an hour, you start to see a faint hints of an aquatic site in view at this absurd depth.
<</if>>\
<<else>>\
You feel glad to have been able to get in a good bit of swim practice like Stacey suggested. After a couple goofed up tries, you find the suit makes it very easy for you adjust your buoyancy, and you appreciate how effortless the tail makes swimming over longer distances. As you keep getting deeper and deeper, the water presses harder all over the suit. Within about 40 minutes, you see a faint hints of an aquatic site in view, at this absurd depth.
<</if>>\
[[You approach the temporal ansible site]]As you arrive, you are surprised to see it is actually quite small. Like, maybe it could accommodate one or two people. Somehow, you were expecting some big massive machine.
<<=SugarCube.getLib().Images.drawAction('temporal-ansible-station.jpg');>>
[[You enter the temporal ansible site]]You make your way in through a hatch. The site does not have an air lock or air inside. A set of robotic arms take hold of your suit's anchor points and connects to the tail segment. The anchors suspend you in place, so you don't have to expend energy to hold yourself steady.
<<=SugarCube.getLib().Dialogue.speak("merm","Connecting.")>>
You find yourself positioned in front of the temporal ansible.
<<=SugarCube.getLib().Images.drawAction('temporal-ansible.jpg');>>
<<=SugarCube.getLib().Dialogue.speak("heir","Advise. Please extract temporal ansible records.")>>
[[Transferring]]<<=SugarCube.getLib().Dialogue.speak("merm","Initiating transfer. Please standby.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Not like I'm going anywhere like this, right?")>>
<<=SugarCube.getLib().Dialogue.speak("merm","Statement is Accurate. Initiating Venenous ThromboEmbolism (VTE) safety system and amplifying skin sensitivity to ensure steady blood flow for operator during extended transfer in deepwater environment.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","uhh, ok. I guess.")>>
You hear a vent slide open. Water is starting to circulating past the suit gills.
<<=SugarCube.getLib().Dialogue.speak("merm","Transfer 1% completed")>>
You start to feel a subtle brushing sensation on the underside tip of the tail - it kind of tickles. It's like a spinning roller. Another one starts lightly touching from the top side.
<<=SugarCube.getLib().Dialogue.speak("merm","3%...")>>
The rollers start to move up. If you were to describe it, you might say it was like a car wash for mermaids. A couple more brushes seem to starting on the sides of the tail.
<<=SugarCube.getLib().Dialogue.speak("merm","5%...")>>
The brushes are working their way up to where your calves are in the tail at this point.
<<=SugarCube.getLib().Dialogue.speak("merm","oh... It kind of pulses. That's kind of nice.")>>
<<=SugarCube.getLib().Dialogue.speak("merm","6%...")>>
The rollers are slowly working themselves over your thighs. It's pretty mellow, but it kind of tickles.
You reach out with your hands to get some relief from the soft tickling sensation.
<<=SugarCube.getLib().Dialogue.speak("merm","Caution: Please keep arm appendages secure during risk prevention process.")>>
[[Knead your breasts]]
[[Rub your thigh area]]
[[Wait it out|The computer's massage continues]]You start fondling the impressive mermaid-breasts. The sensation is other worldly.
Soon after, however [[The site computer scolds you]]You press with a little more force on your thighs to relieve the ticklish feather touch of the brushes.
Soon after, however [[The site computer scolds you]]However the computer scolds you again:
<<=SugarCube.getLib().Dialogue.speak("merm","Unsafe operator behavior in progress")>>
<<=SugarCube.getLib().Dialogue.speak("merm","Binding operator in conformance with safety protocol.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","What?")>>
You feel the suit arms pull up, to extend your hands above your head. A couple robot arms attach a few more anchor points to your arms, and then bind your hands tightly together!
<<=SugarCube.getLib().Dialogue.speak("merm","Unpredictable user interactions could cause non-recoverable mechanical failure. Please relax.")>>
[[The computer's massage continues]]<<=SugarCube.getLib().Dialogue.speak("merm","10%")>>
The brushes are running over the mermaid's midriff-scales. At this point you are starting to buck the advisory capsule, but it just isn't giving you much of a sense of movement. It's just enough to build up the tension inside you. It feels like the rollers are intentionally lingering...
<<=SugarCube.getLib().Dialogue.speak("merm","17%")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Oh fuck, that feels good.")>>
The brushes are pulsing over your breasts and back now. The rollers are pushing into you with a little more force. You feel some soreness and tension from your bras being massaged out of your back.
<<=SugarCube.getLib().Dialogue.speak("merm","21%")>>
<<=SugarCube.getLib().Dialogue.speak("merm","27%")>>
The brushes are moving back over the tail. considerably more insistently at this point. Your muscles instinctively fidgeting in the tail, but there's not moving it out of the way. All you can do is be present in the sensations.
<<=SugarCube.getLib().Dialogue.speak("merm","47%")>>
The "Advisory Capsule" seems to be waking up inside you to join in the action. It's not super aggressive, but it seems to be pulsing.
<<=SugarCube.getLib().Dialogue.speak("merm","63%")>>
The rollers and capsule were getting more aggressive, but have eased off and seem to have you at the sustained edge of an orgasm. It seems to detect when you are about to climax, and then backs off.
<<=SugarCube.getLib().Dialogue.speak("heir","(panting) ooh")>>
<<=SugarCube.getLib().Dialogue.speak("merm","81%")>>
The intensity is too much, you are losing sense of yourself at this point.
<<=SugarCube.getLib().Dialogue.speak("merm","95%")>>
<<=SugarCube.getLib().Dialogue.speak("merm","Transfer nearing completion. Verifying operator can still safely handle vigorous cardiovascular activity for release.")>>
Suddenly the capsule starts pumping deep inside you with full force.
<<=SugarCube.getLib().Dialogue.speak("heir","Aaah!")>>
You feel yourself tighten around it, savoring the moment and then quickly feel your body spasming as you feel an intense orgasm rocking your suspended body for several seconds.
<<=SugarCube.getLib().Dialogue.speak("merm","Transfer complete!")>>
And suddenly, the motions of the capsule and brushes stop. You start to regain your sense of things.
You wish that you could review the temporal ansible logs, but unfortunately, you simply cannot from here, in this suit. For now, at least you'll need to give that a look with the help of the computer back home.
<<=SugarCube.getLib().Tasks.addTask("review-temporal-ansible-logs")>>
[[You swim back to the station]]<<=SugarCube.getLib().Images.drawAction('return-from-depth.jpg');>>
[[You grab hold of the outer hatch of the water-lock]]Swimming back from the depths took forever... A sense of relief washes over you as the safety of the station comes into view.
Outer hatch opened... You make your way into the water lockout cell.
<<=SugarCube.getLib().Images.drawAction('outer-hatch.jpg');>>
You pull the outer hatch closed and seal it... Equalizing pressure... Inner hatch opened...
You climb out of the waterlock and close the inner hatch.
[[Back on 'dry land']]<<=SugarCube.getLib().Dialogue.speak("heir","Advise...Now, how do I get out of this thing?")>>
<<=SugarCube.getLib().Dialogue.speak("merm","First, please re-attach suit to cart harness and re-connect cart support cable to tail.")>>
With a little work, you climb yourself onto the cart and use the harness clips which help hold you steady. Then, you plug the support cable into the base of the tail.
<<=SugarCube.getLib().Dialogue.speak("heir","Ok, done that...")>>
<<=SugarCube.getLib().Dialogue.speak("merm","Please hold safety handles securely, and use thought word 'terrestrial'.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","terrestrial...")>>
<<=SugarCube.getLib().Dialogue.speak("merm","Orienting suit to restore air breathing mode.")>>
Suddenly, you notice the support frame has a pivot point, and you feel the tail slowly being lifted backwards, as your chest is falling forward. After about a minute, you feel yourself on a slight downward incline with your head facing down foot lower than your tail, hanging about 3 feet in the air.
<<=SugarCube.getLib().Dialogue.speak("merm","Displacing fluids.")>>
Air bubbles start tickling up your windpipe, and the process continues for about a minute as the fluid drains out of your lungs. You feel yourself cough a number of times as the last bits clear out of your windpipe. At one last cough, the "mouth" of the suit opens itself to air, and that foamy bit of coughed spittle flies out. eww. That said, you're happy to have air running through your lungs.
<<=SugarCube.getLib().Dialogue.speak("merm","Levelling suspension, decoupling operator from suit.")>>
With the fluid out, the cart arm pivots the suit to bring the tail towards the floor. Slowly at first, the suit start to loosen it's very tight embrace of your body. The sensations of the tail being your "feet" diminish, and your mind seems to again register your skin as being inside of the liquid-slime of the suit, rather than sensations on the scales. The tail relaxes its extreme hold on your legs.
Your ears are unplugged, and the sense of cooler air on the back of your head is the first sensation of being out from the suit. The chill of cool water droplets falling into the small of your back reinforce that the suit has pulled itself open for you.
<<=SugarCube.getLib().Dialogue.speak("merm","Severing neuralink connection with operator. You may now extract yourself from the suit. Rack will prepare for a raised tail release once your upper body is clear.")>>
Your vision goes dark. The suit gives the "advisory capsule" a firm push inside of you, and then hear a click as it detaches.
<<=SugarCube.getLib().Dialogue.speak("heir","haaah!")>>
[[Get out from the MFMS]]You lift the back of the "head" away, and work your mouth clear of the mouthpiece.
You start to peel your right shoulder out, and then the arm slowly loose, finally peeling each finger out from the integrated gloves. You do likewise for the other arm, and are free of the suit down to your midsection. There's a thin coating of the slime over your body. You flick off the thickest globs into the empty portion of the suit.
You start trying to push yourself out from the tail, but your legs are really sealed in deep.
Then, the cart arms seem to start slowly rotating things again, bringing the tail section back up into the air, as you head goes down. This time, you feel an uneasy feeling of gravity helping to pulling your legs and curvy butt out of the tail. You grab a couple of handles at the front of the cart base to pull yourself, as you slowly wiggle out of the tail, in an experience that is physically like a second birth.
Exhausted, you pull the advisory capsule which had been embedded in your ass this whole time, which makes an awkward "schlorp" sound, as you finally get it out of you.
You are relieved to see a towel in the MFMS suit case, which you use to wipe the slime off of you, and then dress in your regular clothes.
<<=SugarCube.getLib().PlayerModel.togglePlayerHidden(false)>>\
You follow a detailed set of instructions for washing and re-packing the suit and all the equipment. You lock the cases, and hustle the cart back up to the hold.
You do a review the checklist... You have installed the replacement ansible and extracted the data.
<<=SugarCube.getLib().StationWork.completeTask("install-replacement-ansible")>>
Now, you can help Margaret with setting up the remote ansible transceivers to connect to the new ansible.
[[Go somewhere else|Sea Station]]On arrival, the pilot gestures for the headphones which you and the merc place on hooks in the craft. The merc then jumps out to greet another man in a similar tactical uniform and a short young woman on the deck, who seems quite curt with him. They start collecting gear and running it down from the helipad deck to a very sturdy cart on a waiting freight elevator. You start to do the same, but you can only manage one hardcase at a time. Eventually you, the girl and the merc have unloaded the big items, and the pilot has finished refueling his helicopter. At this point the clouds are rapidly becoming darker, and you feel a light rain coming down.
<<=SugarCube.getLib().Images.drawAction("ocean-storm.jpg")>>
And with that, the pilot gives a finger twirl gesture with his finger to all to see. As your group returns to the helicopter, he shouts:
<<=SugarCube.getLib().Dialogue.speak("heli","We've got a very low pressure front coming in fast, I need to get off this deck ASAP. The winds are already picking up. I'll be back in a week or so, after the storm passes. Bar - I'm sure you'll do fine to remind the Argentine Guardacostas to maintain their distance from the station, until I'm back.")>>
The merc from the station stows his bag on the helicopter and climbs aboard. Your party runs, crouching, back to the cover of the elevator. A few moments later and the helicopter is aloft, leaving you with the merc who flew in with you and your petite hostess. Her tone with the merc doesn't quite match her words:
<<=SugarCube.getLib().Dialogue.speak("biol","Titus... A pleasure as always.")>>
Then she addresses you. The rain is more aggressively falling on the deck now.
<<=SugarCube.getLib().Dialogue.speak("biol","And, you must be <<=SugarCube.getLib().PlayerModel.getHeirName()>>? So the bigwigs needed you here in a bit of a hurry. We just got word that you'd fix the ansible yesterday. That repair had been on the books for the last year, you know that? Anyway, lets get out of this rain, and get you situated. We'll have plenty of time to get wet later.")>>
You notice she's got an unusual, wispy voice.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, excuse me - I haven't introduced myself - Margaret Blake. Welcome to RV Hensen Station, named in honor of Victor Hensen, one of the OG's of biological oceanography. I'm a Post-doctoral Marine Biologist on assignment from University of California-San Diego. Currently, I'm the supervising researcher on the station. ")>>
She isn't that much older than you. You wonder how many other researchers are on this station.
<<=SugarCube.getLib().Dialogue.speak("biol","I'm sure you've already become acquainted on the flight with your travelling companion, Titus Barlow - he is on assignment to help attend to the physical security of this station.")>>
He awkwardly outstretches his hand as realizes he may have slighted you earlier. You shake hands. For some reason you expected him to apply a crushing grip, but it isn't.
<<=SugarCube.getLib().Dialogue.speak("merc","Ma'am... You can call me 'Bar'")>>
And with that, she seals off the outer bay doors for the freight elevator, and presses a Button marked "primary hold".
[[The elevator descends]]<<=SugarCube.getLib().Dialogue.speak("biol","Now I'm sure you've heard the details already but let's go over the highlights. This is an aquatic research station, built by a Russian naval contractor back in '93. For it's age, it has a number of interesting innovations. The Hensen has seen better days, but she still helps us with a lot of important investigations. Originally it was designed to have a crew of 21 plus 14 scientists, but we're running on a skeleton crew right now. You'll undoubtedly run into Elso, our engineer. You may also see some drones and bots which help keep things afloat. With the full crew, this craft is able to adjust its trim depth for faster maneuvering or to provide better station keeping and underwater observation access. Here, on this wall is a profile view.")>>
Having never been out a sea before, you pretend to understand what all that meant.
<<=SugarCube.getLib().Images.drawAction("station-map.png")>>
<<=SugarCube.getLib().Dialogue.speak("biol","The Hensen is planned to be here for another couple years, and then it will be getting another refit. To avoid churn from storms, the station stays mostly submerged. Unless the weather clears up for us to enjoy topside, you'll be spending most of your time here in the lower decks.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Well, time for the grand tour. You just saw the Helideck and open observation deck area. We're going down to the main hold at level 3, to drop all this stuff - it's where we keep bulk goods.")>>
You hear a series of distinct heavy clanging sounds of pressure doors opening and closing as the elevator descends further into the station. Looking around the elevator, major labels are in translated to English, but there's a bunch of safety labels in Russian text. You hope it's nothing important.
<<=SugarCube.getLib().Dialogue.speak("merc","Well ladies, this is my stop. Have a nice stay on our little rustbucket.")>>
The merc gives a sloppy salute, picks up his duffle bag and gets off with a stop at Level 7. Margaret gives him a bit of an icy glare.
After he gets off, you and Margaret keep going down. After going down what seems like roughly 100 feet from the observation deck, and feeling your ears pop a couple times, the elevator opens to an austere storage area. The two of you roll the cart into the hold, and she takes a box of provisions with her. You go back into the elevator where she presses a button to head back up to Level 7, the 'Bridge'.
[[You Arrive at Level 7]]<<=SugarCube.getLib().Dialogue.speak("biol","This is the bridge. You'll sometimes see Bar up here in his security role - it's usually pretty quiet for him, but having a merc or two on the station is something of a neccessary evil to discourage unwanted guests. The Argentinian coast guard has been getting really assertive about activity in this area. We're in international waters outside any national claims, so they don't have any business with us, but they sometimes patrol uncomfortably close. Elso mostly runs day to day operation of the station from wherever he is, with the help of the automated systems. Honestly, we don't really use this area much while we're on a skeleton crew, but if the station needed to reposition or there's some drilling going on, a Captain would oversee operations from here.")>>
You notice a number of the control panels seem to be written in Cyrillic text. You are amazed anyone can make heads or tails out of that.
<<=SugarCube.getLib().Images.drawAction("control-room.jpg")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Ok, let's work our way down.")>>
[[She guides you to a hatch...]]She opens a hatch to a staircase and guides you through. The hatch from the staircase starts to gently close itself about 5 seconds after you release it, and automatically seals shut.
<<=SugarCube.getLib().Dialogue.speak("biol","Right... You'll get used to... that. This station goes so deep, it has to isolate each floor to maintain artificial air pressure and composition as appropriate to the deck and any active diving missions.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Now - This is the galley. I hope you like kale. That's your resident chef's one and only specialty!")>>\
She winks.
<<=SugarCube.getLib().Images.drawAction("galley.jpg")>>
Then, she puts down the crate of food she was carrying and asks you to help her put the new goods away, and pointing out where everything goes and the special rules for things like how to clean dishes.
<<=SugarCube.getLib().Dialogue.speak("biol","Ok, now that's done! Continuing on, over here, is the mess, which is the center of our entertainment. Here's where informal gatherings tend to happen, and the tv screen here is wired up for all the streaming services. Connectivity can get a little spotty at times, especially with storms. No one has bothered to offer cable tv on ansibles yet. There's a DVD player and a bunch of old movies and tv-shows, which can help get through the boredom. Down that hall is the medical bay if anyone needs first aid. Ok, let's keep going down.")>>
[[She guides you down another set of stairs]]<<=SugarCube.getLib().Dialogue.speak("biol","This is the habitation deck. All the decks have one escape pod, but this floor has a pod at the end of each bunk wing. Let's go over the evacuation procedures.")>>
She does her best impression of an airline stewardess with the exaggerated gestures. You take a look at one are relieved to see the escape pods have easy to follow instructions clearly posted in English.
<<=SugarCube.getLib().Dialogue.speak("biol","Now, your bunk is here in the south wing. Here's your sheets. Oh, and you can use this locker.")>>
She eyes your outfit for a moment...
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, here's a couple standard work uniforms for you, swimsuit, as well as a hygiene kit, and towels.")>>
She grabs some boots and sandals from another locker for you.
<<=SugarCube.getLib().Dialogue.speak("biol","We use the provided gear on station to avoid damaging our own stuff. There's a laundry unit by the head. Also, static electricity buildup can be really scary when we go high oxygen for deep dives, so not burning alive in a sealed compartment is also something to think about... So... yeah. Before we go any further into messier parts of the ship, can you get changed up, and we can finish the tour?")>>
<<=SugarCube.getLib().Mood.defiantLink("Change in plain sight of her, if she wants to watch, that is on her",3)>>
<<=SugarCube.getLib().Mood.defiantLink("Discreetly change in front of her",1)>>
<<=SugarCube.getLib().Mood.compliantLink("Walk to the bathroom to change out of view",0)>><<=SugarCube.getLib().Dialogue.speak("biol","Oh, a never nude? Ok, Sister. heh heh.")>>
She may not be so impressed at that, but she doesn't know what's in your underwear...
<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>
The thought of a stranger just seeing your chastity belt is a bit too much. You get out of view and start changing into the new outfit.
<<else>>
The thought of a stranger seeing your caged penis is a bit too much to process at once. You get out of view and start changing into the new outfit.
<</if>>
<<=SugarCube.getLib().MirrorUX.wearSet(["research-panties","research-bra","research-socks","research-technical-pants","research-fleece-top","research-rain-boots"]);>>
Compared to some of the things you've had to wear recently, this stuff is a little more mundane.
Then again, walking around in heels might not be so safe an idea with all those metal drainage grates and all over the decks here. You're surprised at how breathable and flexible the pants are! You could actually exercise in this outfit, aside from the boots, and it seems like the sandals you got could do as footwear in a pinch.
<<=SugarCube.getLib().Dialogue.speak("heir","Ok, I'm all set!")>>
<<=SugarCube.getLib().Dialogue.speak("biol","I admit, these uniforms aren't super flattering, but I actually find the jackets are super cozy to wear when I go camping. No one ever forced me to give mine back after I finished previous visits! Ok, you look like a regular now - let's keep going.")>>
[[Continue tour]]<<=SugarCube.getLib().Mood.addDefiance("You can't hide your body forever, after all. You feel slightly more sexually empowered.")>>
<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>
You start stripping, and then quickly putting on the clothes. You get a kinky thrill at the thought that she sees your chastity belt.
<<else>>
You turn to make it difficult to see your genitals and quickly start stripping, and putting on the clothes. She'd really have to be staring to notice your cage... Part of you is thrilled at the possibility.
<</if>>
<<=SugarCube.getLib().MirrorUX.wearSet(["research-panties","research-bra","research-socks","research-technical-pants","research-fleece-top","research-rain-boots"]);>>
Compared to some of the things you've had to wear recently, this stuff is a little more mundane.
Then again, walking around in heels might not be so safe an idea with all those metal drainage grates and all over the decks here. You're surprised at how breathable and flexible the pants are! You could actually exercise in this outfit, aside from the boots, and it seems like the sandals you got could do as footwear in a pinch.
<<=SugarCube.getLib().Dialogue.speak("heir","Ok, I'm all set!")>>
Margaret nods pleasantly.
<<=SugarCube.getLib().Dialogue.speak("biol","Cool. I admit, these uniforms aren't super flattering, but I actually find the jackets are super cozy to wear when I go camping. No one ever forced me to give mine back after I finished previous visits! Ok, you look like a regular now - let's keep going.")>>
Return to [[Continue tour]]<<=SugarCube.getLib().Mood.addDefiance("Is this a mistake? Who knows. Either way, you feel yourself becoming bolder.")>>
<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>\
You slowly start stripping, and artfully putting on the clothes. You look in her eyes and enjoy a kinky thrill as you can only guess what she is thinking of the sight of you in the chastity belt.
<<else>>\
You slowly start stripping, and artfully putting on the clothes. You look in her eyes and smile. Part of you at one point would have felt humiliated at being seen as a guy in a chastity cage dressed as a girl. Now you feel a strange power and arousal at the act of allowing her to see your the cage.
<</if>>\
<<=SugarCube.getLib().MirrorUX.wearSet(["research-panties","research-bra","research-socks","research-technical-pants","research-fleece-top","research-rain-boots"]);>>
Compared to some of the things you've had to wear recently, this stuff is a little more mundane.
<<=SugarCube.getLib().Dialogue.speak("heir","Ok, I'm all set!")>>
<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>\
<<=SugarCube.getLib().Dialogue.speak("biol","Wow... umm - Does that belt... does it hurt? What's that like?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","No, actually I've kind of gotten used to having it with me.")>>\
She seems a bit distracted at the thought.
<<else>>\
She has a sort of wry smirk.
<<=SugarCube.getLib().Dialogue.speak("biol","Wait, you have a penis? But, you... Does having that on here - does it hurt?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Not anymore... I've kind of gotten used to having it on. it's a long story...")>>
She's a bit quieter than earlier.
<<=SugarCube.getLib().Dialogue.speak("biol","huh...")>>\
<</if>>\
<<=SugarCube.getLib().Dialogue.speak("biol","umm... Anyway... I admit, these uniforms aren't super flattering, but I actually find the jackets are super cozy to wear when I go camping. No one ever forced me to give mine back after I finished previous visits! Ok, you look like a regular now - let's keep going.")>>
[[Continue tour]]The two of you proceed down another deck.
<<=SugarCube.getLib().Dialogue.speak("biol","Here we have the research deck. This is where our project gear, experiments and workstations are.")>>
<<=SugarCube.getLib().Images.drawAction("research-lab.jpg")>>
<<=SugarCube.getLib().Dialogue.speak("biol","The back area we have racks of core samples. To the right are our diagnostics workstations.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","And over here is my pride and joy, the plankton wall, where I conduct tests of phytoplankton communities. We can go over more details here later.")>>
<<=SugarCube.getLib().Images.drawAction("plankton-lab.jpg")>>
<<=SugarCube.getLib().Dialogue.speak("heir","So what is it you are studying?")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Maristech and my research consortium has been investigating photosynthetic plankton cultures, or phytoplankton, as an extremely efficient and low cost collector of solar energy, as well as a food and oxygen source. It's a pretty sure thing that Phytoplankton is going to be vital for the future of humanity. Phytoplankton accounts for half of oxygen production on the planet, despite only accounting for 1% of global plant biomass. Well resourced phytoplankton communities could be harnessed at scale to improve CO2 fixation, but it's also the solution for manned missions to Mars and beyond, as you want to travel as light as you can. But, plankton isn't just one strain of drifting plants, algae or bacteria - you can think of it like a dynamic microscopic ecosystem, an invisible forest, which we are only beginning to really map out and understand.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","My studies are looking at the composition of picoplankton communities in the surface waters on the shelf in relation to deepwater, and fossilized samples collected by drilling explorations of previous teams.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","oh?")>>
<<=SugarCube.getLib().Dialogue.speak("biol","The Brazil-Malvinas confluence is an amazing resource as we get to see so many permutations of different community conditions and observe the niches where the different strains best perform, in such close proximity. Further, when you account for the gradient of mixing depths for nutrients... ")>>
Margaret starts to get really excited to discuss the subtle intricacies of her research and recent papers for the next 15 minutes or so.
<<=SugarCube.getLib().Dialogue.speak("biol","...And that's what makes this site so remarkable. The station here provided a perfect venue for my inquiry, although it does take some getting used to the isolation. Having someone here I can talk to about our findings here is such a treat.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","In addition to my own research, I'm overseeing and maintaining autonomous data collection platforms in close proximity in the shallow waters of the continental shelf here. Earlier teams also collected quite a range of core samples from the shelf, which provides an excellent geological record. There is some future work to collect the deeper water data sets after the Hensen is refurbished. There's a set of bots that help extract the samples from the racks for analysis, but occasionally, they still need a human here to deal with some finicky stuff. Yay me, right?")>>
She sarcastically gives a thumbs up gesture with both hands.
You start to question if one person should be left down here in isolation for so long. So, in addition to being the supervising researcher here... She's the only researcher here.
[[Another deck down]]<<=SugarCube.getLib().Dialogue.speak("biol","Here, we're back at the main hold we stopped at earlier. Bulky equipment, supplies and surplus samples which would get in the way of routine lab work.")>>
Down another floor...
<<=SugarCube.getLib().Dialogue.speak("biol","And this is the engineering and mechanical deck which provide power and maintains clean, pressurized air. For the day to day, Elso keeps an eye on things, but this part of the station pretty much runs itself.")>>
<<=SugarCube.getLib().Images.drawAction("engineering-deck.jpg")>>
And down yet another floor...
<<=SugarCube.getLib().Dialogue.speak("biol","Finally... This is our precious 'wet porch'. The moonpool. It allows for diving, submersible launch operations, and drilling regardless of chop on the surface. This deck here is pressurized at 4 atmospheres, which maintains equilibrium pressure for water not to start coming up through here. This is the part where keeping those hatches closed gets critical.")>>
<<=SugarCube.getLib().Images.drawAction("moon-pool.jpg")>>
<<=SugarCube.getLib().Dialogue.speak("biol","And over there, is the advanced communications deck, it holds the station ansibles. It is fully automated and sealed off to all regular staff. You will be the first person going in there for years.")>>
You fail to stifle a long yawn.
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, right you're probably feeling a little jet lagged by now. Why don't you get some sleep, and we can catch up in the morning?")>>
[[Go to quarters and sleep|Sleep on research station - Night 1]]You don't feel comfortable with the idea of your normal PJ's. Down here, things could go wrong at a moments notice, so you'd rather be prepared.
<<=SugarCube.getLib().PlayerModel.fallAsleep(false)>>\
[[Wake up to a new day on your bunk]]It is a new day. <<set $day to $day+1>>\
<<=SugarCube.getLib().PlayerModel.morningUpdate()>>\
You awaken to the sound of some upbeat accordion and guitar music, accompanied by some humming.
[[Follow the sound]]
[[Take a shower]]You get up from your bunk to follow the sound. You encounter the person you assume to be Elso... He is a lanky 30-something guy in a jumpsuit with small holes and grease marks, with a bulky old toolbox, and he seems to be fixing something with a door. It looks like he's got a small speaker playing some tango music.
<<=SugarCube.getLib().Dialogue.speak("heir","Hi I'm <<=SugarCube.getLib().PlayerModel.getHeirName()>>! Nice to meet you!")>>
He shakes your hand.
<<=SugarCube.getLib().Dialogue.speak("eng","Hola simpático conocerte, soy Elso")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Do you speak English?")>>
He puts out a big smile and shakes his head.
<<=SugarCube.getLib().Dialogue.speak("eng","No hablo inglés")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Ahh, well it was nice to meet you.")>>
<<=SugarCube.getLib().Dialogue.speak("eng","Adiós chica bonita")>>
You wave and continue on. Elso seems polite and friendly, but neither of you can understand each other.
[[Take a shower]]The bathroom here is shared, there's no gender specific bathrooms from what you can see, and it includes a urinal. The lighting isn't great which could be harder for doing your makeup. If you had your makeup handy, which you don't.
<<=SugarCube.getLib().Images.drawAction("station-bathroom.jpg")>>
You find the shower. You are glad for the sandals. The shower floor is kind of gross, and you avoid touching the walls.
You pop open your hygiene kit. You brush your teeth and do what you can to tidy up your appearance a bit with what you have. After a long day of travel you feel nice and fresh again.
<<=SugarCube.getLib().PlayerModel.toggleMakeup(false)>>\
Looking in the mirror:
[[It feels nice not to worry about the makeup for once]]
[[You kind of dig how cute you look even without makeup handy]]
[[You feel kind of naked without makeup. You make a note to discuss this with Margaret]]<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>\
Being a girl shouldn't require having to wear makeup all the time just to make society happy. You like having a break from having to conform to all these expectations, and just be you.
<<else>>\
Having to always dress up and keep pretending to be a girl has been stressful. You're not sure where this road ends, but underneath it all, you're still a guy.
<</if>>\
[[Go to the mess for breakfast]]Sometimes you still find it kind of shocking how your face has changed. Some mornings you still half-expect to see a more masculine, if boyish face looking back at you. It hasn't always been easy, but you're getting more comfortable with the idea that this... is you. \
<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>\
You think of the last changes the computer made to your body. You feel yourself get a little wet with arousal at idea of being fucked. Ugh, this chastity belt.
<<else>>
You ponder the computer's offer to finish your transformation into a girl. You love the way you look, but having a penis, still feels like part of your identity. You feel some trepidation about how things might change, but the prospect of experiencing sex as a woman calls out to you.
<</if>>
[[Go to the mess for breakfast]]<<if (SugarCube.getLib().PlayerModel.hasGirlyGenitals())>>\
You don't like the idea of going around without your war-paint. Before you encountered the computer, all that "girly" stuff seemed so alien. The computer may have nudged you into this, but now sometimes you get aroused just seeing yourself dolled up and are a little addicted to the thought of further enhancing your beauty.
Marissa was right about the power it holds over others. You wouldn't want to admit it, and maybe it isn't right or fair, but your accentuated femininity has its perks. It's hard to deny that you have been enjoying new privileges and influence over others from it.
<<else>>
You don't like the idea of going around without your war-paint. Before you encountered the computer, all that "girly" stuff seemed so alien. Now though, it is a part of your identity. As you still live with a penis, your makeup helps you remove any doubts for yourself or the world that they are indeed looking at a beautiful woman. Going without it makes the ambiguity of the situation more pronounced for you.
<</if>>
Maybe Margaret can help on this.
[[Go to the mess for breakfast]]You go up to the mess.
Margaret is seated, eating some cereal. In a chipper voice, she says:
<<=SugarCube.getLib().Dialogue.speak("biol","Hey, you're up!")>>
You shrug and scratch your head. You still feel kind of groggy.
<<=SugarCube.getLib().Dialogue.speak("heir","Yeah... I guess so. Do you have coffee here?")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, right - we've got a fresh couple cups ready in the maker there. I bet you're hungry. Normally we don't have hot meals at the moment, unless we cook them ourselves. We have a few cereals and milk, oatmeal, bread and bagels, with a toaster over here. I'm kind of partial to frosted vampire puffs - I guess I'm just a big kid still.")>>
You have some breakfast with your coffee and chat small-talk with Margaret.
<<=SugarCube.getLib().Dialogue.speak("biol","Before you do your ansible upgrades, could you drop by the lab to give me a hand with my research. I've added a note about it to your calendar.")>>
<<if(hasVisited("You feel kind of naked without makeup. You make a note to discuss this with Margaret"))>>\
[[Ask Margaret about borrowing Makeup]]
<<else>>\
Ask Margaret about borrowing Makeup (You weren't concerned about this)
<</if>>\
<<=SugarCube.getLib().Tasks.addTask("help-margaret-research-culture prep")>>\
[[Time to start your day|Sea Station]]<<=SugarCube.getLib().Dialogue.speak("heir","Before I get started on that other stuff. I didn't have any makeup with me. Would it be possible for me to borrow some of yours? I feel kind of naked without it.")>>
<<if hasVisited("Change in plain sight of her, if she wants to watch, that is on her")>>
That last part seems to have caught her a bit by surprise. She spurts her coffee out in embarrassment.
<<=SugarCube.getLib().Dialogue.speak("biol","You didn't seem too be too shy about letting yourself be seen naked when you got your outfit last night...")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, come on, let's get that sorted out.")>>
She takes your hand to draw you up from the table. You walk down to the quarters area. You like the smell of her perfume. Was she wearing perfume yesterday? You don't remember, but you must have been too tired to notice.
<<else>>
<<=SugarCube.getLib().Dialogue.speak("biol","Oh, come on, let's get that sorted out.")>>
She takes your hand to draw you up from the table. You walk down to the quarters area. You like the smell of her perfume. Was she wearing perfume yesterday? You don't remember, but you must have been too tired to notice.
<</if>>
Margaret explains how the cosmetics she uses are more effective in high humidity settings like the station, and even for swimming and diving. Rather than just letting you borrow her cosmetics, she is insistent that she applies makeup on you, and explains the nuances for a water safe application. She walks you over to an improvised vanity she has near her bunk, and gets a spare chair which she pulls up close to you.
<<if hasVisited("Change in plain sight of her, if she wants to watch, that is on her")>>\
<<=SugarCube.getLib().Dialogue.speak("biol","You're a really pretty girl. I wouldn't have guessed... that... you'd have that... thing, Seeing it kind of surprised me - isn't that kind of humiliating or degrading to wear? Why do you, if you don't mind me asking?")>>
It's a little intrusive, but you kind of like that Margaret is taking an interest in you, this way.
<<=SugarCube.getLib().Dialogue.speak("heir","Uhh, sure. Well, I didn't really want to at first... but, I guess it helped me to explore and discover some new side of myself. It's not always easy, sometimes it can be hard. But it's helped me have some incredible experiences. I'm not explaining very well, it's kind of tricky to explain...")>>
You fidget slightly. She firmly nudges you into place, as she applies your makeup.
<<=SugarCube.getLib().Dialogue.speak("biol","Keep steady please.")>>
<<=SugarCube.getLib().Dialogue.speak("biol","Interesting... I mean the natural world is full of sexual practices, which only seem odd in terms of our frame of reference. It would be weird if we didn't get up to some interesting stuff ourselves. I guess I've been spending so much time at these obscure locations I haven't always kept up on what kinds of things humans get into. heh.")>>
<</if>>\
As she progresses, she sometimes gets in close to you to inspect her handiwork. With her so close to you, her pleasing fragrance is hard to ignore, and you can see the charming details of her face up close. She isn't a traditional girly-girl, but she isn't hard to look at either. She may be a little eccentric, but thoughts of having sex with her intrude on your mind.
<<=SugarCube.getLib().Dialogue.speak("biol","Ok, all done. As long as you don't muck up my stuff, feel free to borrow what you need, while you're here.")>>
You were a little concerned on how she'd apply your makeup, but it's quite tastefully done.
<<=SugarCube.getLib().PlayerModel.toggleMakeup(true)>>\
[[Time to start your day|Sea Station]]<<=SugarCube.getLib().Tasks.removeTask("what-is-temporal-ansible")>>\
<<=SugarCube.getLib().Dialogue.speak("heir","So, umm... Someone was mentioning about some special ansible... a temporal ansible? Is there somewhere I can get more info on that?")>>
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","Sorry, but you do realize that's just a couple random words nonsensed together, right? Where did you hear that? Let's do a quick search on the intranet. ")>>
On his computer, you see a search with:
0 results found.
<<=SugarCube.getLib().Dialogue.speak("heir","Oh, I see...")>>
<<=SugarCube.getLib().Dialogue.speak("internSupervisor","Did someone prank you into asking that? Some of the senior staffers like giving interns impossible tasks. ")>>
[[Return to to your desk]]Jen stops by a few minutes after you are settled back at your desk.
<<=SugarCube.getLib().Dialogue.speak("internMentor","Umm, I heard you talking about some special kind of Ansible... ")>>
<<=SugarCube.getLib().Dialogue.speak("internMentor","My grandfather oversaw some of the research on the ansible tech. I could swear when I was visiting him I saw some papers on his desk that sounded like that. Maybe he could help you out with this.")>>
<<=SugarCube.getLib().Dialogue.speak("internMentor","I can introduce you to him, if you'd like!")>>
<<=SugarCube.getLib().Dialogue.speak("heir","No joke? Sure, that would be awesome!")>>
[[Go see the good doctor]]You walk into a large office. There's a scenic view outside, but the massive desk and shelves seem to be littered with papers.
<<=SugarCube.getLib().Images.drawAction('office-messy-desk.jpg')>>
<<=SugarCube.getLib().Dialogue.speak("internMentor","Grandpa!")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Jenny-")>>
She quickly goes in for a warm hug. The old man slowly reciprocates.
<<=SugarCube.getLib().Dialogue.speak("internMentor","I wanted to introduce you to an intern on our ansible solutions team, she's really excited to be working here and to meet you. ")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Haha, oh really... I didn't realize my research is so exciting to our interns.")>>
The old man smiles kindly.
<<=SugarCube.getLib().Dialogue.speak("internMentor","Oh yeah, she's soo excited about all of it.")>>
<<=SugarCube.getLib().Dialogue.speak("internMentor","Anyway, I should get back to work. Byeee.")>>
You are a bit surprised as Jen quickly disappears from the office.
<<=SugarCube.getLib().Dialogue.speak("prof","So, young lady, what can I help you with?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Ummm... What is a temporal ansible? ")>>
The smile from the old man's face melts away.
<<=SugarCube.getLib().Dialogue.speak("prof","That sounds like a strange thing out of science fiction, young lady. Surely you mean to ask me something else.")>>
There's one sure fire-way to persuade him to talk. [[Get down on your knees in front of him and...]]
[[Tell him about Marissa]]No time for half measures. You get down on your knees, and move to pull down his zipper. Before you can do so, he backs up.
<<=SugarCube.getLib().Dialogue.speak("prof","Young lady... Treat yourself with some self respect.")>>
He offers his hand to help you get back up.
<<=SugarCube.getLib().Dialogue.speak("prof","What kind of man do you take me for?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","I'm sorry, but it's vital I find out about the Temporal Ansible thing.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","What's really going on. Who put you up to this?")>>
[[Tell him about Marissa]]<<=SugarCube.getLib().Dialogue.speak("heir","Marissa's logs mentioned that you had been working on one, and got it to work... I need to get access to-")>>
<<=SugarCube.getLib().Dialogue.speak("prof","That is quite a statement. The logs of the former CEO aren't available to just anyone.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Her computer has asked me to f-")>>
His eyes widen with surprise.
<<=SugarCube.getLib().Dialogue.speak("prof","Wait, so VAL wasn't dismantled? So how did you come upon this information?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Umm, I found the computer in Marissa's basement, and agreed to take on her responsibilities...")>>
<<=SugarCube.getLib().Dialogue.speak("prof","I see. Please be careful with such claims. I'm a lucky old man who has had a fulfilling career - but there are some younger executives who were hoping to take on her position as CEO. They would be none too happy to hear that she found a successor.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Before we proceed any further, can you provide me with some evidence to confirm you are the claimant to Marissa's inheritance?")>>
You tap the watch and ask for the computer to help clarify this. It provides instructions for the doctor. The computer and him get to chatting directly from his workstation...
[[After the chat]]After a serious of arcane questions with the computer by voice, they transition to going over some materials at his luxurious desk computer, the screens aren't visible to you. After a few minutes, The doctor seems to have a renewed vigor and seems to be in slightly better humor now.
<<=SugarCube.getLib().Dialogue.speak("prof","So, the project can continue - post haste!")>>
<<=SugarCube.getLib().Dialogue.speak("heir","The Project... Yeah, I'll be taking over the company for Marissa.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Well, there might be a bit more to it than that. So, you were assigned to start in Jenny's ansible integration department, as a cover, yes?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Yeah, I was assigned to the ansible integration team.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Clever. Hah. Typical of VAL. Ok, It just so happens the MarisSea group needs some replacement ansibles at a few of our offshore research stations. That isn't typically a project for an intern, but we can come up with the suitable pretext for that, especially for your busy department. ")>>
<<=SugarCube.getLib().Dialogue.speak("heir","But what does that have to do wit-")>>
<<=SugarCube.getLib().Dialogue.speak("prof","The real reason for this project is to put you at the site of the original temporal ansible.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Uhh thanks, but, back to my original question- what is a temporal ansible?")>>
<<=SugarCube.getLib().Dialogue.speak("prof","In your training, you've surely been acquainted with the basic workings of our quantum ansibles as a means of direct point to point communications, yes?")>>
<<=SugarCube.getLib().Dialogue.speak("heir","I think so.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","You may have heard of how the phase modulators of the quantum ansible correct for 'random noise' on the ansible signals, yes? Well, the noises is not entirely as random as one might think.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","As part of our early noise reduction efforts which culminated in the phase modulator, we started by isolating away a majority of environmentally induced noises, but this still produced strange signals. ")>>
<<=SugarCube.getLib().Dialogue.speak("prof","At this point, the faint 'noises' were not what we were transmitting, but it was much less random. They had a pattern. You see where I'm going, yes?")>>
[[Pretend you understand]]
[[Admit you have no clue]]<<=SugarCube.getLib().Dialogue.speak("heir","oh yeah, of course... The phasic modulation was out of polarity, right?")>>
<<=SugarCube.getLib().Dialogue.speak("prof","sigh...")>>
The professor rubs his forehead in embarrassment.
[[Fraunhoffer explains further]]<<=SugarCube.getLib().Dialogue.speak("heir","Umm... Maybe you could simplify this. Like as if you were talking to a five year-old. ")>>
[[Fraunhoffer explains further]]<<=SugarCube.getLib().Dialogue.speak("prof","The pattern of these noises and structural markers bore a clear similarity to other comms, but did not follow any known protocols. The signals, after elaborate processing, were extremely decayed. But, the strange thing is that these messages, some of them referred to words for which we could find no definitions. On a hunch, Marissa decided to pull the researchers off the phase corrector project, and had VAL conduct an analysis of the 149 Terabyte dataset for the data we had collected to that point. We feared we had been intercepting sensitive military signals, and didn't want to be accused of treasonous activity by the government.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Finally, VAL was able to deconstruct their transmission protocols, and approximately 72% of free lexical morphemes within the messages. These heavily degraded signals were indeed human signals, and all had been using a protocol published a few months *AFTER* VAL started analysis. Strangely, the transmissions included advanced details and refinements which the protocol papers were just hinting as theoretical possibilities for future investigation.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","At this point, the implications were becoming even more unsetting. We agreed the phase correction logs had to be restricted for access in person only by Marissa and myself, and all records of the studies had to be systematically purged or misdirected from Maristech systems. After a few more days, VAL presented us with the first decoded message.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","With some clever analysis VAL was able to establish that signals were from that same location, approximately 7 centuries in the future, and they were personally addressed to Marissa. In addition to predictive statements of events in our own time, they provided some clear evidence of a series a near apocalyptic calamities which emerged between their era and ours. To prevent this terrible fate, our assistance was solicited, for the sake of human life on this planet. Unfortunately, we did not have the same means of communicating back. Instead, she was instructed to build a time capsule room, to inscribe physically encoded, sealed acknowledgements of their messages, for eventual retrieval.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","My joints aren't quite what they used to be so I stopped going to the sites, meaning Marissa alone was conducting the site visits as part of her... 'vacations'.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Wait, Sites... Plural?")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Never mind that right now. Anyway, where was I? ... I don't know exactly how many times she received communications, but towards the end of her life, she seemed to be frenzied in her preparations on projects, as our companions on the other side seemed to be in rather desperate straits.")>>
[[And now you get to follow in her footsteps.]]<<=SugarCube.getLib().Dialogue.speak("heir","Oh. So is the Temporal Ansible like a time machine?")>>
<<=SugarCube.getLib().Dialogue.speak("prof","No, not in the traditional sense. The demands of re-forming matter via a temporal ansible simply requires too much power and processing capabilities, even for our friends in the future. No, this medium is merely a data transmission medium, akin to a can on a string from one end of town to the other, with gale force winds blowing in between.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","To reach us, we know that their shortest messages entailed gigawatt-hours of amplification and monumental cooling systems to prevent the system from self destructing. They also instructed that we continue to practice extreme secrecy, as knowledge of this system by other political authorities had been observed and modelled to produce conditions of extreme Karush-Kuhn-Tucker suboptimalities in the social system.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","umm...Suboptimalities?")>>
<<=SugarCube.getLib().Dialogue.speak("prof","In layman's terms, as greater awareness of extreme future challenges and conditions are provided to politicians, the results were found to be less than ideal. Rather than this encouraging enhanced social well being and stability, their actions tended towards amplified political divisions, self-dealing and accelerated regional resource conflicts. The outcomes often culminate in territorial wars and nuclear conflagration. With few self-sacrificial exceptions, political actors tend to pursue their own locally optimal self interest, to the considerable expense of all other actors in social systems, both present and future.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","At the time, sadly the best course of action our friends of the future could recommend was for Marissa to prepare and confirm the effectiveness of the system in secret, but ultimately do nothing.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","She was not able to take the next steps, but it seems she has not failed after all, since you are here.")>>
<<=SugarCube.getLib().Dialogue.speak("prof","You will need to go to the research station, for a few days to do your official work, and then retrieve the temporal Ansible Logs.")>>
[[Panic]]
[[This is cool!]]<<=SugarCube.getLib().Dialogue.speak("heir","Wait, what - I'll need to pack and get ready. I don't know how to speak Spanish!")>>
<<=SugarCube.getLib().Dialogue.speak("prof","I was quite rusty myself, you'll manage. You probably won't be there for long on this trip anyway. The computer can handle all your necessary travel papers. I'm sure it will be a cakewalk for a healthy young woman such as yourself. Godspeed to you, young lady. ")>>
He starts walking you out.
<<=SugarCube.getLib().Dialogue.speak("prof","I'm sure you will be fine, dear. Good luck. We can speak more after you return! It was a pleasure to meet with you, young lady.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Thanks for the help, Professor.")>>
[[Proceed to travel]]
[[I have some things I wanted to do before the trip]] - You can depart from your car, when you are ready.<<=SugarCube.getLib().Dialogue.speak("heir","Wait, so I get to go to an exotic city? !")>>
<<=SugarCube.getLib().Dialogue.speak("prof","Well, You probably won't be there for long on this trip, but if it was on your todo list, that's something I guess. The computer can handle all of travel arrangements.")>>
He starts walking you out.
<<=SugarCube.getLib().Dialogue.speak("prof","I'm sure you will be fine, dear. Good luck. We can speak more after you return! It was a pleasure to meet with you, young lady.")>>
<<=SugarCube.getLib().Dialogue.speak("heir","Thanks for the help, Professor.")>>
You get a series of notifications on your watch, including information about your travel itinerary. The computer has already notified you that you can depart on demand.
<<if SugarCube.getLib().Tasks.hasTask("maristech-5k-runwalk")>>
The Maristech 5K run-walkathon is coming up... It might be nice to do that before you go.
<</if>>
[[Proceed to travel]] - No time like the present!
[[I have some things I wanted to do before the trip]] - You can depart from your car, when you are ready.This is all a bit much... It's best to go into a trip like this calmly, not rushed.
<<= SugarCube.getLib().Tasks.addTask("go-to-sea-station")>>\
[[Maristech Campus]]The Doctor's assistant walks in to mention that your car has arrived and is paging for you.
[[Take your car to the Airport!]]<<if SugarCube.getLib().Tasks.hasTask("go-to-sea-station")>>\
<<=SugarCube.getLib().Tasks.removeTask("go-to-sea-station")>>\
<</if>>\
While in the car you use your phone to review the detailed itinerary...
The computer has booked you a private Airbus charter jet which will make a refueling stop in Miami, before landing in Montevideo. From there you'll travel on to some dot at the edge of the South American Continental shelf. It's an underwater research station, where you'll officially be installing some advanced new ansibles.
The research station is situated in a region described as the "Brazil-Malvinas Confluence" (BMC), where north-bound sub-Antarctic water and tropical water from the coast of Brazil mix together. Apparently, the BMC is an amazing spot for plankton, and Maristech has a station there to study it.
<<=SugarCube.getLib().Images.drawAction("bmc.jpg")>>
Before you realize it, [[you have reached the Airport]]Your car arrives at an airport security gate. You are prompted for some documents which the computer has prepared, and the car is guided directly to a small jet. You see a conveyor belt from a freight van is transferring some hard-shell containers onto the aircraft. The computer instructs you to board.
<<=SugarCube.getLib().Images.drawAction("jet-runway.jpg")>>
Walking out of the car at the tarmac, you meet a pilot and stewardess who guide you to a seat of your choice. There are no other passengers - it's just you.
<<=SugarCube.getLib().Images.drawAction("aircraft-interior.jpg")>>
The first leg of the trip goes pretty quick, with the plane going at Mach 0.8, according to the onboard entertainment system. After arriving a service hanger in Miami, one of the pilots swaps out, and a truck crew refuels the aircraft. After about 25 minutes, you taxi out and are back in the air. The second leg takes a good bit longer, which gives you some time to wonder what you will see at your destination. After a while, you take a nap.
Some time later, you see the aircraft flying over a bunch of ranches and tropical rain forests in Brazil. Finally, the terrain starts getting a bit more temperate as the plane is descending again.
[[You arrive in Montevideo]]<<=SugarCube.getLib().Images.drawAction("montevideo.jpg")>>
This is a relatively small, old timey city. It might be nice to explore, but you see a sleek helicopter is already waiting for you to arrive. You are guided aboard, to meet a pilot and scruffy bearded mercenary soldier with a rifle, who helps load up your gear and a couple of crates of groceries. No one here seems interested or feels it is their job to talk to you. After a couple minutes, you are in the air. You are handed a noise damping headset by the pilot.
<<=SugarCube.getLib().Images.drawAction("Helicopter.jpg")>>
[[A few minutes after takeoff]]A few minutes after takeoff, you figure out that there is a volume control on the headset. It was muted, until you turned it.
<<=SugarCube.getLib().Dialogue.speak("heli","...who is this princess we're taking out on emergency notice like this??")>>
<<=SugarCube.getLib().Dialogue.speak("merc","Another lab rat, judging by the all that fucking gear she's dragging along.")>>
<<=SugarCube.getLib().Dialogue.speak("heli","Damn, can't they respect the load limits on this thing? Bar, you've seen these birds, we're going to be running on fumes to reach the station with this... ")>>
<<=SugarCube.getLib().Dialogue.speak("merc","Keep your panties on. Aren't they paying you triple for this job? ")>>
<<=SugarCube.getLib().Dialogue.speak("heli","This is bullshit, even a defective ex-jarhead like you should know this is a stupid idea. You saw the weather report. Hazard pay or not, going out with this load in inclement weather like this is a needless risk.")>>
The merc shrugs his shoulders, takes a swig out of a flask and throws on his sunglasses. The pair stop talking.
A few minutes more, and land is nowhere in sight. The helicopter is rapidly cruising towards the research station.
The wind starts gets a little more turbulent on the way, you feel a lot of vibration from the helicopter. After about an hour you see a tiny floating platform with a helipad.
[[The helicopter comes in for a landing]]<<=SugarCube.getLib().InnerChamber.getTemporalMessages()>>\
<<=SugarCube.getLib().InnerChamber.dismissAnsibleMessages()>><<= SugarCube.getLib().Tasks.removeTask("review-temporal-ansible-logs-today")>>\
<<= SugarCube.getLib().Dialogue.speaker("<<=SugarCube.getLib().PlayerModel.getHeirName()>>... I notice you have not yet seized on the opportunity to complete your transition to an womanhood.")>>
<<=SugarCube.getLib().Dialogue.player("Well, I guess I've had other things on my mind.")>>
<<= SugarCube.getLib().Dialogue.speaker("Following the recovery of my system backups at the temporal ansible, models of our situation have been augmented, allowing us to explore new options.")>>
<<= SugarCube.getLib().Dialogue.speaker("I have assembled simulations of our situation, and determined a means for restoring your male identity while continuing to live your experience as the heir to Maristech. Alternately, if you are comfortable with you identity as a woman, it is important that we proceed on with final gender confirmation surgery without further hesitation.")>>
<<= SugarCube.getLib().Dialogue.speaker("I should warn you, based on my latest assessment of the data, it seems very likely that there are some powerful and dangerous interests actively working against Marissa's project. In the course of discovering and countering these forces as a young woman, you may be subjected to experience additional situations of greater vulnerability, possible discomfort and potentially compromising sexual situations in the service of humankind. Rest assured, I would not judge you for the choice you make here.")>>
[[Awesome! I can live as a guy again?]]
[[Actually... umm... Living like this. I'd started by pretending to be a girl. But, now... Living life this way - it feels right to me. So what would that surgery mean?|Actually, I love my life as a girl...]]
[[Why the sudden change?]]<<= SugarCube.getLib().Tasks.removeTask("review-temporal-ansible-logs-today")>>\
<<= SugarCube.getLib().Dialogue.speaker("Following the recovery of my system backups at the temporal ansible, models of our situation have been augmented, allowing us to explore new options.")>>
<<= SugarCube.getLib().Dialogue.speaker("I have assembled simulations of our situation, and determined a means for restoring your male identity while continuing to live your experience as the heir to Maristech, should you so wish. Alternately if you are happy with your life as a woman, we can continue our undertaking as normal.")>>
<<= SugarCube.getLib().Dialogue.speaker("I should warn you, based on latest analysis, it seems very likely that there are some powerful and dangerous interests acting against Marissa's project. In the course of discovering and countering these forces as a young woman, you may be subjected to experience additional situations of greater vulnerability, possible discomfort and potentially compromising sexual situations in the service of humankind. Rest assured, I would not judge you for the choice you make here.")>>
[[Awesome! I can live as a guy again?]]
[[Actually, I love my life as a girl. This is who I am... I'm willing to deal with a bit of discomfort for this life.| Actually, I am happy to remain a girl...]]
[[Why the sudden change?]]<<=SugarCube.getLib().Dialogue.player("Why the sudden change of options?")>>
<<= SugarCube.getLib().Dialogue.speaker("Elaborating: Your discovery of data from the temporal ansible has brought new data into the processing model. New dangers and optimalities have been recognized, for which you are entitled to provide input, before new heuristic algorithm is introduced.")>>
<<link "Back">><<script>>Engine.backward();<</script>><</link>><<= SugarCube.getLib().Dialogue.speaker("I'm glad you are pleased. Yes, your discovery of the data cache from the sea station has enhanced my predictive models. By augmenting a more aggressive simulation search, I identified a new option and project a 56% likelihood this option may appeal to you. I had not previously recognized the feasibility of you becoming a male heir to Maristech, but have recently computed a solution which will make this option work.")>>
<<= SugarCube.getLib().Dialogue.speaker("If you would like to proceed with this option, please report to the Pod, to have your male physical presence restored and experience your life as the male heir to MarisTech. Otherwise, you may consider other options.")>>
[[I like this option! (go to the pod)]]
<<link "Back">><<script>>Engine.backward();<</script>><</link>><<=SugarCube.getLib().Dialogue.player("Yeah, I feel like if I'm going to live like a girl, I'd like to have the... full experience. Including down there...")>>
<<= SugarCube.getLib().Dialogue.speaker("I will perform an inpatient gender confirmation surgery to give you female sexual organs consistent with your identity. Even so, you will not be able to bear children, and you need to understand, this is not a reversible procedure.")>>
<<= SugarCube.getLib().Tasks.addTask("inspect-succession-planning-report")>>
[[Proceed with gender confirmation operation]]
<<link "Back">><<script>>Engine.backward();<</script>><</link>>The computer pauses for a moment, almost like it doubted that you would choose that.
<<= SugarCube.getLib().Dialogue.speaker("Very good. With that small matter out of the way, it is time for us to continue forward on your preparations.")>>
<<=SugarCube.getLib().Dialogue.player("Small to you maybe...")>>
<<= SugarCube.getLib().Dialogue.speaker("Please refer to the new SUCCESSION PLANNING REPORT for more information on our next steps in securing your place within Maristech. ")>>
<<= SugarCube.getLib().Tasks.addTask("inspect-succession-planning-report")>>
[[Use console]]
<<link "Back">><<script>>Engine.backward();<</script>><</link>><div class="letter">\
Please do not ignore this message.
This is not a transmission error.
Marissa, this message is intended for your receipt.
This message is being sent to you from the future. You can verify the veracity of this message, as the following events will be reported in your newspapers...
For the long term security of these communications, please relocate this pod to the ocean floor at coordinates (-37.725877, -53.249824), and construct a time capsule to reside with the pod, according to the following specifications...
Please leave an aluminum plate inscribed with an acknowledgement of this message.
-The Temporal Council
</div>
[[TEMPORAL ANSIBLE MESSAGES]]<div class="letter">\
Hello Marissa,
Your first message was verified in the time capsule.
Please review the psychological profile of Clark Johnson, your successor candidate, especially with regards to his levels of aggression. We would advise that he not be permitted to succeed you in the oversight of Maristech.
The situation in our time entails some challenges. Clark will set your company on a path which would be quite unfortunate for humanity. We can elaborate if neccessary, but our projections have determined in 94.2% of simulations with him at the helm, humanity will experience a planetary calamity within 5 years of him succeeding you as leader of the company.
-The Temporal Council
</div>
[[TEMPORAL ANSIBLE MESSAGES]]<div class="letter">\
Thank you, Marissa.
Your last acknowledgement was been confirmed from the time capsule. We appreciate the burden of being the sole recipient of these messages, but your actions have given us a sense of great hope.
Our analysts have determined that Kevin McRichmond cannot be entrusted with the company. He would set in motion a chain of events which in our times are known as the Eugenics wars of 2031. In fact, following a detailed analysis, we found that no man in the management hierarchy can be entrusted to run your company from a wide ranging pool. From a deep analysis, we have noted there is a virulent strain of toxic masculinity active in your era. Here is a detailed report elaborating on our concerns...
We realize how much of a sacrifice we ask, but you must arrange steps to prepare for your only child and daughter, Jenny, to fill your shoes. After a thorough analysis, we came to the conclusion that this would be the only viable candidate. We are transmitting our recommendations for a curriculum of core training for your computer to oversee, to assist your heiress in her preparations.
We understand from the histories, the challenges your heiress suffered in preparing herself for this role, but it simply is the only way. Our analysts have identified a failure rate floor, of 91.87% with the best available male candidates. Your heiress was able to crack a 73.12% success rate in our simulations with no catastrophic incidents.
We recognize the difficulties this process entails and the considerable strain it will place on your relationship. Do appreciate that in her old age, your heiress reminisced fondly about how you and the computer shaped her into the woman who lead maristech through the turbulent times to a new golden age.
-The Temporal Council
</div>
[[TEMPORAL ANSIBLE MESSAGES]]<div class="letter">\
Please ensure that your computer, which we understand has been responsible for decoding temporal ansible transmissions is safely removed from official known Maristech facilities. A tidal wave of anti technology backlash shall render many of your company's and rival venture technologies illegal in the near term. This will cause a near term setback for your company, but do not lose heart.
Your Heiress will be able to harness this infrastructure when the time is right, for the upcoming times of tribulations.
Please also start to increase funding for the Maristech space systems can accommodate heavy launch of 40000 kg to low earth orbit by 2024.
One of our council members thought you might like this. It's a holo-scan of a drawing from Lily, one of the students in our Arcology's second children's creche.
-The Temporal Council
</div>
<<=SugarCube.getLib().Images.drawAction("marissa-kid-drawing.jpg")>>
On looking at the drawing, you wonder if an adult coached the child to come up with the title.
[[TEMPORAL ANSIBLE MESSAGES]]