<<if ndef $profile_pic_corr20>><<set $profile_pic_corr20 to false>><</if>>
<<if not $profile_pic_corr20 and Number($player.corruption) gte 20>>
<<set $profile_pic to 2>>
<<set $profile_pic_corr20 to true>>
<<run setup.bigFade("Emily feels more corrupted than before.")>>
<</if>>
/* Stat caps for this version — 35 corruption / 10 intelligence.
Exempts the Principal-pills temporary surge (real value restored after that
scene) and the literal 100-corruption bad-ending override in forest.twee. */
<<if Number($player.corruption) gt 35 and not ($day3 and $day3.principalCorBase isnot undefined) and Number($player.corruption) isnot 100>>
<<set $player.corruption to 35>>
<<toast "Emily can't get more corrupted in this version">>
<</if>>
<<if Number($player.intelligence) gt 10>>
<<set $player.intelligence to 10>>
<<toast "Emily can't get more corrupted in this version">>
<</if>>
<div class="sidebar-caption">
<div class="sidebar-time"><<= $world.time>></div>
<<if $day4 and $day4.drunkMode>>
<div class="sidebar-portrait is-wasted-bounce">
<img src="Images/Hometown/drunk.webp" alt="Profile" class="profile-drunk">
</div>
<<elseif $day5 and $day5.hornyMode>>
<div class="sidebar-portrait is-horny-bounce">
<img src="Images/Hometown/drunk.webp" alt="Profile" class="profile-horny">
</div>
<<else>>
<div class="sidebar-portrait">
<<if $profile_pic is 2>>
<img src="Images/profile/2.jpg" alt="Profile">
<<else>>
<img src="Images/profile/1.jpg" alt="Profile">
<</if>>
</div>
<</if>>
<div class="sidebar-stats-box">
<div class="sidebar-stat-row">
<span class="sidebar-stat-label"><i class="fa-solid fa-coins stat-icon money-icon"></i> Money</span>
<span class="sidebar-stat-val money-val">$<<= $player.money>></span>
</div>
<<if $day4 and $day4.drunkMode>>
<div class="sidebar-stat-row is-wasted-corr">
<span class="sidebar-stat-label"><i class="fa-solid fa-fire-flame-curved stat-icon corr-icon"></i> Corruption</span>
<span class="sidebar-stat-val corr-val"><span class="corr-infinity">∞</span></span>
</div>
<<elseif $day5 and $day5.hornyMode>>
<div class="sidebar-stat-row is-horny-corr">
<span class="sidebar-stat-label"><i class="fa-solid fa-fire-flame-curved stat-icon corr-icon"></i> Corruption</span>
<span class="sidebar-stat-val corr-val"><span class="corr-infinity">∞</span></span>
</div>
<<else>>
<div class="sidebar-stat-row">
<span class="sidebar-stat-label"><i class="fa-solid fa-fire-flame-curved stat-icon corr-icon"></i> Corruption</span>
<span class="sidebar-stat-val corr-val"><<= $player.corruption>></span>
</div>
<</if>>
<div class="sidebar-stat-row">
<span class="sidebar-stat-label"><i class="fa-solid fa-brain stat-icon int-icon"></i> Intelligence</span>
<span class="sidebar-stat-val int-val"><<= Number($player.intelligence) || 0>></span>
</div>
</div>
<button type="button" class="sidebar-phone-btn" id="ss-sidebar-phone" title="Phone">
<span class="sidebar-phone-icon" aria-hidden="true">
<svg viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<rect x="7" y="2.5" width="10" height="19" rx="2.5"></rect>
<line x1="10" y1="18.5" x2="14" y2="18.5"></line>
</svg>
</span>
<span class="sidebar-phone-label">Phone</span>
</button>
</div>/* Core state - remake */
<<set $player to {
name : "Emily",
money : 40,
energy : 85,
corruption : 1,
intelligence : 0,
/* worn outfit: sleep | casual | jogging */
outfit : "sleep"
}>>
/* Owned clothes (Portugal wardrobe) — expand at mall */
<<set $wardrobe to {
casual : true,
jogging : false
}>>
<<set $world to {
day : 1,
time : "Evening",
location : "Party"
}>>
<<set $relations to {
David : 55,
Kelly : 40
}>>
/* Original-style flags */
/* NTR is on by default — there's no in-game toggle anymore; players who
don't want the NTR content simply skip its quest branches. */
<<set $ntr to true>>
<<set $ntr_david to true>>
<<set $profile_pic to 1>>
<<set $profile_pic_corr20 to false>> /* one-time swap + message at Corruption 20 */
<<set $havesex to false>>
<<set $kelly_photo to false>> /* David saw Kelly's face (Emily sent pic) */
<<set $flags to {}>>
/* Ekon delivery job (Albert route) — XP +10/shift, 100 XP/level */
<<set $ekonJob to {
level : 1,
xp : 0,
shiftsTotal : 0
}>>
<<set $day2 to {
shower : false,
room : false,
living : false,
kitchen : false,
basement : false,
photo : false,
diaryFound : false,
diaryRead : false,
textDavid : false,
evening : false
}>>
<<set $day3 to {
shower : false,
dressed : false,
breakfast : false,
leftHome : false,
tornTop : false,
class1 : false,
class2 : false,
class3 : false,
intGainToday : false,
hallway : false,
david : false,
davidDiary : false,
principal : false,
principalDone : false,
principalBJ : false,
principalSex : false,
friends : false,
leftCollege : false,
homeEve : false,
dadTalk : false,
workedCafe : false,
cafeShiftsToday : 0,
attendedCollege : false,
cafeVisit : false,
parkVisit : false,
pornToday : 0,
fixedMirror : false,
cafeGropeCorGiven : false
}>>
/* Hometown cafe job (Emily's town, Day 3–4) — max Lv 3, separate from Portugal */
<<set $cafeJob to {
level : 1,
xp : 0,
shiftsTotal : 0
}>>
/* Portugal cafe job (Day 6+) — max Lv 5, starts fresh regardless of hometown progress */
<<set $cafeJobPortugal to {
level : 1,
xp : 0,
shiftsTotal : 0
}>>
/* Day 4 open world (farewell) */
<<set $day4 to {
shower : false,
dressed : false,
breakfast : false,
leftHome : false,
friendsTalk : false,
partyPoster : false,
sawDavid : false,
cafeteria : false,
classDone : false,
leftCollege : false,
dressBold : false,
partyReady : false,
partyDone : false,
speechDone : false,
homeEve : false,
toiletVisit : false,
peekElla : false,
jamesDone : false,
toldJames : false,
drunk : 0,
drunkMode : false,
drunkPlay : false,
partyHub : false,
searchDrill : false,
holeMade : false,
gloryhole : false,
roofDone : false,
kitchenDrink : false,
mallDone : false,
mallTease : false,
gloryEvent : false,
gloryBJ : false,
gloryDrilled : false,
roofSlept : false,
dateDone : false,
cardStarted : false,
cardDone : false
}>>
/* Day 5 departure + Portugal arrival (open-world evening) */
<<set $day5 to {
packed : false,
saidByeDavid : false,
flightDone : false,
arrived : false,
showered : false,
doorLocked : true,
jackSaw : false,
napDone : false,
uncleOk : false,
forestDone : false,
drank : false,
bathPeek : false,
kitchenDone : false,
dayDone : false,
cafeVisited : false,
cafeJobAsked : false,
cafeExperience : false,
parkVisit : false,
mallVisit : false,
hornyMode : false,
hornyCafeDone : false,
hornyMallDone : false,
hornyParkDone : false
}>>
/* Portugal open world — independent event flags (not calendar progress) */
<<set $day6 to {
/* Daily (reset on sleep) */
shower : false,
dressed : false,
breakfast : false,
ateToday : false,
classDone : false,
leftHome : false,
collegeDone : false,
/* NTR: Ryan class → wait 1 day → park */
metRyan : false,
ryanPhotoDone : false,
ryanParkReady : false,
ryanParkDone : false,
/* Main: book girl → desk note → wait → washroom */
metBookGirl : false,
bookGirlClassReady : false,
leftDeskNote : false,
bookGirlWashroomReady : false,
bookGirlWashroomNote : false,
gwenWashroom : false,
gwenVirginPath : false,
gwenRejected : false,
gwenHouseInvited : false,
gwenHouseDone : false,
gwenBjTier : 3,
/* After washroom: 2 sleeps → forest gate */
principalMet : false,
principalWaitSleeps : 0,
noBraEventReady : false,
noBraDay : false,
wearingBra : true,
noBraTaped : false,
principalPunishDone : false,
principalPeekPunishWaitSleeps : 0,
principalPeekPunishReady : false,
principalPeekPunishDone : false,
principalGwenWaitSleeps : 0,
principalGwenReady : false,
principalGwenDone : false,
principalCleanDone : false,
kellyGateMsg : false,
secondGateReady : false,
secondGateDone : false,
gateJob : "",
gateRyanMore : false,
gateDavidNude : false,
gateRyanToDavid : false,
kellyFuckedVideo : false,
kellyPhotoSent : false,
ryanKellySexMsg : false,
forestWaitSleeps : 0,
forestGateReady : false,
forestGateDone : false,
forestGateStarted : false,
metKelly : false,
kellyAlly : false,
kellyRiddle : false,
kellyKitchenDone : false,
kellyPhone : false,
kellyParkQuest : false,
kellyParkDone : false,
/* Main after forest: wait 2 more days */
mainWaitSleeps : 0,
mainLoreReady : false,
/* After second gate: wait 2 sleeps → history class arc */
historyWaitSleeps : 0,
historyClassReady : false,
historyClassDone : false,
alleyEventDone : false,
alleyWatch : false,
strangerPhone : false,
kellyTalkWaitSleeps : 0,
kellyTalkReady : false,
kellyTalkDone : false,
/* Vial from Kelly → Jack test → college food drop */
hasVial : false,
vialTestReady : false,
jackVialDrop : false,
collegeFoodDrop : false,
collegeSpillClassDone: false,
liamLockerDone : false,
principalPeekDone : false,
toiletOrgyDone : false,
kellyCallWaitSleeps : 0,
kellyCallReady : false,
kellyEvanDone : false,
/* Jack massage chain after movie */
jackShoulderWaitSleeps : 0,
jackShoulderReady : false,
jackShoulderDone : false,
jackRoomPeekNights : 0,
jackRoomPeekDone : false,
jackRoomPeekCorGiven : false,
jackFullMassageWaitSleeps : 0,
jackFullMassageReady : false,
jackFullMassageDone : false,
jackJogWaitSleeps : 0,
jackJogReady : false,
jackJogDone : false,
davidBlinkDone : false,
jackTeaseDone : false,
kellyForestWaitSleeps : 0,
kellyForestReady : false,
kellyForestMsgSeen : false,
pondVisionDone : false,
pondEmilyDone : false,
pondKellyDone : false,
pondEmilyFail : false,
pondKellyFail : false,
pondSealed : "",
pondBadEnd : false,
pondBadWho : "",
pondBodyChanged : false,
pondBodyBoobs : "",
pondBodyAss : "",
phoneNotif : false,
albertPunishDone : false,
albertRoute : false,
albertRoomDoorOpen : false,
/* After Albert route unlock: wait 3 sleeps → Kelly diary message (LD214) */
kellyDiaryWaitSleeps : 0,
kellyDiaryReady : false,
kellyDiaryDone : false,
albertJobReady : false,
albertJobTalkDone : false,
ekonAgencyUnlocked : false,
ekonMet : false,
ekonWarehouse : false,
ekonShiftToday : false,
deliverGolden : false,
deliverRiverside : false,
deliverTech : false,
ekonFirstShiftDone : false,
/* Level 2: Ekon pulls her off delivery to help in the warehouse instead */
ekonWarehouseTalkDone : false,
jackDateNightDone : false,
jackGirlNightDone : false,
albertDay15Done : false,
bsd14WaitSleeps : 0,
bsd14Ready : false,
bsd14Done : false,
bsd14Scored : false,
liamDateWaitSleeps : 0,
liamDateReady : false,
liamDateDone : false,
liamCoffeeDone : false,
liamPracticeDone : false,
liamStoryType : "",
liamCameraMode : false,
liamStoryPosted : false,
liamStoryHot : false,
/* Basketball / Liam */
basketballDone : false,
liamCourtDone : false,
liamCourtWaitSleeps : 0,
liamCourtReady : false,
liamFollowWaitSleeps : 0,
liamFollowReady : false,
liamFollowDone : false,
liamQuest : false,
/* NTR follow-ups */
ryanDavidThreat : false,
ryanJogPhoto : false,
ntrCheatSleeps : 0,
ryanCheatReady : false,
ryanCheatMsg : false,
ryanCheatPhoto : false,
/* After cheat photo: 1 sleep → David not-cheated counter */
ntrCounterSleeps : 0,
davidCounterReady : false,
davidCounterDone : false,
/* After counter: 1 sleep → night room → Ryan night walk */
ntrNightWaitSleeps : 0,
nightWalkReady : false,
nightWalkDone : false,
/* After first night walk: 3 sleeps → second walk + Jack peek + David hand evidence */
ntrPeekWaitSleeps : 0,
jackPeekReady : false,
jackPeek : false,
ryanRepliedNude : false,
pendingDavidNude : false,
davidSawNude : false,
davidCalledEmily : false,
jackDatingWaitSleeps : 0,
jackDatingReady : false,
jackDatingDone : false,
datingApp : false,
/* Class Socialize one-shot: classmate introduces Luma photo app */
classSocialAppDone : false,
socialApp : false,
cameraMode : false,
/* Jack: evening living room movie (one-shot story) */
jackMovie : false,
/* Cafe */
cafeHired : false,
cafeShiftsToday : 0,
cafeShift : false,
cafeGropeCorGiven : false,
cafePromoOffered : false,
cafePromoAccepted : false,
parkVisit : false,
mallVisit : false,
homeEve : false
}>>[[Patreon]]
[[Discord]]
<<link "Feedback form">><<run setup.Phone.openFeedback()>><</link>><p>Support the game and check out more games/updates on <a href="https://www.patreon.com/c/LadyDeveloper" target="_blank" rel="noopener">Patreon</a>.</p>
[[Back|previous()]]<p>Join the <a href="https://discord.gg/6MmAymdf4j" target="_blank" rel="noopener">Discord</a>.</p>
[[Back|previous()]]<<set $world.day to 1>>
<<set $world.time to "Night">>
<<set $world.location to "Party">>
The house pulsed with life-music boomed from the speakers, neon lights flickered across the walls, and the scent of alcohol mixed with perfume and sweat. Emily stood near the kitchen, a red plastic cup in her hand, watching her friends move to the rhythm of the night.
<img src="Images/Chapter 1/1.gif">
Sarah stepped up, grinning.
<Sarah> Hey, Emily! Come dance with us! </Sarah>
Jake raised his drink, laughing.
<Jake> Yeah, you've been standing there all night! </Jake>
Emily chuckled, shaking her head. Dancing wasn't really her thing. She took another sip, letting the music wash over her.
Then, a familiar voice cut through the noise.
David stepped close, his voice low.
<David> Emily... </David>
She turned to face him. His eyes held a softness, a quiet intensity that sent a shiver down her spine.
<David> Are you ready </David>
Her heart pounded. She had thought about this before, wondered how it would feel. The music, the crowd, the party-they all faded into the background.
<et>Finally. I've wanted this for so long.</et>
She swallowed, then nodded.
<Emily> Yes... I'm ready </Emily>
David smiled, fingers intertwining with hers. Without another word, he led her through the crowd, up the stairs, and into a dimly lit room.
[[Room|RD1]]<<set $world.location to "Upstairs room">>
Emily and David had been together for months, their connection growing deeper with every shared moment. From lingering touches to whispered confessions, their love had only intensified. They were ready to take the next step.
Hand in hand, they ascended the stairs, their hearts beating in sync. The world outside faded away, leaving just the two of them wrapped in the warmth of anticipation.
<img src="Images/Chapter 1/2.gif">
In the quiet intimacy of the bedroom, golden light filtered through the curtains, casting a soft glow over them. David reached out, his fingers tracing a delicate path along Emily's arm before pulling her close.
<img src="Images/Chapter 1/3.gif">
<David> You're breathtaking </David>
His voice was full of reverence, as though she were something sacred.
Emily's lips curled into a shy smile, her cheeks warming under his gaze.
<Emily> You always say that </Emily>
Her voice was barely above a whisper, though her heart fluttered each time.
David tilted her chin up, his eyes searching hers.
<David> Because it's always true </David>
Emily let out a soft breath, her eyes never leaving his as she helped him remove it. She mirrored his movements, unbuttoning her shirt with deliberate slowness, savoring the feeling of his warmth beneath her fingertips.
<img src="Images/Chapter 1/4.gif">
[[Next|ND1]]David lay back, his cock standing tall and proud. Emily straddled him, her hands resting on his chest as she leaned down, her tongue tracing the shell of his ear.
<Emily>You taste so good</Emily> she whispered, her voice a sultry purr.
<img src="Images/Chapter 1/5.gif">
David flipped her over, his body covering hers. He trailed kisses down her neck, her collarbone, her chest, until he reached her breasts. He took one nipple into his mouth, his tongue swirling around the hard bud. Emily moaned, her hands fisting his hair, pulling him closer.
<img src="Images/Chapter 1/6.gif">
David moved lower, his tongue tracing a path down her stomach, her hips, until he reached the apex of her thighs. He parted her folds with his fingers, his tongue delving into her wetness. Emily cried out, her hips bucking against his face.
<img src="Images/Chapter 1/7.gif">
[[Next|N2D1]]With deliberate slowness, he shifted his position, moving to settle between her thighs. Emily spread her legs willingly, her knees falling open to accommodate him. The cool air of the room caressed her exposed skin, heightening her sensitivity as she awaited his touch. David's eyes darkened with hunger as he gazed down at her, his throbbing cock poised just above her entrance, teasing her with its proximity.
<David> Are you ready for me </David>
His voice was low and rough.
<Emily> Yes </Emily>
Her breath was shaky, her hands clutching at the sheets.
<Emily> Please, David </Emily>
He didn't enter her immediately, choosing instead to prolong the anticipation. With slow, deliberate movements, he began to rub his shaft along her sensitive folds, the friction building an intense heat between them.
<img src="Images/Chapter 1/8.gif">
[[Next|David cums too early]]<<set $flags.day1_premature to true>>
David's breathing grew ragged as he continued sliding his cock between her slick folds. The sight of Emily writhing beneath him, her soft moans, and the wet heat of her pussy proved too much. His hips jerked involuntarily.
<David> Fuck... Emily, I- </David>
Before he could push inside her, his cock pulsed hard. Thick ropes of cum suddenly spilled across her stomach and lower breasts in hot, uncontrolled spurts. David groaned deeply, his body shuddering as he came far earlier than he intended.
<img src="Images/2.3/1.gif">
<e> Oh... </e>
Her eyes widened in surprise, a mix of disappointment and amusement crossing her face.
David collapsed beside her, chest heaving, his face flushed with embarrassment.
<et>Again? Seriously... third time now.</et>
<David> Shit... I'm sorry. That hasn't happened in years. You just feel too good. </David>
<David> Just give me 2 minutes and I'll be ready for the second round, baby. I promise. </David>
Emily didn't look up from her phone. She simply hummed in response and kept scrolling.
Fifteen minutes passed. David lay beside her, stroking himself occasionally, willing his cock to harden again. But no matter how much he tried, it remained soft and unresponsive. The earlier embarrassment now turned into growing frustration.
<img src="Images/2.3/2.gif">
Finally, Emily glanced at him sideways, still holding her phone.
<e> No worries, baby. We'll try this later. </e>
His voice came out more defeated than he intended. He leaned in and kissed her shoulder gently.
<David> I'll make it up to you next time. For real. </David>
Emily just nodded quietly, still focused on her phone, the moment clearly lost.
[[Party|PD1]]<<set $world.location to "Party">>
Later that evening, the party was in full swing. Loud music thumped through the house as Emily wandered down the dimly lit hallway, a plastic cup in her hand. She had barely taken a few steps when Sarah appeared from the crowd, grabbing her arm and pulling her into a slightly quieter corner near the stairs.
Sarah leaned in close, eyes sparkling with curiosity and a mischievous grin on her face.
<Sarah> So? How did it go with David? Did you guys finally have sex? </Sarah>
Emily stopped, her shoulders slumping. She looked down at her cup, a clear expression of disappointment crossing her face. She let out a heavy sigh before answering.
<Emily> It didn't happen... </Emily>
Sarah's eyes widened.
<Sarah> What? Why? Tell me everything! </Sarah>
<Emily> He came too early... again. </Emily>
Her voice was low and frustrated.
<Emily> This is the third time now. Ugh... I think I'm going to stay a virgin for the rest of this lifetime. </Emily>
Sarah blinked, then tried to hold back a laugh, covering her mouth with her hand. After a moment, her expression softened into something more conspiratorial. She leaned in closer, lowering her voice.
<Sarah> Don't worry, darling. I have a surprise for you in the bathroom. Just visit there. </Sarah>
Emily frowned slightly, tilting her head in confusion.
<Emily> A surprise? What kind of surprise? </Emily>
Sarah only winked, her smile turning playful and secretive.
<Sarah> Trust me. You'll like it. Go on... it's the one at the end of the hallway, upstairs. Don't keep him waiting. </Sarah>
<et>A surprise, huh? After tonight... maybe I need one.</et>
Emily hesitated for a second, still feeling the sting of disappointment from earlier, but curiosity won out. She nodded slowly and started making her way toward the stairs, her heart beating a little faster.
[[Toilet|T2D1]]<<set $world.location to "Party bathroom">>
Emily hesitated for a second, still feeling the sting of disappointment from earlier, but curiosity won out. She nodded slowly and made her way upstairs toward the bathroom at the end of the hallway. The music from the party was muffled once she stepped inside and locked the door behind her.
The bathroom was dimly lit with a soft glow. As she looked around, her eyes landed on something unexpected on the far wall - a perfectly cut glory hole at waist height. Above it, bold black marker words were written clearly on the wall:
"Lay down here"
Emily froze, her cheeks flushing hot. She stared at the hole, heart racing. On the other side, she could hear faint movement - someone was definitely there, waiting silently.
She bit her lip, a mix of nervousness, embarrassment, and unexpected arousal washing over her. After the frustrating night with David, the promise of an "amazing orgasm" sounded dangerously tempting... but this was risky and completely anonymous.
<img src="Images/2.3/3.png">
[[Next|She does it]]<<toast "NTR route with David - Unlocked">>
<<set $player.corruption += 1>>
<<set $ntr_david to true>>
<<set $ntr to true>>
<<set $flags.day1_glory to true>>
Emily stood there staring at the crude writing on the wall, her heart hammering in her chest. The frustration from earlier with David - the third time he had cum too early and left her aching and unsatisfied - was still burning inside her. Her pussy was still wet and throbbing from the interrupted encounter. The promise of an "amazing orgasm" was too tempting to ignore any longer.
<Emily> (whispering to herself) Fuck it... I need this so bad... </Emily>
With shaky hands, she turned around, lifted her short dress, and backed up against the wall. She positioned herself carefully so her bare pussy and ass were pressed right against the glory hole, offering herself completely to whoever was on the other side.
<img src="Images/2.3/4.webp">
Almost immediately, a warm, strong hand slid through the hole. The fingers gently traced along her slick folds, teasing her entrance before one thick finger pushed inside her. Emily gasped, her hands bracing against the sink as pleasure shot through her body.
The stranger's fingers were skilled - curling just right, stroking her inner walls while his thumb found her swollen clit and rubbed firm circles. Emily's knees weakened as she moaned softly, pushing back against the hand desperately.
<img src="Images/2.3/5.gif">
<Emily> Oh god... yes... </Emily>
He added a second finger, pumping faster, the wet sounds echoing in the small bathroom. The pressure built rapidly inside her, far quicker than she expected. Her breathing turned into short, desperate pants.
Suddenly, her body tensed. A powerful orgasm crashed over her as she squirted hard, her juices gushing onto the stranger's hand and dripping down her thighs. Emily cried out, her legs trembling violently as wave after wave of pleasure ripped through her.
She was still shaking from the intense release when her phone suddenly rang, breaking the hazy afterglow.
Emily's eyes flew open. She quickly pulled away from the hole, her dress falling back into place as she fumbled for her phone with wet, trembling fingers.
It was her father.
<Emily> Shit... </Emily>
She answered, trying to keep her voice steady even though she was still breathless and her legs felt like jelly.
<Emily> H-Hi Dad... Yeah, I'm still at the party... Okay... I'll come home right now. </Emily>
She hung up, her face flushed with a mix of satisfaction and embarrassment. Her thighs were still slick from her squirt as she quickly cleaned herself up in the sink, heart racing from both the orgasm and the sudden interruption.
<Emily> (muttering) Perfect timing, Dad... </Emily>
She took one last glance at the glory hole before unlocking the door and slipping out of the bathroom, legs still a little unsteady as she headed downstairs to leave the party.
[[Home|HD1]]<<set $world.location to "Home">>
<<set $world.time to "Late night">>
Emily stepped into the house, the door creaking as she shut it behind her. The moment she turned, she found her father standing in the hallway, his arms crossed, his expression dark with anger.
<Father> Where have you been </Father>
His voice was sharp, cutting through the silence like a blade.
<Emily> I... I was just with my friends </Emily>
Her voice wavered slightly, but she knew there was no excuse that would satisfy him.
<Father> Do you have any idea what time it is? You are grounded for today, and tomorrow, you will clean the entire house </Father>
Emily lowered her gaze, her heart sinking.
<Emily> Yes, Dad </Emily>
Without another word, she trudged up the stairs to her room, shutting the door behind her. She collapsed onto her bed, frustration and disappointment swirling inside her.
She turned onto her side, staring at the ceiling, her mind drifting back to David-the warmth of his touch, the softness of his lips, the moment they were about to share. A memory that was never completed.
<img src="Images/Chapter 1/9.gif">
With a heavy sigh, she closed her eyes, letting exhaustion pull her into sleep, longing for what could have been.
/* David's anonymous video message only if Emily used the gloryhole (NTR path).
Dad-call path and "she does not do it" never reach that scene. */
<<if $flags.day1_glory>>
[[Elsewhere, David checks his phone...Meanwhile David]]
<<else>>
She closed her eyes, and her thoughts naturally drifted toward David.
[[Continue|SD1]]
<</if>><<set $world.location to "David's room">>
David lay back on his bed, the noise of the party still echoing faintly in his head.
His phone buzzed.
A new message.
Unknown number.
A slight frown formed on his face as he unlocked the screen.
<div class="terminal-container">
<div class="terminal-topbar">
<span id="termClock">22:14</span>
<div style="display:flex;gap:6px;align-items:center;">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
</div>
<div class="terminal-body" style="height:auto;min-height:220px;">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN:</div>
<div class="bubble only">I hope you're able to guess who she is.</div>
<div class="msg-ts">22:14</div>
</div>
<div class="msg-group">
<img src="Images/2.3/5.gif" style="max-width:200px;border-radius:12px;margin:0.25rem 0;">
</div>
</div>
<div class="terminal-actions">
[[What is this?|Wait_NoReply]]
[[Who are you?|Wait_NoReply]]
</div>
</div>David stared at the screen, his thumb hovering over it.
One minute passed... then five.
Ten minutes.
<david>Still nothing.</david>
The silence felt deliberate.
His jaw tightened as his mind kept going back to the video.
<david>Who was she... really?And more importantly-Who the hell was that guy?</david>
[[Sleep|SD3]]<<set $world.location to "Home - Emily's room">>
<<set $world.time to "Night">>
That night, as Emily drifted into sleep, her dreams took her back to David-his touch, his warmth, the moment that had been stolen from them.
In the depths of her dream, she was back in his arms, their bodies pressed together, skin against skin. His lips traced down her neck, his hands exploring her, igniting something deep within her.
<img src="Images/Chapter 1/10.gif">
<David> I want you </David>
His voice was rough with need, sending shivers through her.
<Emily> Take me, David </Emily>
She felt every sensation-the heat of his breath, the way he filled her completely, the pleasure coursing through her as they moved together in perfect rhythm.
<img src="Images/Chapter 1/11.gif">
Then, suddenly, the world shifted. The dream faded, and reality crashed back in.
Emily's eyes fluttered open, her body still tingling. A slow realization crept over her as she shifted under the covers-her panties were damp with arousal. Heat flooded her cheeks, embarrassment mixing with the remnants of desire.
<img src="Images/Chapter 1/12.jpg">
She let out a shaky breath and pushed the blankets away, forcing herself up.
<Emily> Just a dream... </Emily>
[[Sleep|D1 Sleep]]<<set $world.location to "Home - Emily's room">>
<<set $world.time to "Night">>
That night, as Emily drifted into sleep, her mind felt strangely restless...
She could feel the pull of two different dreams fighting inside her.
What does Emily dream about tonight?
[[Dream about David|SD1]]
[[Dream about a stranger|Dream_Stranger]]That night, as Emily drifted into sleep, her mind - now twisted by corruption - didn't go to David.
Instead, a dark, filthy fantasy took over.
In her dream, she was in a dimly lit room with a complete stranger. A tall, muscular man whose face she couldn't clearly see. He didn't speak much. He simply **took** what he wanted.
His strong hands gripped her waist roughly, slamming her against the wall. Emily gasped as he ripped her dress down, exposing her breasts. His mouth latched onto her neck, sucking hard while his thick fingers slid between her legs, finding her already soaking wet.
<img src="Images/2.3/6.gif">
<Stranger> You're such a needy little slut tonight... </Stranger>
He didn't ask. He didn't care who she belonged to.
With one rough motion, he spun her around, bent her over, and thrust his thick cock deep inside her dripping pussy in a single stroke. Emily cried out in pleasure as he started pounding her mercilessly - hard, deep, and fast.
<img src="Images/2.3/7.gif">
Her moans grew louder, shameless.
<Emily> Ahh-! Fuck... harder...! </Emily>
The stranger gripped her hips tighter, fucking her like he owned her. Every brutal thrust sent waves of forbidden pleasure through her body. In her dream, she didn't resist. She pushed back against him, craving more.
Then, suddenly, the dream shattered.
Emily's eyes snapped open, her chest heaving, body covered in a thin layer of sweat. Her pussy was throbbing, absolutely drenched. She could still feel the ghost of that thick, anonymous cock stretching her.
She bit her lip hard as she slipped a hand between her legs, feeling just how soaked her panties were.
A wave of shame and arousal hit her at the same time.
<img src="Images/Chapter 1/12.jpg">
<Emily> ...It wasn't David this time... </Emily>
She whispered to herself, voice shaky and breathless. The realization only made her clit throb harder.
[[Sleep|D1 Sleep]]<<set $flags.day1_done to true>>
<<set $world.time to "Night">>
<<set $world.location to "Home - Emily's room">>
<p>Emily pulls the covers up. The party, David, her father's anger - all of it blurs at the edges.</p>
<p>
<et>Tomorrow. Clean house. Survive Dad. Try not to think too hard.</et>
</p>
<p>Sleep takes her.</p>
[[...|Day 2 Morning]]<<set $world.day to 2>>
<<set $world.time to "Morning">>
<<set $world.location to "Home - Emily's room">>
<<set $player.energy to 90>>
/* Day 2 open-world state */
<<if ndef $day2>>
<<set $day2 to {
shower : false,
room : false,
living : false,
kitchen : false,
basement : false,
photo : false,
diaryFound : false,
diaryRead : false,
textDavid : false,
evening : false
}>>
<</if>>
<img src="Images/Chapter 1/12.jpg">
<p>Sunlight cut through the curtains. Emily stirred, the weight of last night still on her - the party, David, her father's anger... and the dream she wouldn't admit out loud.</p>
<p>
<et>Grounded. Clean the whole house. Great start.</et>
</p>
<p>
<e>First... coffee. Or a shower. Or I could just stare at the ceiling a little longer.</e>
</p>
<p class="disclaimer">Day 2 is open. Move around the house in any order. Some places open as you clean and explore.</p>
[[Get up|Home Map]]
/* '' HUB ''''''''''''''''''''''''''''''''''''''''''''''''''' */<<set $world.location to "Home">>
<<if $day2.evening>>
<<set $world.time to "Evening">>
<<elseif $day2.diaryRead or ($day2.living and $day2.kitchen and $day2.room)>>
<<set $world.time to "Afternoon">>
<<else>>
<<set $world.time to "Morning">>
<</if>>
<<= setup.locBannerHtml("home", "Home", $world.time + " - free to explore")>>
<<if not $day2.evening>>
<p>
<et>Dad said clean everything. I can do it my way... just not skip it forever.</et>
</p>
<</if>>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Emily\'s Room</span><span class="loc-sub">Bedroom</span></span>' "D2 Room">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Bathroom</span><span class="loc-sub">Shower</span></span>' "D2 Bathroom">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Clean / snack</span></span>' "D2 Kitchen">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Living Room</span><span class="loc-sub">Main floor</span></span>' "D2 Living">><</link>>
<<if $day2.living or $day2.kitchen or $day2.room>>
<<link '<span class="loc-card"><span class="loc-name">Basement</span><span class="loc-sub">Storage</span></span>' "D2 Basement">><</link>>
<<else>>
<span class="loc-locked">
<span class="loc-name">Basement</span>
<span class="loc-sub">Clean a room first</span>
</span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Porch</span><span class="loc-sub">Front door</span></span>' "D2 Porch">><</link>>
/* Wait for Dad only when whole house is cleaned AND the basement diary has been found */
<<if $day2.room and $day2.kitchen and $day2.living and $day2.diaryFound and not $day2.evening>>
<<link '<span class="loc-card loc-special"><span class="loc-name">Evening</span><span class="loc-sub">Wait for Dad</span></span>' "D2 Evening">><</link>>
<<elseif not ($day2.room and $day2.kitchen and $day2.living)>>
<span class="loc-locked">
<span class="loc-name">Evening</span>
<span class="loc-sub">Finish cleaning first</span>
</span>
<<elseif not $day2.diaryFound>>
<span class="loc-locked">
<span class="loc-name">Evening</span>
<span class="loc-sub">Search the basement first</span>
</span>
<</if>>
</div>
<<if $day2.room and $day2.kitchen and $day2.living and not $day2.diaryFound>>
<p class="hub-hint"><em>The house looks better... but something still feels unfinished downstairs.</em></p>
<<elseif not ($day2.room and $day2.kitchen and $day2.living)>>
<p class="hub-hint"><em>Dad said clean the whole house: room, kitchen, and living room.</em></p>
<</if>>
/* '' ROOMS ''''''''''''''''''''''''''''''''''''''''''''''''' */<<set $world.location to "Home - Emily's room">>
<<= setup.locBannerHtml("emily_room", "Emily's Room", $world.time)>>
<p>Her room was still a mess from rushing out last night - clothes on the chair, bag half-open, phone face-down on the nightstand.</p>
<<if not $day2.room>>
<p>
<et>If Dad checks up here and it looks like a tornado hit... yeah. No thanks.</et>
</p>
[[Clean your room|D2 Room Clean]]
<<else>>
<p>The bed is made. Floor clear. For once, the room doesn't judge her.</p>
<</if>>
<<if $day2.diaryFound and not $day2.diaryRead>>
[[Read Mom's diary|Diary]]
<<elseif $day2.diaryRead>>
[[Skim the diary again|Diary]]
<</if>>
[[Lie down a minute|D2 Room Rest]]
[[Back to hall|Home Map]]<<set $day2.room to true>>
<<set $player.energy to Math.clamp($player.energy - 5, 0, 100)>>
<p>She sorted clothes, wiped the desk, opened a window. Dust floated in the morning light.</p>
<img src="Images/Chapter 1/cleaning_room.jpg">
<p>
<e>One room down.</e>
</p>
<<toast "Room cleaned">>
[[Back|D2 Room]]<p>Emily dropped onto the bed and stared at the ceiling.</p>
<<if $flags.day1_glory>>
<p>
<et>That bathroom at the party... I can't stop thinking about it. And David still doesn't know.</et>
</p>
<<else>>
<p>
<et>David came too early. Again. I hate that I keep replaying it.</et>
</p>
<</if>>
[[Get up|D2 Room]]<<set $world.location to "Home - Bathroom">>
<<= setup.locBannerHtml("bathroom", "Bathroom", $world.time)>>
<<if not $day2.shower>>
<p>The bathroom mirror was still fogged from nobody - last night she crashed without a proper wash.</p>
<p>
<et>I smell like a party and bad decisions.</et>
</p>
[[Take a shower|D2 Shower]]
<<else>>
<p>Towels hang neat. The air still holds a little steam and soap.</p>
<p>
<et>At least I feel human again.</et>
</p>
<</if>>
[[Back to hall|Home Map]]<<set $day2.shower to true>>
<<set $player.energy to Math.clamp($player.energy + 5, 0, 100)>>
<p>Muttering to herself, she grabbed a fresh set of clothes and stepped under the water. Warmth washed away the night - but not every memory.</p>
<<if $flags.day1_glory>>
<p>
<et>Phantom hands. Not David's. Heat climbed her neck anyway.</et>
</p>
<<else>>
<p>She couldn't quite shake the feeling of David's touch - unfinished, frustrating, still under her skin.</p>
<</if>>
<<toast "Showered">>
[[Done|D2 Bathroom]]<<set $world.location to "Home - Kitchen">>
<<= setup.locBannerHtml("kitchen", "Kitchen", $world.time)>>
<<if not $day2.kitchen>>
<p>Dishes from who-knows-when. A sticky counter. The fridge hummed like it was judging her too.</p>
[[Clean the kitchen|D2 Kitchen Clean]]
[[Grab a quick snack|D2 Snack]]
<<else>>
<p>Counters gleam. Sink empty. The kitchen almost looks like a real adult lives here.</p>
[[Grab a snack|D2 Snack]]
<</if>>
[[Back to hall|Home Map]]<<set $day2.kitchen to true>>
<<set $player.energy to Math.clamp($player.energy - 8, 0, 100)>>
<img src="Images/Chapter 1/14.gif">
<p>She scrubbed until the lemon smell of cleaner beat the old coffee smell. Rhythm helped. Thinking less helped more.</p>
<<toast "Kitchen cleaned">>
[[Back|D2 Kitchen]]<<set $player.energy to Math.clamp($player.energy + 3, 0, 100)>>
<p>Toast. Not gourmet. Surviving counts.</p>
<p>
<e>Fuel. Then more dust.</e>
</p>
[[Back|D2 Kitchen]]<<set $world.location to "Home - Living room">>
<<= setup.locBannerHtml("living", "Living Room", $world.time)>>
<<if not $day2.living>>
<p>The living room carried last night's lecture in the air - the spot where her father had stood, arms crossed.</p>
<p>Dust on the shelf. Magazines crooked. A house that needed care.</p>
[[Clean the living room|D2 Living Clean]]
<<else>>
<p>Sunlight shows clean surfaces now. The room feels lighter - almost forgiving.</p>
<</if>>
<<if $day2.living and not $day2.photo>>
[[Look at the shelf closer|D2 Photo]]
<<elseif $day2.photo>>
[[Look at Mom's photo again|D2 Photo]]
<</if>>
<<if $day2.evening>>
[[Sit with Dad|D2 Evening]]
<</if>>
[[Back to hall|Home Map]]<<set $day2.living to true>>
<<set $player.energy to Math.clamp($player.energy - 8, 0, 100)>>
<p>She swept, dusted, scrubbed - letting monotony push the party out of her head.</p>
<img src="Images/Chapter 1/clean_livingroom.jpg">
<p>Then, as she wiped down a shelf, her hand paused.</p>
<img src="Images/Chapter 1/13.jpeg">
<p>A picture. An old photograph of her mother - soft smile frozen in time.</p>
<p>
<e>Mom...</e>
</p>
<<set $day2.photo to true>>
<<toast "Living room cleaned">>
[[Sit with the photo|About her mother]]
[[Keep moving|D2 Living]]<<set $day2.photo to true>>
<img src="Images/Chapter 1/13.jpeg">
<p>Emily holds the frame again. Same smile. Same silence from everyone who should have stories.</p>
[[Think about her|About her mother]]
[[Put it back|D2 Living]]<<set $day2.photo to true>>
<<set $world.location to "Home - Living room">>
<p>Emily sat on the floor, the picture of her mother resting in her hands. She traced the edges, studying the face of a woman she had never known.</p>
<p>Emily never saw her mother. Her father had told her that she died while giving birth to her. And that was all she knew.</p>
<p>No stories. No memories. Just a name and a photograph.</p>
<p>She had always wanted to know more - who her mother was, what kind of life she had lived - but no one ever told her. Any time she asked, her father would shut down the conversation, his expression darkening as if even the thought of her mother was painful.</p>
<p>And so, Emily was left with only questions.</p>
<p>Emily sighed, setting the picture aside. She didn't know much about her mother... but maybe it was time to start searching for answers.</p>
<p>
<et>Basement still looks like a disaster. If anything of hers is left... it would be buried with the junk.</et>
</p>
[[Home map|Home Map]]
[[Living room|D2 Living]]
[[Basement|D2 Basement]]<<set $world.location to "Home - Basement">>
<<if not ($day2.living or $day2.kitchen or $day2.room)>>
<<goto "Home Map">>
<</if>>
<p>The wooden steps creaked. Dim light. A place she rarely visited.</p>
<<if not $day2.basement and not $day2.diaryFound>>
<p>
<e>This place is a mess...</e>
</p>
[[Clean / sort the basement|D2 Basement Clean]]
<<elseif $day2.diaryFound and not $day2.diaryRead>>
<p>The diary is still where she left it on a dry crate - waiting.</p>
[[Take the diary upstairs|D2 Room]]
[[Read it here|Diary]]
<<elseif $day2.diaryRead>>
<p>Dust again. Empty shelves. The secret already sits upstairs in her hands' memory.</p>
<<else>>
<p>Better than before. Still not a place you'd linger.</p>
<</if>>
[[Back to hall|Home Map]]<<set $day2.basement to true>>
<<set $player.energy to Math.clamp($player.energy - 10, 0, 100)>>
<p>Grabbing a broom, she started sweeping, mind drifting until-</p>
<p><strong>Thud!</strong></p>
<img src="Images/Chapter 1/15.jpg">
<p>Something fell from a high shelf, landing right on her head.</p>
<p>
<e>Ow! What the-</e>
</p>
<p>A book lay on the floor, cover old and worn, edges frayed. The faded letters made her breath hitch.</p>
<p><strong>Daisy's Diary</strong></p>
<p>
<e>Mom...?</e>
</p>
<p>Her heart pounded. A diary. Her mother's diary. What secrets lay within these pages?</p>
<p>
<e>I have to read this...</e>
</p>
<<set $day2.diaryFound to true>>
<<toast "Found: Daisy's Diary">>
<<run setup.Phone.refreshNotes()>>
[[Read the diary|Diary]]
[[Take it to your room first|D2 Room]]<<set $world.location to "Home - with the diary">>
<<set $day2.diaryFound to true>>
<<set $day2.diaryRead to true>>
<p>Her mother's diary.</p>
<p>Her fingers trembled as she opened the first page. The date read <strong>12/03/2002</strong>, and the ink, though faded, was still legible.</p>
<div class="diary-entry">
<div class="entry-header">Daisy's Diary</div>
<div class="entry-date">12/03/2002</div>
<div class="entry-content">Jayden told me to go to Portugal and search for the treasure of Enisia, the queen of some Prijak Dynasty. I will go there tomorrow and find out about the treasure. I know this mission is going to be the hardest among what I have done before this... but let's see what tomorrow will bring.</div>
</div>
<p>Emily's heart pounded.</p>
<p>
<e>"Jayden? Who is Jayden? And what does she mean by 'more missions before this'?"</e>
</p>
<p>She flipped to the next page - only to find it torn out.</p>
<p>
<e>"What? No-no, no, no!"</e>
</p>
<p>Her mind raced. Portugal. Treasure. Missions. A mother she never knew living a life no one mentioned.</p>
<p>
<e>"I need to know. I have to go to Portugal."</e>
</p>
<p>But first, she needed to talk to someone.</p>
<p>
<e>"Tomorrow, I'll ask David what he thinks I should do."</e>
</p>
<<toast "Diary read">>
<<run setup.Phone.refreshNotes()>>
<p class="hub-hint"><em>Phone Notes updated. You can message David about the diary from the sidebar phone.</em></p>
[[Home map|Home Map]]
<<if $day2.room and $day2.kitchen and $day2.living and $day2.diaryFound and not $day2.evening>>
[[Wait for Dad (house is clean)|D2 Evening]]
<<else>>
<p class="hub-hint"><em>Wait for Dad unlocks on the Home map after the whole house is clean (room, kitchen, living room) and you've found the diary in the basement.</em></p>
<</if>><<set $world.location to "Home - Porch">>
<p>Outside air. Quiet street. She's grounded - leaving for real isn't an option, and she knows it.</p>
<<if $day2.diaryRead or $day2.diaryFound>>
<p>
<et>Portugal feels a world away. First survive Dad. Then plan.</et>
</p>
<p>The diary's words itch under her skin like a ticket she can't buy yet.</p>
<<else>>
<p>
<et>Neighborhood looks the same. My life doesn't. Grounded, broom-duty, zero escape plan.</et>
</p>
<p>
<e>Back inside. House won't clean itself.</e>
</p>
<</if>>
[[Go back inside|Home Map]]
/* '' EVENING / END ''''''''''''''''''''''''''''''''''''''''' */<<set $day2.evening to true>>
<<set $world.time to "Evening">>
<<set $world.location to "Home - Living room">>
<p>As the evening sun dipped below the horizon, Emily heard the front door creak open. She turned to see her father stepping inside, his face softening as he looked around<<if $day2.living and $day2.kitchen>> the cleaner living room<<else>> the house<</if>>.</p>
<p>
<father> You really cleaned<<if $day2.room and $day2.living and $day2.kitchen>> the whole house<<else>> a lot today<</if>>. </father>
</p>
<p>
<e>Yeah... like you asked.</e>
</p>
<p>
<father> I shouldn't have yelled at you last night. I was just... worried. You were out so late, and I didn't know where you were. </father>
</p>
<p>
<e>It's okay, Dad.</e>
</p>
<p>
<father> Thank you for cleaning. You did a great job. </father>
</p>
<p>They sat down for dinner together. Small talk - his work, the neighbor's dog, groceries. Emily nodded along, though her mind kept sliding back to the diary. She almost asked about her mother. Almost.</p>
<p>
<e>I think I'll head to bed.</e>
</p>
<p>
<father> You deserve the rest. </father>
</p>
<p>Upstairs, she stared at the ceiling, questions still loud.</p>
<<if $day2.diaryRead or $day2.diaryFound>>
<p>
<e>Tomorrow... I'll ask David.</e>
</p>
<<else>>
<p>
<e>Tomorrow... another day.</e>
</p>
<</if>>
[[Go to bed|D2 Sleep]]<<set $flags.day2_done to true>>
<<set $day2.evening to true>>
<<set $world.time to "Night">>
<<set $world.location to "Home - Emily's room">>
<p>Emily slips under the covers. The house is quiet. Her body is tired from cleaning; her mind less so.</p>
<p>
<et>Sleep. Just sleep.</et>
</p>
<p>She closes her eyes.</p>
[[...|Day 3 Morning]]<<set _cx to setup.cafeExits()>>
<<set $flags.cafeTown to _cx.town>>
<<set $flags.cafeHome to _cx.home>>
<<set $flags.cafeNight to _cx.night>>
<<if $world.time is "Night">>
<<goto $flags.cafeNight>>
<</if>>
<<set $world.location to "Cafe">>
<<set $day3.cafeVisit to true>>
<<run setup.cafeEnsure("home")>>
<<if ndef $day3.cafeShiftsToday>><<set $day3.cafeShiftsToday to 0>><</if>>
<<if ndef $day3.cafeGropeCorGiven>><<set $day3.cafeGropeCorGiven to false>><</if>>
<<set _lvl to Math.clamp(Number($cafeJob.level) || 1, 1, 3)>>
<<set _xp to Math.clamp(Number($cafeJob.xp) || 0, 0, 100)>>
<<set _pay to setup.cafePay("home")>>
<<set _rank to "Trainee">>
<<if _lvl is 2>><<set _rank to "Barista">><</if>>
<<if _lvl is 3>><<set _rank to "Shift Lead">><</if>>
<<set _open to ($world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon")>>
<<set _canWork to (_open and $day3.cafeShiftsToday lt 2)>>
<<= setup.locBannerHtml("cafe", "Cafe", $world.time)>>
<div class="cafe-panel">
<div class="cafe-panel-header">
<div class="cafe-panel-brand">
<div class="cafe-panel-title">Corner Cafe</div>
<div class="cafe-panel-sub">Job board · <<= $world.time>></div>
</div>
<<if not _open>>
<span class="cafe-panel-status is-closed">Closed</span>
<<elseif $day3.cafeShiftsToday gte 2>>
<span class="cafe-panel-status is-closed">Shifts full</span>
<<else>>
<span class="cafe-panel-status">Open</span>
<</if>>
</div>
<div class="cafe-panel-body">
<div class="cafe-job-row">
<div class="cafe-rank"><span class="cafe-rank-level">Lv <<= _lvl>></span> · <<= _rank>></div>
<div class="cafe-pay">$<<= _pay>> / shift</div>
</div>
<div class="cafe-xp-wrap">
<div class="cafe-xp-meta">
<span>Promotion XP</span>
<span><<= _xp>> / 100</span>
</div>
<div class="cafe-xp-bar" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="<<= _xp>>">
<div class="cafe-xp-fill" style="width:<<= _xp>>%"></div>
</div>
</div>
<div class="cafe-shifts-row">
<span class="cafe-shifts-label">Today <<= $day3.cafeShiftsToday>> / 2 shifts</span>
<div class="cafe-shift-slots" aria-hidden="true">
<span class="cafe-slot<<if $day3.cafeShiftsToday gte 1>> is-done<<elseif _canWork>> is-next<</if>>"></span>
<span class="cafe-slot<<if $day3.cafeShiftsToday gte 2>> is-done<<elseif $day3.cafeShiftsToday is 1 and _canWork>> is-next<</if>>"></span>
</div>
</div>
</div>
</div>
<p>The cafe hits her like a warm wave - espresso, caramel syrup, toasted sugar. Indie music too soft to name. Condensation beads on the pastry case. Sun (or street-glow) stripes the scuffed floorboards where regulars claim the same chairs every day.</p>
<p>Her apron hangs on the familiar hook by the back, still faintly shaped like her waist. Tips jar. Steam wand. The little world that pays in cash and looks.</p>
<p>
<e>Hey. I'm on if you need me.</e>
</p>
<<if not _open>>
<p>Manager is already counting the drawer under the counter light. Chairs stacked. Too late for a shift - the closed sign is waiting to flip.</p>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">Leave work</span></span>' `$flags.cafeHome`>><</link>>
</div>
<<elseif $day3.cafeShiftsToday gte 2>>
<p>Two shifts is the limit. Manager sends her home with a tired nod and a look that says <em>good work</em> without spending the words.</p>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">Leave work</span></span>' `$flags.cafeHome`>><</link>>
</div>
<<else>>
<<if $world.time is "Morning">>
<p>Manager nods at the register. Morning rush is coming - laptops, first dates, the guy who always orders complicated and tips like a saint or a sinner depending on her smile.</p>
<<elseif $world.time is "Noon">>
<p>Midday line is forming. Short shift, real money. Heat from the machine makes her top cling at the small of her back when she moves.</p>
<<else>>
<p>Afternoon lull, then the after-school sugar rush. Still time for a shift - and for customers who look a little too long when she leans for the syrups.</p>
<</if>>
<p class="hub-hint"><em>Each shift advances time and gives +20 job XP. College is morning-only - work first and you may miss it.</em></p>
<div class="cafe-actions">
<<link `'<span class="loc-card"><span class="loc-name">Work a shift</span><span class="loc-sub">' + (Number($day3.cafeShiftsToday) + 1) + '/2 · +$' + _pay + ' · +20 XP</span></span>'` "D3 Cafe Shift">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Chat with coworker</span><span class="loc-sub">Jamie</span></span>' "D3 Cafe Coworker">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Just grab a drink</span><span class="loc-sub">Leave</span></span>' `$flags.cafeTown`>><</link>>
</div>
<</if>><<set _cx to setup.cafeExits()>>
<<set $flags.cafeTown to _cx.town>>
<<set $flags.cafeHome to _cx.home>>
<<set $flags.cafeNight to _cx.night>>
<<if $world.time is "Evening" or $world.time is "Night" or $day3.cafeShiftsToday gte 2>>
<<goto "D3 Cafe">>
<</if>>
<<set $world.location to "Cafe">>
<<set _shift to setup.cafeDoShift("home")>>
<<set _pay to _shift.pay>>
<<set _leveled to _shift.leveled>>
<<if $day3.cafeShiftsToday is 1>>
<p>Orders stack. Steam burns her wrist once - a white kiss of pain she shakes off. She smiles on autopilot: milk, foam, lid, next. Her hips brush the counter when she turns; someone in line watches like the apron is transparent.</p>
<<else>>
<p>Second shift. Legs heavy, tips better. Foam patterns blur. By the time she hangs the apron, sweat cools along her spine and the light outside has changed again.</p>
<</if>>
<div class="cafe-result">
<div class="cafe-result-title">Shift complete</div>
<div class="cafe-result-stats">
<span class="cafe-result-chip money">+$<<= _pay>></span>
<span class="cafe-result-chip xp">+20 XP</span>
<span class="cafe-result-chip time"><<= $world.time>></span>
<span class="cafe-result-chip">Shifts <<= $day3.cafeShiftsToday>>/2</span>
<span class="cafe-result-chip">Lv <<= $cafeJob.level>> · <<= $cafeJob.xp>>/100 XP</span>
</div>
</div>
<<toast `"Shift done +$" + _pay`>>
<<if _leveled>>
<div class="cafe-promo">
<strong>Promotion!</strong> Job Level <<= $cafeJob.level>>
<<if $cafeJob.level is 2>> — Barista pay unlocked.
<<elseif $cafeJob.level is 3>> — Shift Lead rates unlocked.
<<else>>.
<</if>>
</div>
<<toast `"Cafe promotion! Level " + $cafeJob.level`>>
<<if $cafeJob.level is 2>>
<p>
<npc>Manager:</npc> You're on barista pay now. Don't burn the milk. And... watch the regulars. Some of them tip for more than coffee.
</p>
<<elseif $cafeJob.level is 3>>
<p>
<npc>Manager:</npc> Shift lead rates. You know the machine better than half the new hires. People notice you. Use that carefully.
</p>
<</if>>
<</if>>
/* Random customer event after every shift */
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Continue</span><span class="loc-sub">Something happens...</span></span>' "D3 Cafe Event">><</link>>
</div><<set _cx to setup.cafeExits()>>
<<set $flags.cafeTown to _cx.town>>
<<set $flags.cafeHome to _cx.home>>
<<set $flags.cafeNight to _cx.night>>
<<set $world.location to "Cafe">>
<<run setup.cafeEnsure("home")>>
<<set _lvl to Number($cafeJob.level) || 1>>
<<set _roll to random(1, 3)>>
<<if _lvl lte 1>>
/* ── LEVEL 1: flirting ── */
<<if _roll is 1>>
<p>A guy about her age leans on the pickup counter while she wipes down the steam wand. His eyes travel - mouth, throat, the soft push of her chest against the apron ties - before he bothers with her face.</p>
<p>
<npc>Customer:</npc> You make that look illegal. The coffee, I mean. Mostly.
</p>
<p>Heat crawls up her neck. He doesn't look away. When she slides his cup across, his fingers cover hers a second too long - warm, deliberate - thumb stroking the back of her hand like a promise.</p>
<p>
<e>...Enjoy your drink.</e>
</p>
<p>
<npc>Customer:</npc> I'd enjoy the view more if you worked my table all day.
</p>
<p>He tips more than the drink costs. The bill is folded small; when she opens it later there's a number written inside and a crude little heart. Her pulse sits low and heavy. She tells herself it's just flirting. Her body argues.</p>
<<elseif _roll is 2>>
<p>Jamie is in the back. The cafe thins for two minutes - just her and a man in a suit who smells like cologne and lunch money. He asks for "whatever you like," voice low, eyes on her mouth when she recites the specials.</p>
<p>
<npc>Stranger:</npc> Pretty baristas should get hazard pay. The way that apron sits on you... damn.
</p>
<p>She laughs it off - professional, light - but when she turns for the syrups she feels his gaze on her ass like a touch. He says it out loud, soft enough that only she hears:</p>
<p>
<npc>Stranger:</npc> Bet you taste sweeter than the caramel.
</p>
<p>Cup down. Tip jar fattens. She has to press her thighs together behind the counter, annoyed at herself for the little ache that answers him. Flirting is free. Wanting is the expensive part.</p>
<<else>>
<p>A regular she's seen before - college hoodie, easy smile - corners her near the pastry case under the excuse of "which muffin." He stands closer than the aisle needs, heat of his chest almost at her shoulder.</p>
<p>
<npc>Regular:</npc> You always this cute when you're tired, or is today special?
</p>
<p>
<e>I'm working.</e>
</p>
<p>
<npc>Regular:</npc> I know. Makes it hotter. All focused... lips parted when you steam the milk. You know people watch you, right?
</p>
<p>His voice drops. A knuckle brushes her hip "by accident" as he reaches past her for a napkin - slow drag along the curve of her side. She freezes. He smiles like he won something small and delicious.</p>
<p>
<npc>Regular:</npc> Relax. Just saying hi. Text me if the apron ever comes off after hours.
</p>
<p>He leaves. She stands too still, nipples tight against her top under the cheap fabric, cheeks burning. Just words. Mostly.</p>
<</if>>
<<else>>
/* ── LEVEL 2–3: stranger groping (toned down) ── */
<<if _roll is 1>>
<img src="Images/Hometown/cafe_ass_grope.gif">
<p>Rush hour crush at the register. Bodies packed. Someone behind her in the staff squeeze-space - a tall stranger who "got lost" reaching for a lid - presses in when the line surges.</p>
<p>A hand lands on her waist first. Then lower - palm settling over the curve of her ass through her jeans, one firm squeeze like he's testing his luck. She gasps; the milk pitcher nearly tips.</p>
<p>
<e>Hey-!</e>
</p>
<p>His mouth is at her ear, breath warm, the cafe noise a wall that hides everything.</p>
<p>
<npc>Stranger:</npc> Shh. Keep smiling. They'll think you're friendly.
</p>
<p>The hand lingers a beat too long, then lifts away as the line surges again. Her face is hot, pulse loud in her own ears - flustered, embarrassed, unsure if anyone even noticed.</p>
<p>A twenty lands in the tip jar. He doesn't look back. She finishes the next three orders with her cheeks still burning.</p>
<<elseif _roll is 2>>
<img src="Images/Hometown/cafe_ass_grope2.gif">
<p>She crouches by the low shelf to restock cups. A man at the pickup edge "drops" his receipt and bends down with her - too close - his hand landing on her hip as he "steadies" himself.</p>
<p>It slides, slow and obvious, until it's cupping her ass through the fabric - a squeeze, unhurried, like he's allowed.</p>
<p>
<npc>Stranger:</npc> Sorry - lost my balance there. Worth it, though.
</p>
<p>She straightens fast, putting the counter between them, cheeks scarlet, heart thudding somewhere between anger and a flush she doesn't want to name. He just picks up his cup, unbothered.</p>
<p>
<npc>Stranger:</npc> Good shift, sweetheart.
</p>
<p>Emily stands there a second longer than she means to, smoothing her apron down like it'll erase the last minute. Nobody in line seems to have seen. That almost makes it worse.</p>
<<else>>
<img src="Images/Hometown/grope_tits.gif">
<p>End of the rush. She carries a tray of dirty cups toward the back. In the narrow hall by the supply closet - dim, smelling of soap and old coffee - a customer who "needed the restroom" blocks her path.</p>
<p>He leans in under the excuse of reaching past her, and his hand cups her breast through her top - a slow, deliberate squeeze, thumb dragging once over where her nipple presses the fabric.</p>
<p>
<e>Wait- what are you-</e>
</p>
<p>
<npc>Stranger:</npc> Just admiring the view. Can't blame a guy.
</p>
<p>He steps back before she can even shove him off, hands raised like it's nothing, and ambles out the back exit whistling. She stands frozen a moment, arms crossed over her chest, face burning. When she comes back out, Jamie only asks if everything's okay. She says yes. It isn't quite the truth.</p>
<</if>>
<<if not $day3.cafeGropeCorGiven>>
<<set $day3.cafeGropeCorGiven to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<</if>>
<<if $world.time is "Night">>
<p>The closed sign flips. Streetlights only. Time to go home.</p>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">Night</span></span>' `$flags.cafeNight`>><</link>>
</div>
<<elseif $world.time is "Evening">>
<p>Windows show evening. Cafe is done for the day. Her skin still remembers too much.</p>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">End the day</span></span>' `$flags.cafeHome`>><</link>>
</div>
<<elseif $day3.cafeShiftsToday lt 2>>
<p>Manager shrugs - she could take another short shift if she wants, or leave before something worse (or better) finds her.</p>
<div class="cafe-actions">
<<link `'<span class="loc-card"><span class="loc-name">Another shift</span><span class="loc-sub">' + (Number($day3.cafeShiftsToday) + 1) + '/2</span></span>'` "D3 Cafe Shift">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">Leave work</span></span>' `$flags.cafeHome`>><</link>>
</div>
<<else>>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">Leave work</span></span>' `$flags.cafeHome`>><</link>>
</div>
<</if>><<set $world.location to "Cafe">>
<<run setup.cafeEnsure("home")>>
<<set _pay to setup.cafePay("home")>>
<p>Jamie leans on the pastry case, apron half-tied, already bored. Crumbs stick to the glass. Outside, someone photographs their latte like it's art.</p>
<p>
<npc>Jamie:</npc> Clocking in or just smelling free coffee?
</p>
<p>
<e>Don't start.</e>
</p>
<p>
<npc>Jamie:</npc> Two shifts max. After that they start calling it "overtime with feelings." And watch the creeps at the bar - higher rank you get, the worse they get. Or better. Depends how you define fun.
</p>
<p>
<et>Everyone's a comedian. The problem is Jamie isn't always wrong.</et>
</p>
<div class="cafe-actions">
<<if $day3.cafeShiftsToday lt 2 and $world.time isnot "Evening" and $world.time isnot "Night">>
<<link `'<span class="loc-card"><span class="loc-name">Work a shift</span><span class="loc-sub">' + (Number($day3.cafeShiftsToday) + 1) + '/2 · +$' + _pay + '</span></span>'` "D3 Cafe Shift">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Back</span><span class="loc-sub">Cafe counter</span></span>' "D3 Cafe">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Back</span><span class="loc-sub">Cafe counter</span></span>' "D3 Cafe">><</link>>
<</if>>
</div><<set $world.day to 3>>
<<set $world.time to "Morning">>
<<set $world.location to "Home - Emily's room">>
<<set $player.energy to 90>>
<<if ndef $day3>>
<<set $day3 to {
shower : false,
dressed : false,
breakfast : false,
leftHome : false,
tornTop : false,
class1 : false,
class2 : false,
class3 : false,
intGainToday : false,
hallway : false,
david : false,
davidDiary : false,
principal : false,
principalDone : false,
principalBJ : false,
principalSex : false,
friends : false,
leftCollege : false,
homeEve : false,
dadTalk : false,
workedCafe : false,
cafeShiftsToday : 0,
attendedCollege : false,
cafeVisit : false,
parkVisit : false,
pornToday : 0,
fixedMirror : false
}>>
<</if>>
/* Ensure new fields exist on older saves */
<<if ndef $day3.principalDone>><<set $day3.principalDone to false>><</if>>
<<if ndef $day3.class1>><<set $day3.class1 to false>><</if>>
<<if ndef $day3.class2>><<set $day3.class2 to false>><</if>>
<<if ndef $day3.class3>><<set $day3.class3 to false>><</if>>
<<if ndef $day3.intGainToday>><<set $day3.intGainToday to false>><</if>>
<<if ndef $day3.pornToday>><<set $day3.pornToday to 0>><</if>>
<<if ndef $day3.cafeShiftsToday>><<set $day3.cafeShiftsToday to 0>><</if>>
<<if ndef $day3.fixedMirror>><<set $day3.fixedMirror to false>><</if>>
<<if ndef $player.intelligence>><<set $player.intelligence to 0>><</if>>
<<if ndef $day3.principalSmart>><<set $day3.principalSmart to false>><</if>>
<<if ndef $day3.principalPillsTaken>><<set $day3.principalPillsTaken to false>><</if>>
<<if ndef $day3.principalPillsAsked>><<set $day3.principalPillsAsked to false>><</if>>
/* tornTop is permanent once true — do not re-init false on old saves that already tore */
<<if ndef $day3.tornTop>><<set $day3.tornTop to false>><</if>>
<<run setup.cafeEnsure("home")>>
<img src="Images/Chapter 1/sleep2.webp">
<p>The morning sun filtered through Emily's window, striping the floorboards gold. Dust floated in the light. She stretched under the covers, last night still clinging to her thoughts<<if $day2.diaryRead or $day2.diaryFound>> - the diary, the missing page, Portugal<<else>> - David, Dad, the mess of the last few days<</if>>.</p>
<p>
<e>Ugh... morning already.</e>
</p>
<p>
<e>I need to get ready for college.</e>
</p>
<<if $day3.principalDone and $day3.dadTalk>>
<p>
<et>Principal and Dad are handled. Hold it together until sleep locks Portugal in.</et>
</p>
<<elseif $day3.principalDone>>
<p>
<et>Principal's done. I still have to tell Dad tonight - no Portugal without him.</et>
</p>
<<elseif $day3.davidDiary>>
<p>
<et>David already told me the plan. Principal. Transfer. Stop stalling.</et>
</p>
<<elseif $day3.david>>
<p>
<et>I already saw David. Focus on class - and the principal if I can get in there.</et>
</p>
<<elseif $day2.diaryRead or $day2.diaryFound>>
<p>
<et>Talk to David today. I have to figure out what comes next.</et>
</p>
<</if>>
[[Get up|D3 Home Map]]
/* ── HOME HUB ────────────────────────────────────────────── */<<set $world.location to "Home">>
/* Do not rewrite $world.time here - actions advance it */
<<if $world.time is "Evening" or $world.time is "Night">>
<<set $day3.homeEve to true>>
<</if>>
<<= setup.locBannerHtml("home", "Home", $world.time + " - free to explore")>>
<<if $world.time is "Morning">>
<p>The house still smells like last night's air freshener and coffee Dad never finished. Floorboards tick as they warm. From here she can hear the fridge hum and nothing else - the quiet before she has to be a person for the outside world.</p>
<<elseif $world.time is "Noon" or $world.time is "Afternoon">>
<p>Daylight sits hard on the hallway carpet. The place feels half-abandoned mid-day - shoes by the door, her bag if she left it, the ghost of breakfast in the kitchen air.</p>
<<elseif $world.time is "Evening">>
<p>Lamps fight the blue of evening through the curtains. Somewhere a neighbor's TV murmurs through the wall. Home again means Dad, or bed, or both.</p>
<<else>>
<p>Night presses against the windows. Only the kitchen night-light is on. Outside has closed; this is the end of the day whether she's ready or not.</p>
<</if>>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Emily\'s Room</span><span class="loc-sub">Get dressed</span></span>' "D3 Room">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Bathroom</span><span class="loc-sub">Shower</span></span>' "D3 Bathroom">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Breakfast</span></span>' "D3 Kitchen">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Living Room</span><span class="loc-sub">Dad / TV</span></span>' "D3 Living">><</link>>
/* Outside: shower+dressed, and not Night */
<<if $world.time is "Night">>
<span class="loc-locked"><span class="loc-name">Go outside</span><span class="loc-sub">Night - stay in</span></span>
<<elseif $day3.shower and $day3.dressed>>
<<link '<span class="loc-card"><span class="loc-name">Go outside</span><span class="loc-sub">Town map</span></span>' "D3 Town Map">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Go outside</span><span class="loc-sub">Shower + dress first</span></span>
<</if>>
<<if ($world.time is "Evening" or $world.time is "Night") and not $day3.dadTalk and $day3.principalDone>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Talk to Dad</span><span class="loc-sub">Portugal plan</span></span>' "D3 Dad Talk">><</link>>
<<elseif ($world.time is "Evening" or $world.time is "Night") and not $day3.principalDone>>
<span class="loc-locked"><span class="loc-name">Talk to Dad</span><span class="loc-sub">Need principal first</span></span>
<</if>>
<<if $world.time is "Evening" or $world.time is "Night" or $day3.homeEve>>
<<link '<span class="loc-card"><span class="loc-name">Go to bed</span><span class="loc-sub">Sleep</span></span>' "D3 Sleep">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Go to bed</span><span class="loc-sub">Evening / night</span></span>
<</if>>
</div>
<<if $world.time is "Night">>
<p class="hub-hint"><em>Night. Nothing left outside - sleep when you're ready.</em></p>
<<elseif not ($day3.shower and $day3.dressed)>>
<p class="hub-hint"><em>Shower and get dressed before you can leave the house.</em></p>
<<elseif not $day3.leftHome>>
<p class="hub-hint"><em>Outside: College (morning), Cafe (until afternoon), Park, or Home.</em></p>
<<elseif not $day3.attendedCollege and ($world.time is "Evening" or $world.time is "Night")>>
<p class="hub-hint"><em>You never made it to college today.</em></p>
<</if>><<set $world.location to "Home - Emily's room">>
<<= setup.locBannerHtml("emily_room", "Emily's Room", $world.time)>>
<p>Posters curl at the corners. The desk is a battlefield of chargers, lip gloss, and a notebook she pretends she'll organize "later." Sun (or streetlight) finds the unmade bed and the soft dent where she slept.</p>
<<if not $day3.dressed>>
<p>Clothes everywhere - yesterday's jeans over the chair, a clean top half-folded on the mattress. College bag half-zipped by the door. A normal morning, almost, if her pulse would stop inventing problems.</p>
[[Get dressed for college|D3 Dress]]
<<else>>
<p>She's ready - white top smooth over her chest, jeans hugging her hips, bag strap cutting a neat line on her shoulder. The mirror on the closet door gives her a once-over she almost believes.</p>
<<if $day3.tornTop>>
<p>
<et>Well... the top was fine when I left the house.</et>
</p>
<</if>>
<</if>>
<p><<link "Open the laptop">><<run setup.PC.open()>><</link>></p>
[[Home|D3 Home Map]]<<set $day3.dressed to true>>
<img src="Images/Emily's Room/casual_dress.gif">
<p>She picks the usual college look: soft top that sits just right, jeans that make her legs look longer, a quick brush through her hair until it falls the way she likes. The bag goes over her shoulder with a practiced shrug.</p>
<p>Fabric whispers against her skin. For a second she catches herself in the mirror - pretty, ordinary, secretly not ordinary at all - and looks away before she can blush at her own thought.</p>
<p>
<e>Alright... time to go.</e>
</p>
<<toast "Ready for college">>
[[Back|D3 Room]]<<set $world.location to "Home - Bathroom">>
<<= setup.locBannerHtml("bathroom", "Bathroom", $world.time)>>
<p>Tile cool under bare feet. The shower curtain still holds yesterday's damp. A tube of toothpaste is squeezed from the middle - Dad's crime, her complaint - and the mirror waits with its usual honesty.</p>
<<if not $day3.shower>>
<p>Warm water would cut through the sleep still stuck behind her eyes. One of the few quiet minutes she gets all day.</p>
[[Shower|D3 Shower]]
<<else>>
<p>Mirror still fogged at the edges. Damp towel on the rack. She's already showered; the air smells like her shampoo, sweet and clean.</p>
<</if>>
[[Home|D3 Home Map]]<<set $day3.shower to true>>
<<set $player.energy to Math.clamp($player.energy + 5, 0, 100)>>
<img src="Images/Chapter 1/shower1.gif">
<p>Hot water needles her shoulders, runs down her spine, beads on her collarbones. She tips her head back and lets it wash sleep, stress, and the worst of yesterday down the drain.</p>
<p>Steam fogs the glass. Skin pink, hair heavy and dark with water, she stands a second longer than she needs - just breathing - before she shuts the tap.</p>
<img src="Images/Chapter 1/towel.gif">
<p>Towel. Wipe the mirror. Damp hair on her shoulders, a bead of water sliding between her breasts before she catches it. Almost ready to face the day.</p>
<<toast "Showered">>
[[Done|D3 Bathroom]]<<set $world.location to "Home - Kitchen">>
<<= setup.locBannerHtml("kitchen", "Kitchen", $world.time)>>
<p>Morning light (or whatever's left of the day) hits the counter. The coffee maker sits like a loyal dog. Cereal box open. A sticky note from Dad on the fridge that just says <em>Milk</em> like she might forget how shopping works.</p>
<<if not $day3.breakfast>>
<p>Toast, coffee, something that counts as fuel. Her stomach reminds her that principal speeches and part-time jobs still need calories.</p>
[[Eat something|D3 Breakfast]]
<<else>>
<p>Crumb trail on the plate. Mug with a ring at the bottom. Breakfast is done; the kitchen has gone quiet again except for the fridge.</p>
<</if>>
[[Home|D3 Home Map]]<<set $day3.breakfast to true>>
<<set $player.energy to Math.clamp($player.energy + 5, 0, 100)>>
<p>She eats standing up - toast that scrapes, coffee too hot, a few bites that don't care about presentation. Not gourmet. Surviving counts. The warmth settles low in her belly and she feels a fraction more human.</p>
<<toast "Breakfast">>
[[Back|D3 Kitchen]]<<set $world.location to "Home - Living room">>
<<= setup.locBannerHtml("living", "Living Room", $world.time)>>
<p>The couch still has Dad's dent. Remote on the armrest. Family photos on the shelf that she doesn't look at too long - Mom's smile in the old frame, Emily as a kid, the years that got thin after.</p>
<<if not $day3.leftHome>>
<p>Dad's already gone for work - or still asleep behind a closed door. The TV is dark. The house belongs to her for a little while, empty and soft-edged.</p>
<<elseif $world.time is "Evening" or $world.time is "Night" or $day3.homeEve>>
<<if not $day3.dadTalk and $day3.principalDone>>
<p>Evening light pools on the carpet. Dad on the couch, shoes off, face tired in a way that makes lying feel cruel and necessary. If she's going to sell Portugal, it's now.</p>
[[Talk to Dad about Portugal|D3 Dad Talk]]
<<else>>
<p>Evening light. The house feels smaller after a long day outside - safer, tighter, full of the smell of dinner that might never get cooked properly.</p>
<</if>>
<<else>>
<p>Empty living room for now. Dust in the sun. Dad is still at work; the couch holds his shape like a promise he'll fill later.</p>
<</if>>
<<if $world.time isnot "Night">>
[[Watch TV (pass time)|D3 Living TV]]
<</if>>
[[Home|D3 Home Map]]<<set $world.location to "Home - Living room">>
<<run setup.advanceTime(1)>>
<<= setup.locBannerHtml("living", "Living Room", $world.time)>>
<p>She drops onto the couch, grabs the remote, and lets some rerun wash over her - canned laughter, ad breaks, nothing that needs a reaction. Not great TV. Just enough noise to stop her head from spinning for a while.</p>
[[Back|D3 Living]]
/* ── TOWN / OUTSIDE ────────────────────────────────────────
Schedule (Day 3):
Morning - College, Cafe, Park, Home
Noon - Cafe, Park, Home (college closed for entry)
Afternoon - Cafe, Park, Home
Evening - Park, Home only
Night - forced home
──────────────────────────────────────────────────────────── */<<if not ($day3.shower and $day3.dressed)>>
<<goto "D3 Home Map">>
<</if>>
/* Night outside is not allowed - go home */
<<if $world.time is "Night">>
<<goto "D3 Night Home">>
<</if>>
<<set $day3.leftHome to true>>
<<set $world.location to "Town">>
<<= setup.locBannerHtml("town", "Outside", $world.time + " - where to?")>>
<<if $world.time is "Morning">>
<p>The street is still waking up - shop grates half-open, a bus sighing at the corner, someone walking a dog that refuses to hurry. Sun on asphalt. Her shadow looks longer than she feels. College one way, the cafe's glass front another, the park a green strip at the end of the block.</p>
<<elseif $world.time is "Noon">>
<p>Heat lifts off the sidewalk. Cars crawl. A radio spills pop from an open window. The day has a middle now - college doors effectively closed for new arrivals, but the town still offers work, shade, or home.</p>
<<elseif $world.time is "Afternoon">>
<p>Shadows stretch. Students who left campus early cluster at the crosswalk with iced drinks. The light is flatter, the air stickier. Good hours for a late cafe shift or a park bench that pretends time isn't moving.</p>
<<else>>
<p>Evening paints the storefronts orange, then blue. Neon starts to win. The cafe's closed sign will be up; the park still has a few people who don't want to go home yet. She should, probably.</p>
<</if>>
<div class="loc-list">
/* Cafe: Morning / Noon / Afternoon, max 2 shifts */
<<if $world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon">>
<<if $day3.cafeShiftsToday gte 2>>
<span class="loc-locked"><span class="loc-name">Cafe</span><span class="loc-sub">2 shifts done today</span></span>
<<else>>
<<link `'<span class="loc-card"><span class="loc-name">Cafe</span><span class="loc-sub">Job · shift ' + (Number($day3.cafeShiftsToday) + 1) + '/2</span></span>'` "D3 Cafe">><</link>>
<</if>>
<<else>>
<span class="loc-locked"><span class="loc-name">Cafe</span><span class="loc-sub">Closed for the night</span></span>
<</if>>
/* College: enter in Morning only; no re-entry after leaving */
<<if $world.time isnot "Morning">>
<span class="loc-locked"><span class="loc-name">College</span><span class="loc-sub">Morning only</span></span>
<<elseif $day3.attendedCollege and $day3.leftCollege>>
<span class="loc-locked"><span class="loc-name">College</span><span class="loc-sub">Already left campus</span></span>
<<else>>
<<link '<span class="loc-card story-choice"><span class="loc-name">College</span><span class="loc-sub">Campus - morning</span></span>' "D3 Enter College">><</link>>
<</if>>
/* Park: until Night (Night forces home) */
<<if $world.time is "Evening">>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Last light</span></span>' "D3 Park">><</link>>
<<elseif $world.time isnot "Night">>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Walk / relax</span></span>' "D3 Park">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Park</span><span class="loc-sub">Too late</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Home</span><span class="loc-sub">Go back</span></span>' "D3 Return Home">><</link>>
</div>
<<if $world.time is "Morning">>
<p class="hub-hint"><em>Morning: college open. Cafe has two short shifts today - you can still study after work if time allows.</em></p>
<<elseif $world.time is "Noon" or $world.time is "Afternoon">>
<p class="hub-hint"><em>College entry is closed. Cafe and park still open until evening.</em></p>
<<elseif $world.time is "Evening">>
<p class="hub-hint"><em>Evening. Cafe closed. Park for a bit, or go home.</em></p>
<</if>><<if $world.time is "Night">>
<<goto "D3 Night Home">>
<</if>>
<<set $world.location to "Park">>
<<set $day3.parkVisit to true>>
<<= setup.locBannerHtml("park", "Park", $world.time)>>
<p>Old trees lean over a cracked path. A fountain ticks water into a greenish bowl. Somewhere a basketball thumps; closer, two students sprawl on the grass with textbooks they aren't reading. The air smells like cut grass and distant exhaust - quiet enough to think, loud enough that she doesn't feel alone.</p>
<<if $day2.diaryRead or $day2.diaryFound>>
<p>
<et>Portugal. Mom. A missing page. Sitting still doesn't make any of it smaller.</et>
</p>
<<else>>
<p>
<et>I could waste an hour here. Or I could actually do something with the day.</et>
</p>
<</if>>
<<if $world.time is "Evening">>
<p class="hub-hint"><em>It's already evening. One more rest and it will be night - then home.</em></p>
[[Relax (pass time)|D3 Park Relax]]
[[Go home|D3 Return Home]]
[[Outside|D3 Town Map]]
<<else>>
[[Relax (pass time)|D3 Park Relax]]
[[Outside|D3 Town Map]]
<</if>><<set $world.location to "Park">>
<<run setup.advanceTime(1)>>
<<if $world.time is "Noon">>
<p>She sits on a sun-warmed bench until the light climbs. Skin drinks heat through her clothes. An hour evaporates between blinks - kids shout, a dog yanks its leash, her thoughts loop the same worries softer.</p>
<p class="hub-hint"><em>Time is now Noon. College is morning-only - missed for today if you haven't gone yet.</em></p>
[[Outside|D3 Town Map]]
<<elseif $world.time is "Afternoon">>
<p>Clouds drift. Her phone buzzes once against her thigh; she ignores it. Afternoon settles in heavy and slow. She stretches, arching her back until something pops, then stands with grass stuck to her calves.</p>
<p class="hub-hint"><em>Time is now Afternoon.</em></p>
[[Outside|D3 Town Map]]
<<elseif $world.time is "Evening">>
<p>The light goes soft and gold, then cooler. By the time she stands, the fountain looks darker and the path lamps are thinking about waking. Evening has her by the wrist.</p>
<p class="hub-hint"><em>Time is now Evening. Cafe is closed. Head home when you're ready.</em></p>
[[Outside|D3 Town Map]]
[[Go home|D3 Return Home]]
<<elseif $world.time is "Night">>
<p>Streetlights flicker on one by one. The park empties; laughter thins to silence. Cool air slides under her top. There's nothing left to do out here but walk home before the quiet turns sharp.</p>
<p class="hub-hint"><em>Night. Time to go home.</em></p>
[[Go home|D3 Night Home]]
<<else>>
<p>She rests a little longer. Birds argue. The day hasn't really moved - or maybe she just needed to pretend it hadn't.</p>
[[Outside|D3 Town Map]]
<</if>>/* Forced end of outdoor day */
<<set $world.time to "Night">>
<<set $day3.homeEve to true>>
<<set $world.location to "Home">>
<p>The streets are quiet. Emily heads home - nothing good happens out here at night.</p>
<<goto "D3 Home Map">><<set $world.location to "Home">>
/* Keep current time - do not skip the day on a quick stop home */
<<if $world.time is "Evening" or $world.time is "Night">>
<<set $day3.homeEve to true>>
<</if>>
<<goto "D3 Home Map">>
/* ── ENTER COLLEGE ───────────────────────────────────────── *//* College entry: Morning only (cafe no longer blocks campus) */
<<if $world.time isnot "Morning">>
<<goto "D3 Town Map">>
<</if>>
<<if $day3.leftCollege>>
<<goto "D3 Town Map">>
<</if>>
<<set $world.location to "Street">>
<p>She turns toward campus. Sidewalk cracks, a bus shelter with a torn ad, the brick face of the college rising at the end of the block. Bag strap tight across her chest, mind already ahead of her feet - classes, faces, the principal's closed door.</p>
<<if not $day3.david and ($day2.diaryRead or $day2.diaryFound)>>
<p>
<e>I need to ask David what he thinks about all this... Maybe he can help.</e>
</p>
<<elseif $day3.davidDiary>>
<p>
<et>David already pointed me at the principal. Don't waste the morning.</et>
</p>
<<elseif $day3.david>>
<p>
<et>I already talked to David. Class. Principal. Keep moving.</et>
</p>
<</if>>
/* Torn top only once ever (persists across Day 3 loops) */
<<if not $day3.tornTop and not $flags.day3_tornTop>>
<p>Lost in thought, she feels a sudden tug at her top.</p>
<p>
<e>Huh?</e>
</p>
<p>Caught on a roadside plant - she pulls too hard. <strong>Rip.</strong> Fabric tears, exposing more than she meant to show.</p>
<img src="Images/Chapter 1/16.gif">
<p>
<e>Are you kidding me?!</e>
</p>
<p>She tries to hold the fabric together. Cheeks burning. Too close to campus to turn all the way home.</p>
<p>
<e>Ugh... great. Just great.</e>
</p>
<<set $day3.tornTop to true>>
<<set $flags.day3_tornTop to true>>
<<elseif $flags.day3_tornTop>>
<<set $day3.tornTop to true>>
<</if>>
[[Enter campus|D3 College Map]]
/* ── COLLEGE HUB ─────────────────────────────────────────── *//* Stay on campus through classes even after Morning ends */
<<set $world.location to "College">>
<<set $day3.attendedCollege to true>>
<<set $day3.leftHome to true>>
<<= setup.locBannerHtml("college", "College", $world.time + " - campus")>>
<p>Brick and glass, lockers that never quite close, the permanent smell of floor wax and cheap cafeteria coffee. Students cut across the quad in packs. A notice board flaps under a fan. Somewhere a bell tries to matter. This is the machine she's supposed to feed every morning - and the place that might still get her to Portugal.</p>
<<if $day3.tornTop and not $day3.class1>>
<p>
<et>Keep your head down. Bag strap over the tear. Survive the stares.</et>
</p>
<</if>>
<div class="loc-list">
<<if not $day3.class3>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub"><<if not $day3.class1>>Period 1 - Math<<elseif not $day3.class2>>Period 2 - Literature<<else>>Period 3 - Science<</if>></span></span>' "D3 Classroom">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Classroom</span><span class="loc-sub">All periods done</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Hallway</span><span class="loc-sub">Crowds</span></span>' "D3 Hallway">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Toilet</span><span class="loc-sub">Restrooms</span></span>' "D3 Toilet">><</link>>
<<if not $day3.david>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Find David</span><span class="loc-sub">Need to talk</span></span>' "D3 Find David">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">David</span><span class="loc-sub"><<if $day3.davidDiary>>Plan set - principal<<else>>Already talked<</if>></span></span>
<</if>>
<<if $day3.david and not $day3.principalDone>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Principal</span><span class="loc-sub">Office</span></span>' "D3 Principal">><</link>>
<<elseif not $day3.david>>
<span class="loc-locked"><span class="loc-name">Principal</span><span class="loc-sub">Talk to David first</span></span>
<<else>>
<span class="loc-locked"><span class="loc-name">Principal</span><span class="loc-sub">Transfer secured</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Leave campus</span><span class="loc-sub">Town map</span></span>' "D3 Leave College">><</link>>
</div>
<<if $day3.class1 and $day3.class2 and $day3.class3 and not $day3.intGainToday>>
<<set $day3.intGainToday to true>>
<<set $player.intelligence to Number($player.intelligence) + 1>>
<<toast "Intelligence +1">>
<p class="hub-hint"><em>All three periods done. Intelligence +1.</em></p>
<<elseif not ($day3.class1 and $day3.class2 and $day3.class3)>>
<p class="hub-hint"><em>One Classroom door - each visit is the next period. All 3 raise Intelligence.</em></p>
<</if>>
/* Single classroom entry - advances through periods */<<if not $day3.class1>>
<<goto "D3 Class 1">>
<<elseif not $day3.class2>>
<<goto "D3 Class 2">>
<<elseif not $day3.class3>>
<<goto "D3 Class 3">>
<<else>>
<<goto "D3 College Map">>
<</if>><<set $world.location to "College - Math">>
<<set $day3.class1 to true>>
<<set $world.time to "Noon">>
<p><strong>Period 1 - Math</strong></p>
<p>The classroom is too bright and too cold. Desks scarred with old graffiti. Chalk dust hangs in a shaft of light from the high window.</p>
<<if $day3.tornTop>>
<p>She sits near the back, bag strap over the tear, thighs pressed together like posture can invent modesty. Every time she shifts, she feels air on skin that shouldn't be public.</p>
<img src="Images/Chapter 1/17.gif">
<<else>>
<p>Equations crawl across the board. She forces herself to copy them down, pen clicking, mind half on numbers and half on everything waiting outside this room.</p>
<</if>>
<p>
<et>One down. Two to go if I want my brain sharp enough for the principal.</et>
</p>
<p class="hub-hint"><em>Time is now Noon.</em></p>
[[Campus|D3 College Map]]<<set $world.location to "College - Literature">>
<<set $day3.class2 to true>>
<<set $world.time to "Afternoon">>
<p><strong>Period 2 - Literature</strong></p>
<p>Windows open onto the quad. A slow fan turns. The professor talks about essays like anyone in here slept well enough to care. Half the room is half-asleep; someone next to her smells like gum and cologne.</p>
<p>She underlines three lines that might matter later - not for the grade, for the version of herself that still believes words can open doors.</p>
<p class="hub-hint"><em>Time is now Afternoon.</em></p>
[[Campus|D3 College Map]]<<set $world.location to "College - Science">>
<<set $day3.class3 to true>>
<<set $world.time to "Afternoon">>
<p><strong>Period 3 - Science</strong></p>
<p>Lab tables sticky with old experiments. The smell of cleaner and something faintly chemical. A pop quiz lands on her desk; she finishes it with a clarity that surprises her - numbers, steps, no room for Portugal panic until the last blank is filled.</p>
<p>
<et>That's all three. Intelligence should tick up when I hit the hall.</et>
</p>
[[Campus|D3 College Map]]<<set $world.location to "College - Hallway">>
<<set $day3.hallway to true>>
<p>The hallway is a river of bodies - backpacks, perfume, loud jokes that bounce off lockers. A flyer for a club no one joins hangs crooked. Fluorescent lights buzz like insects. Someone almost bumps her bag; a guy's eyes linger a half-second too long before the crowd carries him past.</p>
<<if $day3.tornTop>>
<p>She keeps the strap tight across her chest, chin up, cheeks hot. Every glance feels like a hand. She walks faster.</p>
<</if>>
[[Campus|D3 College Map]]<<set $world.location to "College - Restrooms">>
<<= setup.locBannerHtml("hallway", "Restrooms", $world.time)>>
<p>The restroom alcove is a small pocket of tile and echo off the main hall. Two doors - painted symbols, scratched handles. The air smells like blue cleaner, nerves, and the ghost of a hundred rushed smoke breaks that never officially happened here.</p>
<p>Female on the left. Male on the right. Choice is supposed to be simple.</p>
[[Female toilet|D3 Toilet Female]]
[[Male toilet|D3 Toilet Male]]
[[Campus|D3 College Map]]<p>Emily's hand stops on the handle. Through the door she hears a laugh, a zipper, the flat slap of a stall door. The wrong world lives on the other side.</p>
<p>
<et>Yeah... no. Not walking into that one.</et>
</p>
<p>She pulls back before anyone notices her hesitation, pulse a little too loud in her throat.</p>
[[Restrooms|D3 Toilet]]<<set $world.location to "College - Female toilet">>
<<= setup.locBannerHtml("female_toilet", "Female Toilet", $world.time)>>
<p>She slips inside. Cool tile under her shoes, fluorescent hum, a drip that won't quit. The mirror above the sinks waits with that unforgiving strip-mall light that finds every freckle and every secret.</p>
<<if $day3.fixedMirror>>
<p>Hair neat enough. Top as fixed as it will get. She looks almost composed - a girl who belongs on this campus, not one inventing a transfer out of desperation and lust and missing pages.</p>
<<elseif $day3.tornTop>>
<p>
<et>Still a disaster under the lights. The mirror is brutal.</et>
</p>
<<else>>
<p>
<et>Two minutes of quiet. Then back out.</et>
</p>
<</if>>
<<if not $day3.fixedMirror>>
[[Fix yourself in the mirror|D3 Toilet Mirror]]
<</if>>
[[Restrooms|D3 Toilet]]
[[Campus|D3 College Map]]<<set $world.location to "College - Female toilet">>
<<set $day3.fixedMirror to true>>
<p>Emily plants both hands on the sink and faces the glass.</p>
<<if $day3.tornTop>>
<p>She pins the torn edge as best she can, smooths her hair, wipes smudged liner, forces her shoulders back until she looks less like a wreck and more like a girl who meant to look like this.</p>
<p>
<e>Good enough. Don't look down.</e>
</p>
<<else>>
<p>She straightens her top, tucks a strand behind her ear, practices a neutral face until it almost sticks.</p>
<p>
<e>Okay. Back out.</e>
</p>
<</if>>
<<toast "Fixed up">>
[[Female toilet|D3 Toilet Female]]<<set $world.location to "College - near bathroom">>
<<set $day3.david to true>>
<p>Her heart pounds as she scans the crowd - then there he is.</p>
<p>
<e>David, I-</e>
</p>
<p>Before she can finish, he tugs her hand toward the nearest bathroom. Door. Stall. Metal slam. No easy exit - she came here to talk, and he's not letting this be casual hallway noise.</p>
<p>
<e>David, what are you-</e>
</p>
<p>
<david>Shh. Girl, you look so fucking hot<<if $day3.tornTop>> in that torn top<<else>> today<</if>>. I've been trying to focus all class.</david>
</p>
<<if $day3.tornTop>>
<img src="Images/Chapter 1/18.gif">
<p>His hands slide fabric. Mouth on her skin. She gasps - then forces the words out between breaths.</p>
<img src="Images/Chapter 1/19.gif">
<</if>>
/* Important convo - no leave option */
<<if $day2.diaryRead or $day2.diaryFound>>
<<link '<span class="story-choice">Tell him about Portugal / the diary</span>' "D3 David Diary">><</link>>
<<else>>
<<link '<span class="story-choice">Talk properly</span>' "D3 David Soft">><</link>>
<</if>><p>
<e>David. Stop. I just... needed to see you. Rough morning.</e>
</p>
<p>
<david>Okay. Okay. I'm here. Text me later?</david>
</p>
<p>She nods, fixes her clothes, and slips out before she loses her nerve - or her schedule.</p>
[[Campus|D3 College Map]]<<set $day3.davidDiary to true>>
<img src="Images/Chapter 1/20.gif">
<p>Between his mouth and her shaking hands, she gets it out - Mom's diary. Portugal. Jayden. The torn page. She needs to go. She needs a way.</p>
<p>David stops. Breath heavy. Eyes focused now.</p>
<p>
<david>Emily, wait. Our college has a branch in Portugal. Talk to the principal. Request a transfer. Make it sound legit.</david>
</p>
<p>
<david>But... what about us?</david>
</p>
<p>
<e>You're right... This could actually work. I'll talk to you later - sorry.</e>
</p>
<p>She fixes her top as best she can, determination under the heat still on her skin.</p>
<p>
<e>I'll go talk to him now.</e>
</p>
<<toast "Plan: principal - transfer">>
<<run setup.Phone.refreshNotes()>>
<<link '<span class="story-choice">Principal\'s office</span>' "D3 Principal">><</link>>
[[Campus|D3 College Map]]<<if not $day3.david>>
<<goto "D3 College Map">>
<</if>>
<<if $day3.principalDone>>
<<goto "D3 College Map">>
<</if>>
<<set $world.location to "College - Principal office">>
<<set $day3.principal to true>>
<<if ndef $player.intelligence>><<set $player.intelligence to 0>><</if>>
<<set _cor to Number($player.corruption) || 0>>
<<set _int to Number($player.intelligence) || 0>>
<p>The principal's office smells like old paper, coffee gone bitter in a mug, and furniture polish. Blinds cut the light into strips across a heavy desk. Certificates on the wall pretend this room is only about education.</p>
<p>Emily closes the door. The latch sounds too loud. The older man barely glances up from a stack of forms.</p>
<p>
<principal>What brings you here, Emily?</principal>
</p>
<p>
<e>Sir, I need a transfer to our Portugal branch. It's really important.</e>
</p>
<p>
<principal>Things don't work that way. Valid reasons. Long process. I can't just send you because you asked.</principal>
</p>
<div class="choice-lock-list">
<<if _cor gte 5>>
<<link '<span class="story-choice">Seduce him</span>' "D3 Principal Seduce Doubt">><</link>>
<<else>>
<div class="choice-locked" aria-disabled="true">
<span class="choice-locked-title">Seduce him</span>
<span class="choice-locked-req">Requires Corruption 5 (now <<= _cor>>)</span>
</div>
<</if>>
<<if _int gte 3>>
<<link '<span class="story-choice">Argue the transfer properly</span>' "D3 Principal Smart">><</link>>
<<else>>
<div class="choice-locked" aria-disabled="true">
<span class="choice-locked-title">Argue the transfer properly</span>
<span class="choice-locked-req">Requires Intelligence 3 (now <<= _int>>)</span>
</div>
<</if>>
</div>
[[Leave the office|D3 College Map]]<<if $player.intelligence lt 3>>
<<goto "D3 Principal">>
<</if>>
<<set $day3.principalDone to true>>
<<set $day3.principalSmart to true>>
<<set $flags.day3_principal to true>>
/* Gallery: Naughty Nerd — convince Principal with Intelligence, not seduction */
<<run setup.Phone.unlockWallpaper("naughty_nerd")>>
<p>She lays it out clean: branch program, housing with Albert, grades, timelines. No wobble. No begging.</p>
<p>
<principal>...You've done your homework.</principal>
</p>
<p>
<e>I wouldn't waste your time if I hadn't.</e>
</p>
<p>He signs provisional transfer paperwork with a dry look - impressed despite himself.</p>
<p>
<principal>I'll process the Portugal branch request. Don't make me look foolish.</principal>
</p>
<p>
<et>No desk. No knees. Just a brain for once.</et>
</p>
<<toast "Transfer approved (Intelligence)">>
<<run setup.Phone.refreshNotes()>>
[[Campus|D3 College Map]]<<if $player.corruption lt 5>>
<<goto "D3 Principal">>
<</if>>
<<set $world.location to "College - hallway">>
<p>Emily steps back out of the office and shuts the door behind her, heart suddenly loud in her ears.</p>
<p>
<et>Seduce him? Just... walk in and seduce him? I don't even know how to start something like that.</et>
</p>
<p>
<et>Sarah would know. God knows she's been with enough guys to write a manual.</et>
</p>
[[Find Sarah|D3 Principal Sarah Talk]]
[[Not yet - think it through alone|D3 Principal]]<<set $world.location to "College - hallway">>
<p>She finds Sarah between classes, leaning against the lockers, scrolling her phone with the particular boredom of someone who's already aced the day.</p>
<p>
<e>Sarah. Hey - I need... advice. About something.</e>
</p>
<p>
<sarah>Ooh, serious voice. Spill.</sarah>
</p>
<p>
<e>I need to seduce someone. The principal. For the transfer. And I have basically no idea what I'm doing, and it's technically cheating on David, and-</e>
</p>
<p>
<sarah>Whoa, whoa. Back up. Why the principal, exactly?</sarah>
</p>
<p>
<e>I'll... explain later. I promise. Right now I just need to know I'm not insane for even considering it.</e>
</p>
<p>Sarah studies her for a second, the joke draining out of her face.</p>
<p>
<sarah>Okay. Is this actually that important to you, Em? Like - important-important?</sarah>
</p>
<p>
<e>Yes. More than my life, Sarah. I need this.</e>
</p>
<p>
<sarah>Then go for it. Seriously. It's not cheating if it's this important, it's just once, and - come on, we both know David isn't exactly rocking your world in bed anyway. This is different. This is you fighting for something that matters.</sarah>
</p>
<p>
<e>Still, I-</e>
</p>
<p>
<sarah>Nope. No "still." Go for it, believe me.</sarah>
</p>
<p>Sarah digs in her bag and presses two small pills into Emily's palm, glancing around before she does it.</p>
<p>
<sarah>And if you're scared - take these first. They'll take the edge off, trust me. Loosen you right up. You won't even recognize yourself in there.</sarah>
</p>
<p>
<et>...What exactly is she handing me.</et>
</p>
<<set $day3.principalPillsAsked to true>>
[[Take the pills|D3 Principal Pills Yes]]
[[Don't take them|D3 Principal Pills No]]<<set $day3.principalPillsTaken to true>>
<<set $day3.principalCorBase to Number($player.corruption) || 0>>
<<set $player.corruption to 50>>
<p>Emily swallows both pills dry before she can talk herself out of it. Sarah gives her shoulder a squeeze.</p>
<p>
<sarah>There you go. Give it a minute - you'll feel it.</sarah>
</p>
<p>Heat blooms low in her stomach almost immediately, spreading fast, melting every ounce of hesitation into something loose and reckless. Her own nervousness feels like someone else's problem now.</p>
<p>
<et>Oh... oh wow. Okay. I can do this.</et>
</p>
<<toast "Emily feels reckless - corruption temporarily surges">>
[[Back to the principal's office|D3 Principal Seduce]]<<set $day3.principalPillsTaken to false>>
<p>
<e>No - no, I want to do this clear-headed, or not at all.</e>
</p>
<p>
<sarah>Your call. Good luck in there.</sarah>
</p>
<p>Emily takes a breath, nerves still very much intact, and heads back toward the office anyway.</p>
[[Back to the principal's office|D3 Principal Seduce]]<<if $player.corruption lt 5>>
<<goto "D3 Principal">>
<</if>>
<<set $day3.principalBJ to true>>
<<set $flags.day3_principal to true>>
/* If NTR is already on, queue David's anonymous night message (not forced on here) */
<<if $ntr or $ntr_david>>
<<set $flags.pending_david_anon to true>>
<</if>>
<<if $day3.tornTop>>
<img src="Images/Chapter 1/21.gif">
<p>She barely has to try - the torn top already does half the work. Her voice softens as she leans in, giving him nowhere polite to look.</p>
<<else>>
<p>She steps closer, voice low, fingers brushing the edge of his desk like an accident that isn't.</p>
<</if>>
<p>
<e>There must be something I can do to... help the process along, sir.</e>
</p>
<img src="Images/Chapter 1/22.gif">
<p>Emily sinks to her knees in front of him. His breath hitches; hands twist into her hair as a rough groan slips out of him.</p>
<p>
<principal>Fuck, Emily... you're driving me crazy.</principal>
</p>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<img src="Images/Chapter 1/23.gif">
<p>His hands slide toward her skirt, fingers already working at the fabric - until she catches his wrists and holds them still.</p>
<<if $havesex>>
<p>
<e>Sir... wait.</e>
</p>
<p>
<principal>Portugal. Fully. Or we stop here with nothing guaranteed.</principal>
</p>
<<else>>
<p>
<e>Sir... I'm still a virgin.</e>
</p>
<p>
<principal>Then make a choice. Portugal - fully - or we stop here with nothing guaranteed.</principal>
</p>
<</if>>
<div class="choice-lock-list">
<<if $day3.principalPillsTaken>>
<<link '<span class="story-choice">Have sex with him</span>' "D3 Principal Sex">><</link>>
<<else>>
<div class="choice-locked" aria-disabled="true">
<span class="choice-locked-title">Have sex with him</span>
<span class="choice-locked-req">Requires the pills Sarah offered</span>
</div>
<</if>>
<<link '<span class="story-choice">Stop at this - seal the deal</span>' "D3 Principal Stop">><</link>>
</div><<set $day3.principalSex to true>>
<<set $day3.principalDone to true>>
<<set $havesex to true>>
<<if $day3.principalPillsTaken and $day3.principalCorBase isnot undefined>>
<<set $player.corruption to Math.clamp(Number($day3.principalCorBase) + 1, 0, 100)>>
<<unset $day3.principalCorBase>>
<<else>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<</if>>
<<toast "No longer a virgin · Corruption +1">>
<<toast "Transfer sealed">>
<p>She chooses the cost. The desk is cold under her palms; his breath is hot against her throat. When it's over, the transfer is no longer about paperwork.</p>
<p>
<principal>I'll handle Portugal. Quietly.</principal>
</p>
<p>
<et>I got what I came for. I'm not a virgin anymore.</et>
</p>
<<run setup.Phone.refreshNotes()>>
[[Campus|D3 College Map]]<<set $day3.principalDone to true>>
<<if $day3.principalPillsTaken and $day3.principalCorBase isnot undefined>>
<<set $player.corruption to Math.clamp(Number($day3.principalCorBase) + 1, 0, 100)>>
<<unset $day3.principalCorBase>>
<<else>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<</if>>
<p>She pulls back, rises to her feet, and smooths her clothes into place with steady hands.</p>
<p>
<e>The transfer. That's the deal. Nothing more today.</e>
</p>
<p>
<principal>Fine. Provisional approval. Don't make me regret it.</principal>
</p>
<<toast "Transfer approved">>
<<run setup.Phone.refreshNotes()>>
[[Campus|D3 College Map]]<<set $day3.leftCollege to true>>
<<set $world.location to "Town">>
/* Leaving campus: if still Morning, day moves to Noon; otherwise keep current time */
<<if $world.time is "Morning">>
<<run setup.advanceTime(1)>>
<</if>>
<p>She leaves campus through the main gate. Bag heavy on one shoulder, head heavier. The street noise comes back - horns, a bike bell, someone laughing too loud. Town opens up again: cafe glass, park green, home if she's done pretending the day still has room.</p>
<<if $day3.davidDiary>>
<p>
<et>Portugal plan is real now. Dad still has to buy the story tonight.</et>
</p>
<<elseif $day3.principal>>
<p>
<et>One way or another, the principal is in play.</et>
</p>
<</if>>
<p class="hub-hint"><em>Time is <<= $world.time>>. College entry is closed for the rest of the day.</em></p>
[[Outside|D3 Town Map]]
[[Go home|D3 Return Home]]
/* ── EVENING ─────────────────────────────────────────────── */<<if not $day3.principalDone>>
<<goto "D3 Home Map">>
<</if>>
<<set $day3.dadTalk to true>>
<<set $world.location to "Home - Living room">>
<<set $world.time to "Evening">>
<p>
<e>Dad, I need to talk to you about something important.</e>
</p>
<p>He mutes the TV.</p>
<p>
<father>What is it, sweetheart? You look serious.</father>
</p>
<p>
<e>I got an opportunity through college - a research program in Portugal. They selected me. I'd need to transfer for a while.</e>
</p>
<p>
<father>Portugal? That's sudden. Why didn't you tell me before?</father>
</p>
<p>
<e>I only found out recently. Competitive. I have to confirm fast. Once-in-a-lifetime.</e>
</p>
<p>
<father>You've never talked about research before...</father>
</p>
<p>
<e>I know. But it could help my future. And housing is covered - I can stay with Albert.</e>
</p>
<p>
<father>Albert? That does make it easier. He's been there for years.</father>
</p>
<p>
<e>I'll be safe. I promise I'll stay focused.</e>
</p>
<p>He sighs, then smiles - soft, tired, loving.</p>
<p>
<father>Alright, Emily. If this is what you want, I won't stop you. Take care of yourself.</father>
</p>
<p>
<e>I promise, Dad! Thank you!</e>
</p>
<p>
<et>I'm not going for research. I'm going for Mom. For the truth. For Enisia.</et>
</p>
<<toast "Dad agreed - Portugal">>
<<run setup.Phone.refreshNotes()>>
[[Home|D3 Home Map]]
[[Go to bed|D3 Sleep]]<<set $world.time to "Night">>
<<set $world.location to "Home - Emily's room">>
<p>Emily lies back, ceiling swimming with plans and secrets.</p>
<<if $day3.principalDone and $day3.dadTalk>>
<p>
<e>I'm really doing this... I'm going to Portugal. I'm going to find out the truth.</e>
</p>
<<elseif $day3.principalDone>>
<p>
<et>Principal signed. But Dad still doesn't know. I can't leave for Portugal until I talk to him - tomorrow night if I blew it tonight.</et>
</p>
<<elseif not $day3.principalDone>>
<p>
<et>Nothing is locked in yet. Tomorrow I still have to handle college - for real.</et>
</p>
<</if>>
<p>She closes her eyes. Sleep takes her.</p>
/*
Sequence gate (required):
1) Principal done
2) Dad Portugal talk done
3) Then Day 4 (Sarah farewell etc.)
Principal alone must not skip Dad.
*/
<<if $day3.principalDone and $day3.dadTalk>>
<<set $flags.day3_done to true>>
/* NTR on + principal BJ → David gets anonymous photo tonight (not Day 2) */
<<if ($day3.principalBJ or $flags.pending_david_anon) and ($ntr or $ntr_david) and not $flags.david_anon_principal>>
[[...|D3 David Anon Night]]
<<else>>
[[...|Day 4 Morning]]
<</if>>
<<elseif $day3.principalDone>>
/* Soft loop: keep principal success; force Dad talk next evening */
[[...|D3 Soft Reset]]
<<else>>
[[...|D3 Reset Day]]
<</if>>
/* ── NTR: David gets "whose lips" photo after principal BJ (original: David got a message again) ── */<<set $flags.david_anon_principal to true>>
<<set $flags.pending_david_anon to false>>
<<set $world.location to "David's room">>
<<set $world.time to "Night">>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere · Night</div>
</div>
<p>David's room is a mess of laundry and half-finished game controllers. The blinds cut the streetlight into thin blue stripes across the wall. He is face-down in the pillow, still half-dreaming, when the phone buzzes hard against the nightstand - short, sharp, mean enough to drag him awake.</p>
<p>He groans, fumbles for it, squints at the screen. Same unknown number as before. No name. No photo. Just a grey question mark and a chat thread that feels like a bad joke that never ended.</p>
<p>A strange uneasiness sits under his ribs as he unlocks it. He does not know why. Maybe because last time had been enough to keep him checking shadows. Maybe because the night is too quiet.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">23:41</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED · NO TRACE
</div>
</div>
<span class="david-anon-tag">1 new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">UNKNOWN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/8.jpg" alt="Anonymous photo">
</div>
<div class="msg-ts">23:41 · Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">It shouldn't take you long to realize whose lips these are.</div>
<div class="msg-ts">23:41</div>
</div>
</div>
<div class="terminal-actions david-anon-actions">
<p class="david-anon-actions-label">Reply as David</p>
<<link '<span class="david-anon-btn"><span class="david-anon-btn-main">What do you want?</span><span class="david-anon-btn-sub">Demand answers</span></span>' "D3 David Anon React">><</link>>
<<link '<span class="david-anon-btn"><span class="david-anon-btn-main">Stop this.</span><span class="david-anon-btn-sub">Shut it down</span></span>' "D3 David Anon React">><</link>>
</div>
</div>
<p>The photo hits him before the caption does.</p>
<p>Soft lips, parted like someone had just pulled a cock free of a warm mouth. A thick rope of cum sits glossy on the lower lip and the corner of a smile that does not care who is watching. More of it is smeared across the chin - white, wet, deliberate. Not a filter. Not a meme. Close enough that he can almost smell salt and skin through the glass.</p>
<p>His thumb freezes over the image. Heat and nausea fight for the same space in his stomach.</p>
</div><<set $world.location to "David's room">>
<div class="david-anon-scene">
<p>He types something. Deletes it. Types again. Whatever he finally sends feels thin the second it leaves - a demand, a threat, a plea dressed up as anger.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">23:42</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED · NO TRACE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">UNKNOWN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/8.jpg" alt="Anonymous photo">
</div>
<div class="msg-ts">23:41 · Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">It shouldn't take you long to realize whose lips these are.</div>
<div class="msg-ts">23:41</div>
</div>
<div class="msg-group">
<div class="bubble player only">…</div>
<div class="msg-ts right">23:42 · Delivered</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Haha, loser.</div>
<div class="msg-ts">23:42</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">I'll show you soon what you deserve.</div>
<div class="msg-ts">23:42</div>
</div>
</div>
</div>
<p>The reply comes too fast. Not defensive. Not scared. Amused - like the person on the other end still has spit and cum on their fingers while they type.</p>
<p>
<david>Fuck you.</david>
</p>
<p>He says it out loud to an empty room. The phone does not care.</p>
<p>David stares until the screen dims and wakes again under his thumb. He pinches to zoom. The mouth fills the frame - plump, shiny, painted in thick white cum that has started to dry at the edges. Whoever took the picture wanted him to see every filthy detail: the stretch of the lower lip, the wet sheen, the way a girl looks right after she swallows pride and takes a load on her face instead.</p>
<p>His cock twitches traitorously even as anger burns up his throat. He hates that. He hates the unknown more.</p>
<p>
<david>Whose fucking lips... who is she?</david>
</p>
<p>He does not know. Cannot know. The photo is too close, too framed - no eyes, no hairline he can pin to a memory, just a wet mouth and a taunt. That is the point. The stranger wants him spinning.</p>
<p>He looks away at the dark room. Looks back. The chat stays dead after the last line, like the sender already put the phone down and went back to using someone who is not him.</p>
<p>Sleep is gone. His pulse is too loud. Somewhere out there, someone is laughing with the taste of cum still on their tongue - and David is left alone with a picture he cannot unsee.</p>
<div class="david-anon-continue">
<<link '<span class="david-anon-btn david-anon-btn-continue"><span class="david-anon-btn-main">Next morning</span><span class="david-anon-btn-sub">The night finally ends</span></span>' "Day 4 Morning">><</link>>
</div>
</div>
<<toast "David received an anonymous photo">>/* Principal done, Dad not yet — new morning, keep story progress */
<<set $day3.shower to false>>
<<set $day3.dressed to false>>
<<set $day3.breakfast to false>>
<<set $day3.leftHome to false>>
/* KEEP tornTop / day3_tornTop — tear is one-time forever */
<<if $flags.day3_tornTop>><<set $day3.tornTop to true>><</if>>
<<set $day3.class1 to false>>
<<set $day3.class2 to false>>
<<set $day3.class3 to false>>
<<set $day3.intGainToday to false>>
<<set $day3.hallway to false>>
<<set $day3.leftCollege to false>>
<<set $day3.homeEve to false>>
<<set $day3.workedCafe to false>>
<<set $day3.cafeShiftsToday to 0>>
<<set $day3.attendedCollege to false>>
<<set $day3.cafeVisit to false>>
<<set $day3.parkVisit to false>>
<<set $day3.pornToday to 0>>
<<set $day3.fixedMirror to false>>
/* KEEP: principalDone, dadTalk (false), david, davidDiary, principalBJ path flags */
<<set $world.day to 3>>
<<set $world.time to "Morning">>
<<set $player.energy to 90>>
<<if def $phone>>
<<set $phone.browserPornDay to -1>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<<goto "Day 3 Morning">>/* Same "day 3" loop - progress only after principal + dad success */
<<set $day3.shower to false>>
<<set $day3.dressed to false>>
<<set $day3.breakfast to false>>
<<set $day3.leftHome to false>>
/* NEVER reset tornTop — one-time story beat (also $flags.day3_tornTop) */
<<if $flags.day3_tornTop>><<set $day3.tornTop to true>><</if>>
<<set $day3.class1 to false>>
<<set $day3.class2 to false>>
<<set $day3.class3 to false>>
<<set $day3.intGainToday to false>>
<<set $day3.hallway to false>>
/* KEEP $day3.david and $day3.davidDiary across loops - no redoing the talk */
/* principalDone also persists; only daily visit fluff resets */
<<set $day3.principal to false>>
/* Do not clear principalBJ/principalSex if principal already finished — keeps NTR queue correct */
<<if not $day3.principalDone>>
<<set $day3.principalBJ to false>>
<<set $day3.principalSex to false>>
<</if>>
<<set $day3.friends to false>>
<<set $day3.leftCollege to false>>
<<set $day3.homeEve to false>>
/* dadTalk only resets when principal not done yet (still looping for transfer) */
<<if not $day3.principalDone>>
<<set $day3.dadTalk to false>>
<</if>>
<<set $day3.workedCafe to false>>
<<set $day3.cafeShiftsToday to 0>>
<<set $day3.attendedCollege to false>>
<<set $day3.cafeVisit to false>>
<<set $day3.parkVisit to false>>
<<set $day3.pornToday to 0>>
<<set $day3.fixedMirror to false>>
<<set $world.day to 3>>
<<set $world.time to "Morning">>
<<set $player.energy to 90>>
/* Allow browser porn again next calendar loop day */
<<if def $phone and def $phone.browserPornDay>>
<<set $phone.browserPornDay to -1>>
<</if>>
<<goto "Day 3 Morning">>
/* Day 4 open world lives in day4.twee */<<set $world.day to 4>>
<<set $world.time to "Morning">>
<<set $world.location to "Home - Emily's room">>
<<set $player.energy to 90>>
/* Fresh cafe shifts for the new calendar day */
<<set $day3.cafeShiftsToday to 0>>
<<set $day3.workedCafe to false>>
<<if ndef $day4>>
<<set $day4 to {
shower : false,
dressed : false,
breakfast : false,
leftHome : false,
friendsTalk : false,
partyPoster : false,
sawDavid : false,
cafeteria : false,
classDone : false,
leftCollege : false,
dressBold : false,
partyReady : false,
partyDone : false,
speechDone : false,
homeEve : false,
toiletVisit : false,
peekElla : false,
jamesDone : false,
toldJames : false,
drunk : 0,
drunkMode : false,
drunkPlay : false,
partyHub : false,
searchDrill : false,
holeMade : false,
gloryhole : false,
roofDone : false,
kitchenDrink : false,
mallDone : false,
mallTease : false,
gloryEvent : false,
gloryBJ : false,
roofSlept : false,
dateDone : false,
cardStarted : false,
cardDone : false
}>>
<</if>>
/* Ensure fields on older saves */
<<if ndef $day4.friendsTalk>><<set $day4.friendsTalk to false>><</if>>
<<if ndef $day4.partyDone>><<set $day4.partyDone to false>><</if>>
<<if ndef $day4.partyReady>><<set $day4.partyReady to false>><</if>>
<<if ndef $day4.sawDavid>><<set $day4.sawDavid to false>><</if>>
<<if ndef $day4.toiletVisit>><<set $day4.toiletVisit to false>><</if>>
<<if ndef $day4.jamesDone>><<set $day4.jamesDone to false>><</if>>
<<if ndef $day4.drunk>><<set $day4.drunk to 0>><</if>>
<<if ndef $day4.partyHub>><<set $day4.partyHub to false>><</if>>
<<if ndef $day4.drunkMode>><<set $day4.drunkMode to false>><</if>>
<<if ndef $day4.drunkPlay>><<set $day4.drunkPlay to false>><</if>>
<<if ndef $day4.mallDone>><<set $day4.mallDone to false>><</if>>
<<if ndef $day4.mallTease>><<set $day4.mallTease to false>><</if>>
<<if ndef $day4.cafeteria>><<set $day4.cafeteria to false>><</if>>
<<if ndef $day4.gloryEvent>><<set $day4.gloryEvent to false>><</if>>
<<if ndef $day4.gloryBJ>><<set $day4.gloryBJ to false>><</if>>
<<if ndef $day4.roofSlept>><<set $day4.roofSlept to false>><</if>>
<<if ndef $day4.cardDone>><<set $day4.cardDone to false>><</if>>
/* Allow browser again on day 4 */
<<if def $phone>>
<<set $phone.browserPornDay to -1>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<img src="Images/Chapter 1/sleep.webp">
<p>The morning sun streams through Emily's window, warm on the sheets. Her alarm buzzes; she groans and stretches, body still carrying last night - secrets, paperwork, the weight of a lie that got her Portugal.</p>
<p>
<e>Ugh... time to get up.</e>
</p>
<p>
<et>Friends. Campus. One more ordinary day that isn't ordinary at all.</et>
</p>
[[Get up|D4 Home Map]]
/* ── HOME ────────────────────────────────────────────────── */<<set $world.location to "Home">>
<<if $world.time is "Evening" or $world.time is "Night">>
<<set $day4.homeEve to true>>
<</if>>
<<= setup.locBannerHtml("home", "Home", $world.time + " - free to explore")>>
<<if $world.time is "Morning">>
<p>The house smells like coffee Dad already left behind. Portugal sits on the kitchen table in her head - bags she has not packed, a diary page she cannot un-read.</p>
<<elseif $world.time is "Evening">>
<p>Evening light. If the farewell party is on, Christine's house is waiting. If not, the couch and silence are still here.</p>
<<elseif $world.time is "Night">>
<p>Night. The day is spent. Sleep is the only honest option left.</p>
<<else>>
<p>Midday quiet. Dust in the sun. She could still go back out, or get ready for whatever tonight becomes.</p>
<</if>>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Emily\'s Room</span><span class="loc-sub">Clothes / dress</span></span>' "D4 Room">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Bathroom</span><span class="loc-sub">Shower</span></span>' "D4 Bathroom">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Breakfast</span></span>' "D4 Kitchen">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Living Room</span><span class="loc-sub">Dad / quiet</span></span>' "D4 Living">><</link>>
<<if $world.time is "Night">>
<span class="loc-locked"><span class="loc-name">Go outside</span><span class="loc-sub">Night - stay in</span></span>
<<elseif $day4.shower and $day4.dressed>>
<<link '<span class="loc-card"><span class="loc-name">Go outside</span><span class="loc-sub">Town map</span></span>' "D4 Town Map">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Go outside</span><span class="loc-sub">Shower + dress first</span></span>
<</if>>
<<if $day4.friendsTalk and not $day4.partyDone and ($world.time is "Evening" or $day4.partyReady)>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Farewell party</span><span class="loc-sub">Christine\'s house</span></span>' "D4 Party">><</link>>
<<elseif $day4.friendsTalk and not $day4.partyDone>>
<span class="loc-locked"><span class="loc-name">Farewell party</span><span class="loc-sub">Evening · get ready</span></span>
<</if>>
<<if $world.time is "Evening" or $world.time is "Night" or $day4.partyDone or $day4.homeEve>>
<<link '<span class="loc-card"><span class="loc-name">Go to bed</span><span class="loc-sub">Sleep</span></span>' "D4 Sleep">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Go to bed</span><span class="loc-sub">Evening / night</span></span>
<</if>>
</div>
<<if $day4.partyDone and ($world.time is "Evening" or $world.time is "Night")>>
<p class="hub-hint"><em>Farewell is done. Sleep when you're ready - the flight is tomorrow.</em></p>
<<elseif not $day4.partyDone and ($world.time is "Evening" or $world.time is "Night")>>
<p class="hub-hint"><em>Christine's farewell party is required before Portugal. Sleeping early will not skip it.</em></p>
<<elseif not ($day4.shower and $day4.dressed)>>
<p class="hub-hint"><em>Shower and get dressed before you leave.</em></p>
<<elseif $day4.friendsTalk and $day4.cafeteria and $day4.toiletVisit and not $day4.mallDone and not $day4.partyDone>>
<p class="hub-hint"><em>Call David for mall dress shopping - then get ready for Christine's party tonight.</em></p>
<<elseif $day4.mallDone and not $day4.partyDone>>
<p class="hub-hint"><em>Dress is bought. Put it on and hit the farewell party in the Evening.</em></p>
<<elseif $day4.friendsTalk and not $day4.partyDone>>
<p class="hub-hint"><em>Friends want a farewell tonight. Do cafeteria + toilet, then mall with David for a dress.</em></p>
<<elseif not $day4.friendsTalk>>
<p class="hub-hint"><em>College in the morning - Sarah and the others will want answers. Farewell party is required before Portugal.</em></p>
<</if>><<set $world.location to "Home - Emily's room">>
<<= setup.locBannerHtml("emily_room", "Emily's Room", $world.time)>>
<p>Posters. Chargers. A closet that suddenly feels like a decision tree - ordinary college clothes for the day, and something better if tonight is real.</p>
<<if not $day4.dressed>>
<p>She needs something for campus first - simple, clean, the girl everyone thinks they know.</p>
[[Get dressed for college|D4 Dress Day]]
<<elseif $day4.mallDone and not $day4.partyReady>>
<p>The shopping bag sits on the bed. Time to put the party dress on properly - makeup, perfume, the whole goodbye look.</p>
[[Get ready in the new dress|D4 Home Dress Final]]
<<elseif $day4.friendsTalk and not $day4.mallDone and not $day4.partyReady and ($world.time is "Afternoon" or $world.time is "Evening")>>
<p>Day clothes are fine for class. For the party she can still shop with David at the mall - or wing it from the closet.</p>
<<if $day4.cafeteria and $day4.toiletVisit>>
[[Call David - mall shopping|D4 Mall Call]]
<</if>>
[[Change for the party - bold (no mall)|D4 Dress Bold]]
[[Change for the party - elegant (no mall)|D4 Dress Soft]]
<<elseif $day4.partyReady>>
<p>She's ready for the party - <<if $day4.dressBold>>the bold dress clinging where it wants to<<else>>the elegant look David preferred, soft and sharp at once<</if>>.</p>
<<else>>
<p>Dressed for the day. Bag ready. Mirror satisfied enough.</p>
<</if>>
[[Home|D4 Home Map]]<<set $day4.dressed to true>>
<p>Fitted white top. Short denim skirt. She adjusts the hem, turns in the mirror - curves she pretends not to check twice - and grabs her bag.</p>
<p>
<e>Okay. College. Face the music.</e>
</p>
<<toast "Ready for college">>
[[Back|D4 Room]]<<set $day4.partyReady to true>>
<<set $day4.dressBold to true>>
<<set $world.time to "Evening">>
<<set $day4.homeEve to true>>
<p>She chooses the bold, revealing dress. Fabric clings, neckline drops, confidence shows up like a dare. One turn in the mirror. A smirk she does not apologize for.</p>
<<toast "Party look · bold">>
[[Home|D4 Home Map]]
[[Go to the party|D4 Party]]<<set $day4.partyReady to true>>
<<set $day4.dressBold to false>>
<<set $world.time to "Evening">>
<<set $day4.homeEve to true>>
<p>She goes elegant - the kind of dress that says goodbye without screaming. Soft lines, careful makeup, perfume at her throat. She twirls once, satisfied.</p>
<<toast "Party look · elegant">>
[[Home|D4 Home Map]]
[[Go to the party|D4 Party]]<<set $world.location to "Home - Bathroom">>
<<= setup.locBannerHtml("bathroom", "Bathroom", $world.time)>>
<p>Cool tile. Steam potential. The shower is the last quiet place before friends and lies and cake.</p>
<<if not $day4.shower>>
[[Shower|D4 Shower]]
<<else>>
<p>Already done. Mirror still fogged at the edges.</p>
<</if>>
[[Home|D4 Home Map]]<<set $day4.shower to true>>
<<set $player.energy to Math.clamp($player.energy + 5, 0, 100)>>
<img src="Images/Chapter 1/shower1.gif">
<p>Warm water runs down her spine. She sighs into it - a small reset before a day that will not stay small.</p>
<img src="Images/Chapter 1/towel.gif">
<<toast "Showered">>
[[Done|D4 Bathroom]]<<set $world.location to "Home - Kitchen">>
<<= setup.locBannerHtml("kitchen", "Kitchen", $world.time)>>
<p>Coffee ring on the counter. Toast if she wants it. Dad already gone.</p>
<<if not $day4.breakfast>>
[[Eat something|D4 Breakfast]]
<<else>>
<p>Breakfast is done. Crumbs and quiet.</p>
<</if>>
[[Home|D4 Home Map]]<<set $day4.breakfast to true>>
<<set $player.energy to Math.clamp($player.energy + 5, 0, 100)>>
<p>Fuel. Not poetry. She eats standing up and checks the time twice.</p>
<<toast "Breakfast">>
[[Back|D4 Kitchen]]<<set $world.location to "Home - Living room">>
<<= setup.locBannerHtml("living", "Living Room", $world.time)>>
<<if not $day4.leftHome>>
<p>Empty couch. Remote. Family photos that do not know she is about to chase a ghost across an ocean.</p>
<<elseif $day4.partyDone or $world.time is "Night">>
<p>The house after a farewell - quieter, like it already misses her a little.</p>
<<elseif $world.time is "Evening">>
<p>Dad might be late. The living room holds evening light and nothing else useful.</p>
<<else>>
<p>Still empty. Still waiting for the day to end properly.</p>
<</if>>
[[Home|D4 Home Map]]
/* ── TOWN ────────────────────────────────────────────────── */<<if not ($day4.shower and $day4.dressed)>>
<<goto "D4 Home Map">>
<</if>>
<<if $world.time is "Night">>
<<goto "D4 Night Home">>
<</if>>
<<set $day4.leftHome to true>>
<<set $world.location to "Town">>
<<= setup.locBannerHtml("town", "Outside", $world.time + " - where to?")>>
<<if $world.time is "Morning">>
<p>Street noise. Bus sigh. Portugal is a rumor on her tongue and a destination on someone else's paperwork.</p>
<<elseif $world.time is "Evening">>
<p>Evening paints the block orange. Christine's place is not far - if she is dressed for it.</p>
<<else>>
<p>The day is open enough: campus leftovers, cafe cash, park air, home to change.</p>
<</if>>
<div class="loc-list">
/* Cafe: reuse job system (Morning–Afternoon) */
<<if $world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon">>
<<if $day3.cafeShiftsToday gte 2>>
<span class="loc-locked"><span class="loc-name">Cafe</span><span class="loc-sub">2 shifts done today</span></span>
<<else>>
<<link `'<span class="loc-card"><span class="loc-name">Cafe</span><span class="loc-sub">Job · ' + (Number($day3.cafeShiftsToday) + 1) + '/2</span></span>'` "D4 Cafe Gate">><</link>>
<</if>>
<<else>>
<span class="loc-locked"><span class="loc-name">Cafe</span><span class="loc-sub">Closed</span></span>
<</if>>
/* College: Morning enter; once left, locked */
<<if $world.time isnot "Morning">>
<span class="loc-locked"><span class="loc-name">College</span><span class="loc-sub">Morning only</span></span>
<<elseif $day4.leftCollege>>
<span class="loc-locked"><span class="loc-name">College</span><span class="loc-sub">Already left campus</span></span>
<<else>>
<<link '<span class="loc-card story-choice"><span class="loc-name">College</span><span class="loc-sub">Friends · farewell</span></span>' "D4 Enter College">><</link>>
<</if>>
<<if $world.time isnot "Night">>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Relax / pass time</span></span>' "D4 Park">><</link>>
<</if>>
/* Mall with David: after friends + cafeteria + toilet (original OD4 gate) */
<<if $day4.mallDone>>
<span class="loc-locked"><span class="loc-name">Mall</span><span class="loc-sub">Dress already bought</span></span>
<<elseif $day4.friendsTalk and $day4.cafeteria and $day4.toiletVisit and $world.time isnot "Night" and $world.time isnot "Evening">>
<<link '<span class="loc-card story-choice"><span class="loc-name">Mall with David</span><span class="loc-sub">Dress shopping</span></span>' "D4 Mall Call">><</link>>
<<elseif $day4.friendsTalk and not $day4.mallDone>>
<span class="loc-locked"><span class="loc-name">Mall with David</span><span class="loc-sub">Need cafeteria + toilet first</span></span>
<</if>>
<<if $day4.friendsTalk and not $day4.partyDone and ($world.time is "Evening" or $day4.partyReady)>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Christine\'s house</span><span class="loc-sub">Farewell party</span></span>' "D4 Party">><</link>>
<<elseif $day4.friendsTalk and not $day4.partyDone>>
<span class="loc-locked"><span class="loc-name">Christine\'s house</span><span class="loc-sub">Evening party</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Home</span><span class="loc-sub">Go back</span></span>' "D4 Return Home">><</link>>
</div>
<<if $day4.friendsTalk and $day4.cafeteria and $day4.toiletVisit and not $day4.mallDone and $world.time isnot "Evening" and $world.time isnot "Night">>
<p class="hub-hint"><em>Story: call David and hit the mall for a party dress.</em></p>
<</if>>/* Reuse shared cafe job passages; exits route via setup.cafeExits() */
<<goto "D3 Cafe">><<if $world.time is "Night">>
<<goto "D4 Night Home">>
<</if>>
<<set $world.location to "Park">>
<<= setup.locBannerHtml("park", "Park", $world.time)>>
<p>Trees, path, the same fountain as always. Today the quiet feels borrowed - like the city is already practicing life without her.</p>
[[Relax (pass time)|D4 Park Relax]]
[[Outside|D4 Town Map]]<<run setup.advanceTime(1)>>
<<if $world.time is "Noon">>
<p>She sits until the sun climbs. An hour evaporates into leaves and traffic.</p>
<p class="hub-hint"><em>Time is now Noon.</em></p>
[[Outside|D4 Town Map]]
<<elseif $world.time is "Afternoon">>
<p>Afternoon settles heavy. Her phone stays dark for once.</p>
<p class="hub-hint"><em>Time is now Afternoon.</em></p>
[[Outside|D4 Town Map]]
<<elseif $world.time is "Evening">>
<p>Light goes soft. Evening. Party hours if she is ready.</p>
<<set $day4.homeEve to true>>
<p class="hub-hint"><em>Time is now Evening.</em></p>
[[Outside|D4 Town Map]]
[[Go home|D4 Return Home]]
<<elseif $world.time is "Night">>
<p>Streetlights. Empty path. Home only.</p>
[[Go home|D4 Night Home]]
<<else>>
[[Outside|D4 Town Map]]
<</if>><<set $world.time to "Night">>
<<set $day4.homeEve to true>>
<<set $world.location to "Home">>
<p>Night closes the streets. Emily heads home.</p>
<<goto "D4 Home Map">><<set $world.location to "Home">>
<<if $world.time is "Evening" or $world.time is "Night">>
<<set $day4.homeEve to true>>
<</if>>
<<goto "D4 Home Map">>
/* ── COLLEGE ─────────────────────────────────────────────── */<<if $world.time isnot "Morning">>
<<goto "D4 Town Map">>
<</if>>
<<if $day4.leftCollege>>
<<goto "D4 Town Map">>
<</if>>
<<set $world.location to "Street">>
<p>She turns toward campus, bag strap tight. Portugal is not a rumor anymore - it is a transfer, a lie that worked, a clock already running.</p>
[[Enter campus|D4 College Map]]<<set $world.location to "College">>
<<set $day4.leftHome to true>>
<<= setup.locBannerHtml("college", "College", $world.time + " - farewell energy")>>
<p>Brick, glass, locker slam. The campus looks the same and somehow smaller - like a place you notice only when you are about to leave it.</p>
<div class="loc-list">
<<if not $day4.friendsTalk>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Sarah and Christine</span><span class="loc-sub">They know something</span></span>' "D4 Friends">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Sarah and Christine</span><span class="loc-sub">Already talked</span></span>
<</if>>
<<if not $day4.classDone>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub">One period</span></span>' "D4 Class">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Classroom</span><span class="loc-sub">Done for today</span></span>
<</if>>
<<if not $day4.sawDavid>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Find David</span><span class="loc-sub">He looks off</span></span>' "D4 David">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">David</span><span class="loc-sub">Talked</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Cafeteria</span><span class="loc-sub">Noise / food</span></span>' "D4 Cafeteria">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Hallway</span><span class="loc-sub">Poster board</span></span>' "D4 Hallway">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Toilet</span><span class="loc-sub">Restrooms</span></span>' "D4 Toilet">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Leave campus</span><span class="loc-sub">Town</span></span>' "D4 Leave College">><</link>>
</div>
<<if not $day4.friendsTalk>>
<p class="hub-hint"><em>Talk to Sarah and Christine - they already heard from David.</em></p>
<</if>><<set $day4.friendsTalk to true>>
<<set $world.location to "College - entrance">>
<p>Near the main doors, Sarah and Christine are already waiting like a verdict. Sarah grins too wide. Christine has her arms crossed, mock-glare perfected.</p>
<p>
<Sarah> Well, well. Look who finally decided to show up!</Sarah>
</p>
<p>
<Christine> Emily, we need to talk, young lady. David told us something very interesting this morning.</Christine>
</p>
<p>Emily raises an eyebrow, already guessing.</p>
<p>
<e>Oh? And what exactly did he tell you?</e>
</p>
<p>
<Sarah> That you're leaving us! For Portugal, of all places! And you didn't even tell us first?</Sarah>
</p>
<p>
<Christine> Seriously, Em? We had to hear it from David? Not cool.</Christine>
</p>
<p>Emily chuckles, rubbing the back of her neck.</p>
<p>
<e>Yeah... I was going to tell you guys. Everything happened so fast.</e>
</p>
<p>
<Sarah> Mhm. Excuses. So it's true? You're really going?</Sarah>
</p>
<p>Emily nods, softer.</p>
<p>
<e>Yeah. I have to. There's something I need to find out... for myself.</e>
</p>
<p>
<Christine> Well, whatever it is, we support you. But we need a farewell party before you go.</Christine>
</p>
<p>
<Sarah> Tonight. Christine's house. No arguments. Wear something that makes David stupid.</Sarah>
</p>
<p>
<et>A farewell party. Of course they planned it before I agreed.</et>
</p>
<<toast "Farewell party tonight">>
<<run setup.Phone.refreshNotes()>>
<p class="hub-hint"><em>Notes: Party in the evening at Christine's house.</em></p>
[[Campus|D4 College Map]]<<set $day4.classDone to true>>
<<set $world.location to "College - classroom">>
<<if $world.time is "Morning">>
<<run setup.advanceTime(1)>>
<</if>>
<p>English classroom. Chalk and old books. Sarah slides in beside her with a mischievous grin.</p>
<p>
<Sarah> Welcome back, world traveler. Ready to stir chaos, or are we being good for once?</Sarah>
</p>
<p>Emily half-listens to the lesson, half-counts exits. One period. Then the rest of the goodbye.</p>
<p class="hub-hint"><em>Time is now <<= $world.time>>.</em></p>
[[Campus|D4 College Map]]<<set $day4.sawDavid to true>>
<<set $world.location to "College - courtyard">>
<p>She finds him near the lockers, staring at nothing hard enough to crack it. When he looks up, the sadness is not subtle.</p>
<p>
<david>Hey. What's with that face?</david>
</p>
<p>
<e>I could ask you the same thing.</e>
</p>
<p>
<david>Nothing... just thinking. About you. Leaving.</david>
</p>
<p>Guilt lands soft and heavy. She covers his hand with hers.</p>
<p>
<e>Don't be sad. It's not forever.</e>
</p>
<p>
<david>Still won't be the same without you here.</david>
</p>
<p>
<e>Then I'll make it up to you. Special date - just you and me. Pick me up tomorrow. No more sulking.</e>
</p>
<p>A slow smile finally finds him.</p>
<p>
<david>A special date, huh? I'm holding you to that.</david>
</p>
<p>
<e>You better.</e>
</p>
<<toast "Date promised">>
<<run setup.Phone.refreshNotes()>>
<p class="hub-hint"><em>Notes: Have a date with David after college.</em></p>
[[Campus|D4 College Map]]<<set $day4.cafeteria to true>>
<<set $world.location to "College - cafeteria">>
<p>Noise, trays, the smell of something fried. A few classmates wave like she is already a story they will retell wrong.</p>
<p>
<et>Eat. Smile. Leave before someone asks for details I can't give.</et>
</p>
<<if $day4.friendsTalk and $day4.toiletVisit and not $day4.mallDone>>
<p class="hub-hint"><em>Cafeteria done. After the toilet run, you can call David for mall shopping.</em></p>
<<run setup.Phone.refreshNotes()>>
<</if>>
[[Campus|D4 College Map]]<<set $world.location to "College - hallway">>
<p>Bodies and lockers. On the bulletin board by the restrooms, a bright poster screams in marker colors:</p>
<<if not $day4.partyPoster>>
<img src="Images/Chapter 1/poster.png">
<<set $day4.partyPoster to true>>
<</if>>
<p><strong>FAREWELL PARTY FOR EMILY! Tonight at Christine's house! Be there to give her the send-off she deserves!</strong></p>
<p>She laughs under her breath.</p>
<p>
<e>Seriously? These guys...</e>
</p>
<p>Warmth spreads anyway. They care loud. That is a kind of love. With a final glance at the poster, she can push into the restroom - or keep walking.</p>
[[Campus|D4 College Map]]
[[Toilet|D4 Toilet]]
/* ── TOILET / ELLA / JAMES ───────────────────────────────── */<<set $world.location to "College - restrooms">>
<<if $day4.toiletVisit and $day4.jamesDone>>
<p>Nothing left here but cleaner and the ghost of a bad decision.</p>
[[Campus|D4 College Map]]
<<else>>
<p>Two doors. Cleaner and nerves.<<if $day4.partyPoster>> The farewell poster still glows behind her eyes.<</if>></p>
[[Female toilet|D4 Toilet Female]]
[[Male toilet|D4 Toilet Male]]
[[Campus|D4 College Map]]
<</if>><p>Her hand stops on the handle. Through the door: a laugh, a zipper. The wrong world.</p>
<p>
<et>Yeah... no.</et>
</p>
[[Restrooms|D4 Toilet]]<<set $world.location to "College - female toilet">>
<<if $day4.toiletVisit>>
<p>Same stalls. Same fluorescent hum. The drama is already burned into her memory.</p>
[[Campus|D4 College Map]]
<<else>>
<p>She slips inside, still smiling about the poster - then freezes.</p>
<p>A muffled moan from one of the stalls. Hushed whispers. Heavy breathing. Skin and wet sounds that do not belong in a school bathroom.</p>
<p>
<e>Is someone... doing it in there?</e>
</p>
<p>Curiosity claws up her throat.</p>
[[Peek inside|D4 Peek Ella]]
[[Ignore and leave|D4 Toilet Leave]]
<</if>><<set $day4.toiletVisit to true>>
<p>Emily shakes her head, pushing the curiosity down.</p>
<p>
<e>Not my business.</e>
</p>
<p>She turns on her heel and steps out. The hallway feels louder. The thought of who was in that stall still sticks under her skin.</p>
<<run setup.Phone.refreshNotes()>>
[[Campus|D4 College Map]]<<set $day4.toiletVisit to true>>
<<set $day4.peekElla to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<set $world.location to "College - female toilet">>
<p>She eases closer. Through a gap she should not use, she sees too much.</p>
<img src="Images/Chapter 1/31.gif">
<p>Ella - classmate, someone with a boyfriend named James - bent and busy with two men. Hands, mouths, bodies packed into a stall like secrecy is optional.</p>
<img src="Images/Chapter 1/32.gif">
<p>
<et>What the fuck. Ella has a boyfriend and she's doing this behind his back.</et>
</p>
<p>
<et>I should get out before she catches me.</et>
</p>
<<toast "Corruption +1">>
<<run setup.Phone.refreshNotes()>>
[[Step outside|D4 James Letter]]<<set $world.location to "College - hallway">>
<p>Emily steps out of the toilet, adjusting her hair as she makes her way down the hallway. Afternoon sun stripes the tile. Students pass, chatting - then one familiar face cuts through the noise.</p>
<p>James. Holding a neatly folded letter. Grinning like the world is still kind.</p>
<p>
<npc>James:</npc> Emily! I just finished writing this for Ella. It's a love letter - I want to give it to her after class. What do you think?
</p>
<p>Emily's heart clenches. She just saw Ella with other guys, filthy and mid-act. James has no idea. And here he is, pouring his heart into paper for someone who is betraying him in a stall.</p>
<p>She bites her lip, torn.</p>
<<link '<span class="story-choice">Tell James the truth</span>' "D4 Tell James">><</link>>
[[Stay silent|D4 Stay Silent]]<<set $day4.jamesDone to true>>
<<set $day4.toldJames to true>>
<<set $world.location to "College - hallway">>
<p>
<e>James... there's something you need to know. I saw Ella earlier. Just go to the washroom. Third stall. You'll understand what I can't say out loud.</e>
</p>
<p>
<npc>James:</npc> Ok, Emily.
</p>
<p>He goes. Something in her chest pulls her after him - guilt, horror, a need to see the ending she set in motion.</p>
[[Follow him|D4 James Foursome]]<<set $world.location to "College - female toilet">>
<p>Emily follows James into the washroom and stops in shock.</p>
<img src="Images/Chapter 1/33.gif">
<p>It is worse than before. More bodies. More noise. Ella in the middle of it - and James is not stopping the scene, not freezing like a broken boyfriend. He is in it. Mouth and hands and heat. A foursome that turns betrayal into something even uglier and more confused.</p>
<img src="Images/Chapter 1/34.gif">
<p>
<et>What the fuck is wrong with this college. I should just get out of here.</et>
</p>
[[Leave|D4 College Map]]<<set $day4.jamesDone to true>>
<<set $day4.toldJames to false>>
<<set $world.location to "College - hallway">>
<p>Emily forces a small smile, glancing at the letter in his hands.</p>
<p>
<e>It looks great, James. I'm sure Ella will love it.</e>
</p>
<p>James grins, completely unaware.</p>
<p>
<npc>James:</npc> Thanks, Em! I really hope she likes it. I put a lot of thought into this.
</p>
<p>She watches him walk away, heart heavy. Kindness or cowardice - she cannot tell which she chose.</p>
[[Campus|D4 College Map]]<<set $day4.leftCollege to true>>
<<set $world.location to "Town">>
<<if $world.time is "Morning">>
<<run setup.advanceTime(1)>>
<</if>>
<p>She leaves campus. Bag lighter than it should be. Town opens - home to change if the party is real, cafe if she still wants cash, park if she needs air<<if $day4.friendsTalk and $day4.cafeteria and $day4.toiletVisit and not $day4.mallDone>>, or the mall with David for a real dress<</if>>.</p>
<p class="hub-hint"><em>Time is <<= $world.time>>.</em></p>
<<run setup.Phone.refreshNotes()>>
<<if $day4.friendsTalk and $day4.cafeteria and $day4.toiletVisit and not $day4.mallDone>>
<<link '<span class="story-choice">Call David - mall dress shopping</span>' "D4 Mall Call">><</link>>
<</if>>
[[Outside|D4 Town Map]]
[[Go home|D4 Return Home]]
/* ── MALL WITH DAVID (dress shopping) ────────────────────── */<<if $day4.mallDone>>
<<goto "D4 Town Map">>
<</if>>
<<if not ($day4.friendsTalk and $day4.cafeteria and $day4.toiletVisit)>>
<<goto "D4 Town Map">>
<</if>>
<<set $world.location to "Street">>
<p>A thought crosses her mind. She grabs her phone and dials David.</p>
<p>
<e>Hey, David! Can you pick me up? I want to go dress shopping for the party.</e>
</p>
<p>His voice comes through amused and warm.</p>
<p>
<david>Dress shopping, huh? You know I don't really get fashion, right?</david>
</p>
<p>
<e>I just need someone to give opinions. Besides, it'll be fun!</e>
</p>
<p>David sighs dramatically, but she can hear the smile.</p>
<p>
<david>Alright, alright. I'll be there in ten minutes.</david>
</p>
<p>Emily ends the call, touches up her hair and makeup, and waits outside with a little too much bounce in her pulse.</p>
[[He arrives|D4 Mall Drive]]<<set $world.location to "David's car">>
<p>A little while later, David pulls up and rolls the window down.</p>
<img src="Images/Chapter 1/35.gif">
<p>
<david>Hop in, princess.</david>
</p>
<p>She rolls her eyes at the teasing and buckles in.</p>
<p>
<e>Let's go!</e>
</p>
<p>The drive to the mall is light chatter and soft music. Soon the glass storefronts rise ahead. Emily steps out scanning boutiques like a mission brief.</p>
<p>
<david>Alright, where to first?</david>
</p>
<p>
<e>That boutique over there. I want something special.</e>
</p>
<p>David follows her inside, already bracing for a long shopping trip.</p>
[[Browse dresses|D4 Mall Dress Select]]<<set $world.location to "Mall - boutique">>
<p>Emily's eyes sparkle as she pulls a dress from the rack - sleek, form-fitting, deep neckline, high slit. She turns to David, holding it up.</p>
<img src="Images/Chapter 1/36.jpg">
<p>
<e>What do you think about this one?</e>
</p>
<p>David glances and immediately frowns.</p>
<p>
<david>That's... um, that's kinda revealing, don't you think?</david>
</p>
<p>
<e>And? What's wrong with that?</e>
</p>
<p>He scratches the back of his head, uncomfortable.</p>
<p>
<david>I mean, you'd look gorgeous, no doubt. But do you really want all those guys drooling over you at the party?</david>
</p>
<p>Emily brushes the silky fabric. Bold. Daring. Exactly her style. His concern still lands.</p>
<<link '<span class="story-choice">Listen to David - pick another dress</span>' "D4 Mall Dress Soft">><</link>>
[[Ignore David - take the revealing one|D4 Mall Dress Bold]]<<set $day4.dressBold to false>>
<<set $world.location to "Mall - boutique">>
<p>Emily sighs and gives the revealing dress one last look before hanging it back.</p>
<p>
<e>Fine, fine. I'll pick something else.</e>
</p>
<p>David looks clearly relieved.</p>
<p>
<david>Good call. Just as beautiful - a little less attention-grabbing.</david>
</p>
<p>She rolls her eyes but smiles, browsing again until she finds another: still stylish, more modest, elegant cut.</p>
<img src="Images/Chapter 1/dress.jpg">
<p>
<e>What about this one?</e>
</p>
<p>
<david>That looks perfect.</david>
</p>
<p>
<e>Alright. I'll try it on. Wait for me, okay?</e>
</p>
<p>
<david>Like I have a choice?</david>
</p>
[[Fitting room|D4 Mall Try On]]<<set $day4.dressBold to true>>
<<set $world.location to "Mall - boutique">>
<p>She rolls her eyes, brushing off his concern.</p>
<p>
<e>Come on, David. It's my farewell party - I should wear something that makes me feel confident.</e>
</p>
<p>
<david>I just don't want guys staring at you all night.</david>
</p>
<p>
<e>Jealous much?</e>
</p>
<p>She winks and heads for the fitting rooms before he can answer.</p>
<p>
<e>Wait here. I'll be out in a minute.</e>
</p>
<p>David exhales, shaking his head as she disappears.</p>
[[Fitting room|D4 Mall Try On]]<<set $world.location to "Mall - fitting room">>
<p>Emily slips into the dress. In the mirror the fabric hugs every curve. She runs her hands over it, imagining the party - then a mischievous thought creeps in.</p>
<img src="Images/Chapter 1/37.gif">
<p>What if she pulled David inside? Just to tease him. Just to watch him turn red and try to resist.</p>
<p>
<e>Should I call David in? Hmm...</e>
</p>
<<link '<span class="story-choice">Pull David inside</span>' "D4 Mall Pull David">><</link>>
[[Stay professional - show him later|D4 Mall Show Later]]<<set $day4.mallTease to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<set $world.location to "Mall - fitting room">>
<p>She bites her lip, wicked smile spreading.</p>
<p>
<e>David, come here.</e>
</p>
<p>The door opens. His eyes go wide - Emily in only her underwear, dress half-hung, soft light on bare skin.</p>
<p>
<e>I was thinking we could have a little fun.</e>
</p>
<p>She pushes his pants down. His cock springs free, already hard for her.</p>
<img src="Images/Chapter 1/39.gif">
<p>
<david>Emily...</david>
</p>
<p>She kneels, eyes never leaving his.</p>
<p>
<e>Shh. Let me take care of this.</e>
</p>
<p>Fingers around his shaft. Tongue on the tip. He moans low, hands in her hair.</p>
<img src="Images/Chapter 1/40.gif">
<p>She takes him into her mouth, head bobbing, wet heat, the thin fitting-room walls doing nothing to hide how much he wants it. His hips stutter with her rhythm.</p>
<img src="Images/Chapter 1/41.gif">
<p>She pulls back, lips wrapped around the head.</p>
<p>
<e>Cum for me, baby.</e>
</p>
<img src="Images/Chapter 1/42.gif">
<p>He does - thick, hot, messy - and she swallows what she can, wiping her mouth with the back of her hand like this is a perfectly normal shopping trip.</p>
<p>
<e>That was great. Let me change now.</e>
</p>
<<toast "Corruption +1">>
[[Step out|D4 Mall Show Later]]<<set $world.location to "Mall - boutique">>
<p>Emily steps out of the changing room, heart still a little too fast. The dress fits - hugging in all the right places. She looks at David and waits.</p>
<<if $day4.dressBold>>
<p>
<david>It's... okay.</david>
</p>
<p>He forces a small smile. Disappointment sits in his eyes even if he tries to nod it away.</p>
<<else>>
<p>David's eyes light up.</p>
<p>
<david>You look so pretty, Emily. I knew this one would be perfect for you!</david>
</p>
<p>He smiles warm, admiring her like the night already belongs to them.</p>
<</if>>
<<if $day4.mallTease>>
<p>His ears are still pink. Neither of them mentions the fitting room. The silence is filthy and fond at once.</p>
<</if>>
<p>
<e>Thanks, David! Let's buy it and head home.</e>
</p>
<p>They pay at the counter and leave the mall with a bag between them and the party waiting like a held breath.</p>
<<set $day4.mallDone to true>>
<<set $day4.partyReady to false>>
/* Dress is bought; she still changes at home for the final look */
<<if $world.time is "Morning" or $world.time is "Noon">>
<<run setup.advanceTime(1)>>
<</if>>
<<if $world.time is "Afternoon">>
/* keep afternoon - evening when she dresses at home */
<</if>>
<<toast "Party dress bought">>
<<run setup.Phone.refreshNotes()>>
[[Go home to get ready|D4 Mall Home]]<<set $world.location to "Home - Emily's room">>
<<set $day4.leftHome to true>>
<p>Emily rushes home, shopping bag swinging, excitement bubbling. She has to get ready for the farewell party.</p>
[[Put on the dress|D4 Home Dress Final]]<<set $day4.partyReady to true>>
<<set $world.time to "Evening">>
<<set $day4.homeEve to true>>
<<set $world.location to "Home - Emily's room">>
<<if $day4.dressBold>>
<p>She slips into the bold, revealing dress. It clings, highlights every curve. She smirks at the mirror, confident.</p>
<img src="Images/Chapter 1/38.jpg">
<<else>>
<p>She puts on the dress she chose with David's advice - modest still elegant. She twirls once, satisfied.</p>
<</if>>
<p>Final touch of makeup. A spritz of perfume. Purse. Christine's house is waiting.</p>
<<toast "Ready for the party">>
<<run setup.Phone.refreshNotes()>>
[[Go to the party|D4 Party]]
[[Home map|D4 Home Map]]
/* ── PARTY (expanded hub) ────────────────────────────────── */<<if not $day4.friendsTalk>>
<<goto "D4 Town Map">>
<</if>>
<<if $day4.partyDone and not $day4.partyHub>>
<<goto "D4 After Party">>
<</if>>
<<if $day4.partyHub>>
<<goto "D4 Party Hub">>
<</if>>
/* Auto evening + ready if she shows up in day clothes */
<<if not $day4.partyReady>>
<<set $day4.partyReady to true>>
<<set $day4.dressBold to false>>
<</if>>
<<if ndef $day4.drunk>><<set $day4.drunk to 0>><</if>>
<<set $world.time to "Evening">>
<<set $day4.homeEve to true>>
<<set $world.location to "Christine's house">>
<p>Emily arrives at Christine's house, eyes widening. Fairy lights, banners, balloons - the whole place dressed like a celebration that refuses to be small.</p>
<p>A large banner hangs over the entrance:</p>
<p><strong>"Farewell, Emily! Wishing You the Best in Portugal!"</strong></p>
<p>Laughter and music spill into the street. Inside, the living room is packed - almost the entire class. Warmth hits her chest, bittersweet and real.</p>
<p>
<Sarah> Emily! You finally made it!</Sarah>
</p>
<p>Sarah rushes over, hugs her hard, then steps back for an approving look.</p>
<p>
<Sarah> You look stunning<<if $day4.dressBold>> - damn, Em, that dress<<else>>. Elegant as hell<</if>>! And congrats on Portugal. We're all so proud of you!</Sarah>
</p>
<p>
<e>Thanks, Sarah. I'm really going to miss you guys.</e>
</p>
<p>
<Sarah> Well, before you get all emotional - how about a farewell speech?</Sarah>
</p>
<p>Cheers roll through the room. Everyone turns. Emily takes a breath and steps forward.</p>
[[Give a farewell speech|D4 Party Speech]]<<set $day4.speechDone to true>>
<<set $world.location to "Christine's house">>
<p>
<e>I... honestly don't know what to say. This is all so overwhelming! I had no idea you guys were planning something this big. Thank you so much for being here tonight. You've all been such a huge part of my life, and even though I'm leaving, I'll always remember the memories we made together.</e>
</p>
<p>The room erupts in applause. Christine appears from the kitchen carrying a beautifully decorated farewell cake.</p>
<p>
<Christine> Well, we can't let you go without something sweet! Let's cut the cake!</Christine>
</p>
<p>Sarah steps forward with the knife, grinning.</p>
<p>
<Sarah> Come on - let's do this together!</Sarah>
</p>
<p>Their hands meet on the handle. Everyone cheers as the blade sinks into frosting - the real start of an unforgettable night.</p>
[[Next|D4 Party Alcohol]]<<set $world.location to "Christine's house">>
<p>The party is in full swing - laughter, music, sugar on the air. Emily is about to take a bite of cake when the front door swings open.</p>
<img src="Images/Chapter 1/43.jpg">
<p>David steps inside, grinning, two large bags of bottles in his arms.</p>
<p>
<david>Alright, everyone! I brought something to make this night unforgettable!</david>
</p>
<p>A cheer. People rush him. Sarah calls him a legend. Christine declares it a real party.</p>
<p>David sets the bottles down, smirking at Emily.</p>
<p>
<david>Thought I'd bring something to celebrate your big move properly.</david>
</p>
<p>
<e>Oh, so you're trying to get me drunk before I leave?</e>
</p>
<p>
<david>Just trying to make sure you have the best last night here.</david>
</p>
<p>
<Sarah> Enough talking! Let's get the drinks flowing!</Sarah>
</p>
<p>Christine pours shots. Glasses rise.</p>
<p>
<Christine> Alright, everyone - a toast to Emily!</Christine>
</p>
<p>
<strong>To Emily!</strong>
</p>
<img src="Images/Chapter 1/44.jpg">
<p>Emily clinks her glass against David's. Warmth of friendship. Warmth of alcohol. She knows the night is only getting started.</p>
<p>
<e>Let's enjoy!</e>
</p>
<<set $day4.drunk to Math.max(Number($day4.drunk) || 0, 1)>>
<<set $day4.partyHub to true>>
<<toast "Party open · explore">>
[[Explore the party|D4 Party Hub]]<<set $world.location to "Christine's house">>
<<set $world.time to "Evening">>
<<if ndef $day4.drunk>><<set $day4.drunk to 0>><</if>>
<img src="Images/Chapter 1/46.jpg">
<p>The hall is filled with laughter and conversation. People cluster with drinks. Music is loud but not crushing - a real farewell pulse.</p>
<p>Emily looks around. Different rooms, different trouble.</p>
<div class="loc-list">
<<link '<span class="loc-card"><span class="loc-name">Living room</span><span class="loc-sub">Cards / crowd</span></span>' "D4 Party Living">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Drinks · David</span></span>' "D4 Party Kitchen">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Toilet</span><span class="loc-sub">Sarah / trouble</span></span>' "D4 Party Toilet">><</link>>
<<link '<span class="loc-card"><span class="loc-name">1st bedroom</span><span class="loc-sub">Door ajar</span></span>' "D4 Party Room1">><</link>>
<<link '<span class="loc-card"><span class="loc-name">2nd bedroom</span><span class="loc-sub">Noise</span></span>' "D4 Party Room2">><</link>>
<<if $day4.drunk gte 1>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Roof</span><span class="loc-sub">Air · diary</span></span>' "D4 Party Roof">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Roof</span><span class="loc-sub">Need a drink first</span></span>
<</if>>
<<if $day4.drunk gte 5>>
<<link '<span class="loc-card"><span class="loc-name">Outside / cars</span><span class="loc-sub">Fresh air</span></span>' "D4 Party Exit">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Outside / cars</span><span class="loc-sub">Drunk 5+</span></span>
<</if>>
<<link '<span class="loc-card story-choice"><span class="loc-name">Head home</span><span class="loc-sub">End the night</span></span>' "D4 After Party">><</link>>
</div><<set $world.location to "Christine's - living room">>
/* Original needs drunk >= 6; kitchen binge hits 5, cars hit 6 - also allow at 5 so kitchen path works */
<<if $day4.cardDone>>
/* Game already finished - kick to home, no replay */
<<goto "D4 After Party">>
<<elseif $day4.drunk gte 5>>
<p>In the corner of the living room, a low table is covered in cards, empty cups, and bad decisions. Jamal shuffles with a grin. Max leans back like he already won. Sarah waves Emily over hard enough to spill someone's drink.</p>
<p>
<npc>Jamal:</npc> Hey Emily, join us for a card game! But there's a twist... losers strip!
</p>
<p>Heat crawls her neck. The night is already too full for more chaos - or maybe just full enough.</p>
<<link '<span class="story-choice">Join the strip card mini-game</span>' "D4 Card Start">><</link>>
[[Back to the hall|D4 Party Hub]]
<<else>>
<p>The living room is loud - dancing, shouting, someone filming a toast. A strip-card game is brewing in the corner, but the players wave her off.</p>
<p>
<Max> You're not drunk enough for this game yet!</Max>
</p>
<p class="hub-hint"><em>Get Drunk 5+ in the kitchen (or cars) first.</em></p>
[[Back to the hall|D4 Party Hub]]
<</if>><<if $day4.cardDone>>
<<goto "D4 After Party">>
<</if>>
<<set $world.location to "Christine's - living room">>
<<set $day4.cardStarted to true>>
<<set $day4.cardRound to 0>>
/* Fresh players each game start (only once - cardDone blocks replay) */
<<set $day4.cardPlayers to [
{ name : "Jamal", clothes : ["Socks", "Shirt", "Pants", "Underwear"] },
{ name : "Emily", clothes : ["Top", "Pants", "Bra", "Underwear"] },
{ name : "Sarah", clothes : ["Top", "Pants", "Bra", "Underwear"] },
{ name : "Max", clothes : ["Socks", "Shirt", "Pants", "Underwear"] }
]>>
<p>Jamal deals. Sarah cracks her knuckles. Max smirks like the universe owes him a show. Emily sits, dress riding up, pulse loud in her ears.</p>
<div class="strip-rules">
<div class="strip-rules-title">Strip card mini-game</div>
<ul>
<li>Each round you get a card (2–10, J, Q, K, A).</li>
<li><strong>Lowest card loses</strong> a piece of clothing.</li>
<li>You can <strong>Hold</strong> or <strong>Redraw once</strong> per round.</li>
<li><strong>Risk redraw</strong>: forced new card — could save you or sink you.</li>
<li>First person fully nude ends the game.</li>
</ul>
</div>
<p>
<Sarah> Rules are simple. Low card strips. Last scrap goes - and then we see who really came to party.</Sarah>
</p>
<p>
<e>This is a terrible idea.</e>
</p>
<p>
<npc>Jamal:</npc> Best kind.
</p>
[[Deal me in|D4 Card Deal]]
/* ── Interactive deal: Emily sees her card and chooses ── */
/* HTML for seats/cards is built in JS (setup.strip*) — macros inside attributes break SugarCube HTML. */<<if $day4.cardDone>>
<<goto "D4 After Party">>
<</if>>
<<set $world.location to "Christine's - living room">>
<<if ndef $day4.cardPlayers or $day4.cardPlayers.length lt 1>>
<<goto "D4 Card Start">>
<</if>>
<<set $day4.cardRound to (Number($day4.cardRound) || 0) + 1>>
<<set $day4.cardEmily to setup.dealCard()>>
<<set $day4.cardEmilySuit to setup.cardSuit()>>
<<set $day4.cardRedrawUsed to false>>
<<set $day4.cardRiskUsed to false>>
<div class="strip-table">
<div class="strip-table-head">
<span>Round <<= $day4.cardRound>></span>
<span class="strip-table-sub">Lowest card strips</span>
</div>
<<print setup.stripDealSeatsHtml()>>
<<print setup.stripYourCardHtml(false)>>
</div>
<div class="strip-actions">
<<link '<span class="strip-btn strip-btn-hold">Hold — play this card</span>' "D4 Card Reveal">><</link>>
<<if not $day4.cardRedrawUsed>>
<<link '<span class="strip-btn strip-btn-redraw">Redraw once</span>' "D4 Card Redraw">><</link>>
<<link '<span class="strip-btn strip-btn-risk">Risk redraw (forced)</span>' "D4 Card Risk">><</link>>
<<else>>
<p class="strip-hint">No redraws left this round — you have to play it.</p>
<</if>>
</div><<if $day4.cardRedrawUsed>>
<<goto "D4 Card Deal Locked">>
<</if>>
<<set $day4.cardRedrawUsed to true>>
<<set $day4.cardEmily to setup.dealCard()>>
<<set $day4.cardEmilySuit to setup.cardSuit()>>
<<set $world.location to "Christine's - living room">>
<p>Emily tosses her card and takes another from the deck. Max snorts.</p>
<p>
<Max> Nervous already?</Max>
</p>
<<toast `"New card: " + setup.cardLabel($day4.cardEmily)`>>
<<goto "D4 Card Deal Locked">><<if $day4.cardRedrawUsed>>
<<goto "D4 Card Deal Locked">>
<</if>>
<<set $day4.cardRedrawUsed to true>>
<<set $day4.cardRiskUsed to true>>
<<run (function () {
var v;
if (Math.random() < 0.4) {
v = [10, 11, 12, 13, 14][Math.floor(Math.random() * 5)];
} else {
v = setup.dealCard();
}
State.variables.day4.cardEmily = v;
State.variables.day4.cardEmilySuit = setup.cardSuit();
})()>>
<<set $world.location to "Christine's - living room">>
<p>Emily shoves the safe play aside and cuts the deck hard. Risk or reward.</p>
<<toast `"Risk card: " + setup.cardLabel($day4.cardEmily)`>>
<<goto "D4 Card Deal Locked">>
/* After redraw, show card with only Hold */<<set $world.location to "Christine's - living room">>
<<set $day4.cardRedrawUsed to true>>
<div class="strip-table">
<div class="strip-table-head">
<span>Round <<= $day4.cardRound>> · after redraw</span>
<span class="strip-table-sub">Lowest card strips</span>
</div>
<<print setup.stripDealSeatsHtml()>>
<<print setup.stripYourCardHtml(true)>>
</div>
<div class="strip-actions">
<<link '<span class="strip-btn strip-btn-hold">Play it</span>' "D4 Card Reveal">><</link>>
</div><<if $day4.cardDone>>
<<goto "D4 After Party">>
<</if>>
<<set $world.location to "Christine's - living room">>
<<set _res to setup.stripResolve()>>
<<if not _res>>
<<goto "D4 Card Start">>
<</if>>
<<set _loser to _res.loser>>
<<set _removed to _res.removed>>
<<set _left to _res.left>>
<<set _nude to _res.nude>>
<div class="strip-table">
<div class="strip-table-head">
<span>Reveal</span>
<span class="strip-table-sub">Lowest loses</span>
</div>
<<print setup.stripRevealSeatsHtml()>>
</div>
<p>Cards slap the table. Groans. Cheers. <strong><<= $day4.cardLastLoser>></strong> has the lowest card<<if _removed>> and has to strip off their <strong><<= _removed>></strong><</if>>.</p>
<<if _nude>>
<<if _loser.name is "Emily">>
<<goto "D4 Card Emily Nude">>
<<elseif _loser.name is "Sarah">>
<<goto "D4 Card Sarah Nude">>
<<elseif _loser.name is "Jamal">>
<<goto "D4 Card Jamal Nude">>
<<else>>
<<goto "D4 Card Max Nude">>
<</if>>
<<else>>
<<if _loser.name is "Emily">>
<<if _left is 3>>
<img src="Images/Chapter 1/emily_1.gif">
<p>Emily peels off the top. Cool air on her skin. Jamal whistles; Max's eyes track every inch.</p>
<<elseif _left is 2>>
<img src="Images/Chapter 1/emily_2.gif">
<p>Pants gone. Bare thighs. Her bra and underwear are the only things left between her and full exposure.</p>
<<else>>
<img src="Images/Chapter 1/emily_3.gif">
<p>Bra unhooks. She covers herself with an arm and a glare that does nothing to stop the staring.</p>
<</if>>
<<elseif _loser.name is "Sarah">>
<<if _left is 3>>
<img src="Images/Chapter 1/sarah_1.gif">
<p>Sarah laughs as her top comes off, like shame is optional.</p>
<<elseif _left is 2>>
<img src="Images/Chapter 1/sarah_2.gif">
<p>Sarah's pants hit the floor. She does a little spin for the boys.</p>
<<else>>
<img src="Images/Chapter 1/sarah_3.gif">
<p>Sarah's bra joins the pile. She cups her breasts and winks at Emily.</p>
<</if>>
<<elseif _loser.name is "Jamal">>
<<if _left is 3>>
<p>Jamal peels off socks like this is nothing. Shirt next - dark muscle under party light.</p>
<<elseif _left is 2>>
<img src="Images/Chapter 1/jamal_2.gif">
<p>Jamal's pants drop. The outline in his underwear is impossible to ignore. Sarah bites her lip.</p>
<<else>>
<img src="Images/Chapter 1/jamal_3.gif">
<p>Jamal is down to underwear, thick cock half-hard against the fabric. Max pretends not to look. Fails.</p>
<</if>>
<<else>>
<<if _left is 3>>
<img src="Images/Chapter 1/max_3.webp">
<p>Max loses socks and shirt, grinning like a dare.</p>
<<elseif _left is 2>>
<img src="Images/Chapter 1/max_1.gif">
<p>Max's pants go. Lean body, cocky smile.</p>
<<else>>
<img src="Images/Chapter 1/max_2.gif">
<p>Max is almost bare. Sarah's breathing is not subtle.</p>
<</if>>
<</if>>
<div class="strip-actions">
<<link '<span class="strip-btn strip-btn-hold">Next round</span>' "D4 Card Deal">><</link>>
</div>
[[Bail to the hall|D4 Party Hub]]
<</if>>
/* ── Strip game full endings (original Emily / Sarah nude / Jamal nude / Max)
Players: Emily, Sarah, Jamal, Max (not James) ── *//* Original: Emily.txt */
<<set $day4.cardDone to true>>
<<set $world.location to "Christine's - living room">>
<<if not $day4.cardCorrEmily>>
<<set $day4.cardCorrEmily to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<p>As fate would have it, Emily is the unluckiest of them all. One by one her clothes come off - top first, then pants, then bra. By the final round she is completely nude, bare skin exposed under the dim glow of the room's lights.</p>
<img src="Images/Chapter 1/53.gif">
<p>
<Max> Damn, Emily... you look amazing like this.</Max>
</p>
<p>Max's eyes roam over her body, voice laced with admiration.</p>
<p>
<npc>Jamal:</npc> Yeah, your body is incredible. You should send a pic to your ex - show him what he's missing.
</p>
<p>Emily's eyes widen. She crosses her arms over her chest, though it does little to hide her.</p>
<p>
<e>What?! No way, that's ridiculous!</e>
</p>
<p>
<npc>Jamal:</npc> Come on, just for fun. He'll be shocked.
</p>
<p>
<Sarah> Yeah, imagine his reaction.</Sarah>
</p>
<p>Sarah giggles, nudging Emily teasingly.</p>
[[Send nude to ex|D4 Card Send Ex]]
[[Stay loyal to David|D4 Card Loyal]]/* Original: SDP */
<<set $day4.cardDone to true>>
<<if not $day4.cardCorrSendEx>>
<<set $day4.cardCorrSendEx to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<<set $world.location to "Christine's - living room">>
<p>Emily hesitates, then reaches for her phone.</p>
<p>
<e>Fine. But just one pic.</e>
</p>
<p>She adjusts her pose slightly, angling the camera just right before snapping the shot. A moment later, she sends it.</p>
<img src="Images/Chapter 1/57.webp">
<p>Seconds tick by before her phone buzzes.</p>
<p><em>EX: Damn, Emily... I miss you.</em></p>
<p>Emily rolls her eyes.</p>
<p>
<e>Ugh, that was a mistake.</e>
</p>
<p>With a swift motion she blocks his number again, tossing her phone onto the couch.</p>
<p>
<Max> Atta girl. No regrets.</Max>
</p>
<p>Max chuckles.</p>
<p>
<npc>Jamal:</npc> That's how you do it. Now, who's up for another round?
</p>
<p>The night is far from over for them - but Emily has had enough of cards and dares. She gathers what she can of her clothes and heads for the door.</p>
[[Go home|D4 Card Finish Home]]/* Original: D2DP */
<<set $day4.cardDone to true>>
<<if not $day4.cardLoyalDone>>
<<set $day4.cardLoyalDone to true>>
<</if>>
<<set $world.location to "Christine's - living room">>
<p>
<e>No way. I have a boyfriend, remember?</e>
</p>
<p>Max shrugs.</p>
<p>
<Max> Come on, it's not a big deal. Just a little fun.</Max>
</p>
<p>
<npc>Jamal:</npc> Yeah, it's not like you're cheating. Just a reminder to your ex of what he lost.
</p>
<p>Emily shakes her head firmly.</p>
<p>
<e>I don't need to prove anything to him. David is the only one who matters to me.</e>
</p>
<p>Sarah smiles softly.</p>
<p>
<Sarah> That's actually kinda sweet.</Sarah>
</p>
<p>
<npc>Jamal:</npc> Suit yourself, but if it were me, I'd make my ex regret ever leaving.
</p>
<p>Jamal laughs, taking a sip of his drink.</p>
<p>
<Max> Alright, alright, let's move on.</Max>
</p>
<p>Max changes the subject, sensing Emily's resolve. She exhales, relieved. She has no interest in looking back. David is her future - and nothing is going to change that. The strip game is over for her.</p>
[[Go home|D4 Card Finish Home]]/* Original: Card Game Round end + Sarah nude.txt */
<<set $day4.cardDone to true>>
<<set $world.location to "Christine's - living room">>
/* Gallery: Last Hand — Sarah loses the party strip game */
<<run setup.Phone.unlockWallpaper("last_hand")>>
<<if not $day4.cardCorrSarah>>
<<set $day4.cardCorrSarah to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<p>Sarah slowly unbuttons the last of her clothes, revealing her bare skin inch by inch. She tosses it aside, leaving herself completely nude under the party lights.</p>
<img src="Images/Chapter 1/54.gif">
<p>
<npc>Jamal:</npc> Nice.
</p>
<p>Jamal's voice is husky. Sarah watches, eyes narrowing thoughtfully.</p>
<p>
<Sarah> You know, I've always wondered what it'd be like to have more than one person at once.</Sarah>
</p>
<p>Max raises an eyebrow.</p>
<p>
<Max> Oh, really? And what makes you think tonight's the night?</Max>
</p>
<p>Emily sits back down, eyes gleaming with excitement.</p>
<p>
<e>I'm game if Sarah is.</e>
</p>
<p>Jamal looks at Sarah, green eyes intense.</p>
<p>
<npc>Jamal:</npc> And what do you say, Sarah?
</p>
<p>Sarah takes a deep breath, cheeks flushing.</p>
<p>
<Sarah> I say let's make it a threesome.</Sarah>
</p>
<p>Max and Jamal exchange a look, grinning.</p>
<p>
<Max> Game on.</Max>
</p>
<p>Max stands to join Sarah. Emily watches as Sarah and Max begin to explore each other, hands roaming. Jamal moves behind Sarah, palms sliding over her curves.</p>
<img src="Images/Chapter 1/58.gif">
[[Continue|D4 Card Sarah Threesome]]/* Original: N10P2 */
<<set $world.location to "Christine's - living room">>
<p>Jamal and Max exchange a glance - a silent understanding. Sarah frees their cocks and takes them into her mouth one by one, lips wet and eager.</p>
<p>Jamal lays down on the couch, body propped on pillows. Sarah climbs on top of him, eyes locked on his. She reaches down, hand wrapping around his cock, eyes widening as she feels how hard he is.</p>
<img src="Images/Chapter 1/60.gif">
<p>
<Sarah> Wow... you're so big, Jamal.</Sarah>
</p>
<p>Jamal smirks, desire thick in his voice.</p>
<p>
<npc>Jamal:</npc> You like that, Sarah? You like how big I am?
</p>
<p>Sarah nods, excitement bright in her face.</p>
<p>
<Sarah> Yes. I like it. I want to feel you inside me.</Sarah>
</p>
<img src="Images/Chapter 1/61.gif">
<p>Max kneels in front of her, placing his cock against Sarah's lips.</p>
<img src="Images/Chapter 1/62.gif">
[[Continue|D4 Card Sarah Threesome 2]]/* Original: N10P3 */
<<set $world.location to "Christine's - living room">>
<<if not $day4.cardCorrSarahSex>>
<<set $day4.cardCorrSarahSex to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<p>
<Max> You want this, Sarah? You want me to fuck you while Jamal's inside you?</Max>
</p>
<p>Sarah nods, nervousness and excitement tangled together.</p>
<p>
<Sarah> Yes. I want that. I want both of you inside me.</Sarah>
</p>
<p>Max positions himself behind her, cock pressing against her ass. He pushes in slowly, eyes locked on hers. Sarah gasps, body arching as she feels him fill her, hands gripping Jamal's chest while she struggles to adjust.</p>
<img src="Images/Chapter 1/64.gif">
<p>Jamal and Max pick up the pace, bodies moving harder, faster. Sarah's moans grow louder. She trembles as both of them fill her completely.</p>
<img src="Images/Chapter 1/63.gif">
<p>
<npc>Jamal:</npc> I'm close... I'm so close, Sarah.
</p>
<p>
<Max> Me too.</Max>
</p>
<img src="Images/Chapter 1/65.gif">
<img src="Images/Chapter 1/66.gif">
<p>Sarah's body convulses as they both come, tense with pleasure. They collapse onto the couch, slick with sweat, breaths ragged.</p>
<p>Sarah looks up at them, a soft smile on her lips.</p>
<p>
<Sarah> Wow... that was... incredible.</Sarah>
</p>
<p>Emily leans back in her chair, a soft smile of her own.</p>
<p>
<e>Well, that was quite the show. You three were amazing.</e>
</p>
<p>Sarah blushes, a soft laugh escaping.</p>
<p>
<Sarah> Thanks, Emily. It was quite the experience.</Sarah>
</p>
<p>The room hums with conversation and the thick scent of sex. The game is forgotten. The night keeps the memory of what they just shared.</p>
[[Go home|D4 Card Finish Home]]/* Original: Card Game Round end + Jamal nude.txt */
<<set $day4.cardDone to true>>
<<set $world.location to "Christine's - living room">>
<<if not $day4.cardCorrJamal>>
<<set $day4.cardCorrJamal to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<p>They watch as Jamal removes his boxers, revealing his large, thick cock. Sarah cannot tear her eyes away. Shock and arousal fight across her face; her body answers before her mouth does.</p>
<img src="Images/Chapter 1/55.gif">
<p>
<Sarah> Jamal, that's... impressive.</Sarah>
</p>
<p>Her face flushes, but she does not look away. She stands and walks over to him, eyes locked on his cock. She can feel the heat radiating off him - the pulse of desire in his neck.</p>
<p>
<Sarah> Mind if I get a closer look?</Sarah>
</p>
<img src="Images/Chapter 1/67.gif">
<p>Sarah reaches out, hand trembling slightly as she wraps her fingers around his shaft. Jamal lets out a low groan, hips bucking. A surge of power hits her - she is the one affecting him. She strokes him firmly, up and down his length.</p>
<img src="Images/Chapter 1/68.gif">
<p>Emily and Max watch, their own arousal growing at Sarah's confident touch - the desire in her eyes, the short gasps of her breath.</p>
<p>
<Sarah> You like that, don't you?</Sarah>
</p>
<p>Innocence and boldness braid in her voice.</p>
<p>
<npc>Jamal:</npc> Fuck yes.
</p>
<p>A low growl. Sarah drops to her knees, eyes never leaving his cock. She leans in, tongue darting out to lick the tip. Jamal hisses, hips jerking. She smiles, takes him into her mouth, lips wrapping around his thick shaft.</p>
<img src="Images/Chapter 1/69.gif">
[[Continue|D4 Card Jamal Sex]]/* Original: N10P */
<<set $world.location to "Christine's - living room">>
<<if not $day4.cardCorrJamalSex>>
<<set $day4.cardCorrJamalSex to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<p>Emily nods in agreement, eyes fixed on the scene. Sarah begins to suck properly - head bobbing, taking more of him. Jamal groans, hands going to her head, guiding her movements.</p>
<img src="Images/Chapter 1/70.gif">
<p>
<npc>Jamal:</npc> That's it, baby... take it all.
</p>
<p>
<Sarah> I want you to fuck me.</Sarah>
</p>
<p>Determination fills her voice. He nods, positions himself at her entrance, and pushes inside slowly. Her tight heat envelops him. Sarah moans low, nails digging into his shoulders.</p>
<img src="Images/Chapter 1/71.gif">
<p>He begins to move, hips thrusting. Sarah matches him, body moving in time. The table creaks beneath them; the sound of their bodies meeting fills the room under the party music.</p>
<img src="Images/Chapter 1/72.gif">
<p>
<Sarah> Harder... fuck me harder, Jamal.</Sarah>
</p>
<p>Nails dig into his back. He can feel her tightening, trembling. He reaches between them and finds her clit, rubbing in time with his thrusts - and sends her over the edge.</p>
<img src="Images/Chapter 1/74.gif">
<p>
<Sarah> Oh God, oh God, oh God-</Sarah>
</p>
<p>Sarah cries out, body convulsing as the orgasm washes through her. Jamal groans at how she clamps around him. He thrusts a few more times, then pulls out, cock pulsing as he comes - hot cum spilling onto her stomach.</p>
<img src="Images/Chapter 1/75.gif">
<p>Emily sits through the quiet after, heart loud, the strip game long forgotten. When the two of them catch their breath, she gathers her clothes and leaves while the night is still spinning for everyone else.</p>
[[Go home|D4 Card Finish Home]]/* Original: Card Game Round end + Max.txt */
<<set $day4.cardDone to true>>
<<set $world.location to "Christine's - living room">>
<<if not $day4.cardCorrMax>>
<<set $day4.cardCorrMax to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<p>As the game continues, Max loses more rounds until he is down to nothing - body on full display for the two girls and Jamal. Sarah's breaths come faster, eyes flickering between him and Jamal.</p>
<img src="Images/Chapter 1/56.gif">
<p>Jamal, seeing an opportunity, leans in closer to Sarah.</p>
<p>
<npc>Jamal:</npc> You know, Max hasn't seen what he's missing yet.
</p>
<p>His hand rests on Sarah's thigh. Sarah bites her lip, looking at Max, voice breathy.</p>
<p>
<Sarah> Is that so? Maybe we should show him.</Sarah>
</p>
<p>Max watches them exchange a look - a silent agreement. Anticipation thrills through him; his body is already answering.</p>
<p>
<npc>Jamal:</npc> One more thing - he never licked a pussy.
</p>
<p>
<Sarah> Come on, Max. Let's try it today.</Sarah>
</p>
<p>Sarah removes her panties and gives him a full picture of her wet pussy.</p>
<img src="Images/Chapter 1/76.gif">
<p>
<Sarah> Max...</Sarah>
</p>
<p>Desire thickens her voice. He looks up at her, eyes dark with lust.</p>
<p>
<Max> Yes, Sarah?</Max>
</p>
<p>
<Sarah> Please... please, I need you to taste me.</Sarah>
</p>
<p>Her hands fist in his hair. Max smiles wickedly; his tongue darts out to lick her folds. Sarah cries out, back arching. He licks her slowly, savoring her, teasing her clit with the tip of his tongue.</p>
<img src="Images/Chapter 1/77.gif">
<p>Max slides two fingers into her, curling them to hit the right spot. Sarah gasps, muscles clenching around him. He sucks her clit into his mouth, flicks it with his tongue. Her moans grow louder; her body tenses.</p>
<p>
<Sarah> Max, I'm close... please, don't stop.</Sarah>
</p>
<p>He increases the pace - fingers and tongue in sync. Sarah's orgasm hits like a wave; her body convulses as she comes. Max wraps his arms around her, holding her through it.</p>
<img src="Images/Chapter 1/78.gif">
<p>As she comes down, Max slides up beside her, cock hard and ready.</p>
<p>
<Max> That was incredible.</Max>
</p>
<p>His lips find hers. Sarah smiles, eyes heavy with satisfaction.</p>
<p>
<Sarah> It was. But I'm not done with you yet. Follow me to the bedroom.</Sarah>
</p>
<p>Max follows her, already sure the rest of the night will be adventurous. Emily does not. The strip game is finished - she grabs her things and leaves the party while she still can.</p>
[[Go home|D4 Card Finish Home]]/* Strip game complete → straight home (no replaying party for corruption) */
<<set $day4.cardDone to true>>
<<set $day4.partyDone to true>>
<<set $day4.partyHub to false>>
<<set $world.time to "Night">>
<<set $day4.homeEve to true>>
<p>Emily slips out of Christine's house, dress half-fixed, head spinning. The strip game is over - home is the only place left that makes sense.</p>
<<goto "D4 After Party">><<set $world.location to "Christine's - kitchen">>
<img src="Images/Chapter 1/48.jpg">
<p>The kitchen buzzes - mixed drinks, sticky counters, laughter leaking from the hall.</p>
<<if not $day4.kitchenDrink>>
<p>David is behind the counter, mixing like he owns the night.</p>
<p>
<david>Hey, here comes our party girl! You've gotta try this.</david>
</p>
<img src="Images/Chapter 1/49.webp">
<p>He slides a glass toward her, grin playful.</p>
<<if $day4.searchDrill and not $day4.holeMade>>
<p>She remembers Sarah's insane plan. A drill might be hiding in a cabinet...</p>
[[Search for a drill|D4 Party Find Drill]]
<</if>>
[[Meet David - take a drink|D4 Kitchen Drink1]]
<<else>>
<p>David is still holding court with bottles. The counter is a war zone of citrus and ice. Her buzz is <<= $day4.drunk>>/5 from kitchen rounds.</p>
<<if $day4.searchDrill and not $day4.holeMade>>
<p>She remembers Sarah's insane plan. A drill might be hiding in a cabinet...</p>
[[Search for a drill|D4 Party Find Drill]]
<</if>>
<<if not $day4.kitchenBingeDone and $day4.drunk lt 5>>
<p>
<david>Back for more? Careful - you're smiling like trouble.</david>
</p>
[[Drink with David again|D4 Kitchen Drink1]]
<<elseif $day4.kitchenBingeDone or $day4.drunk gte 5>>
<p>David waves her off the bottles with a laugh - she's had enough of the kitchen for one night.</p>
<</if>>
<</if>>
[[Hall|D4 Party Hub]]
/* Drink chain (original: Drink1 → Drink2 → Kitchen_Drunk sets drunk=5) */<<if $day4.kitchenBingeDone or $day4.drunk gte 5>>
<<goto "D4 Party Kitchen">>
<</if>>
<<set $day4.kitchenDrink to true>>
<<if $day4.drunk lt 1>>
<<set $day4.drunk to 1>>
<<toast "Drunk 1">>
<</if>>
<<set $world.location to "Christine's - kitchen">>
<p>Emily takes a sip. The alcohol warms her instantly. David watches her reaction, chuckling.</p>
<p>
<david>Not bad, right? How about another?</david>
</p>
[[Take another drink|D4 Kitchen Drink2]]
[[Refuse and go back to the hall|D4 Party Hub]]<<if $day4.kitchenBingeDone or $day4.drunk gte 5>>
<<goto "D4 Party Kitchen">>
<</if>>
<<if $day4.drunk lt 2>>
<<set $day4.drunk to 2>>
<<toast "Drunk 2">>
<</if>>
<<set $world.location to "Christine's - kitchen">>
<p>Emily downs the second drink, a pleasant buzz blooming behind her eyes. David leans in, already pouring another.</p>
<p>
<david>Come on, one more won't hurt.</david>
</p>
[[Drink more|D4 Kitchen Drunk]]
[[Slow down - hall|D4 Party Hub]]<<if $day4.kitchenBingeDone>>
<<goto "D4 Party Kitchen">>
<</if>>
<<set $day4.drunk to 5>>
<<set $day4.kitchenDrink to true>>
<<set $day4.kitchenBingeDone to true>>
<<set $world.location to "Christine's - kitchen">>
<p>The warmth spreads through Emily's body as she keeps drinking. Her laughter grows louder. The room spins slightly - she does not care.</p>
<p>
<e>David... I think I need... more!</e>
</p>
<p>
<david>Whoa, slow down. If you want more, I have some in my car outside.</david>
</p>
<p class="hub-hint"><em>Drunk 5 - living-room games and outside cars unlock. Roof is open.</em></p>
<<toast "Drunk 5 · party fully open">>
[[Hall|D4 Party Hub]]
[[Outside to the cars|D4 Party Exit]]<<if $day4.holeMade>>
<<goto "D4 Party Kitchen">>
<</if>>
<<set $day4.holeMade to true>>
<p>Emily searches the kitchen and finds a drill tucked in a cabinet - ridiculous and perfect.</p>
<p>
<e>Got it. Time to head back to the washroom.</e>
</p>
[[Hall|D4 Party Hub]]<<set $world.location to "Christine's - bathroom">>
<<if $day4.gloryEvent>>
/* Already did glory scene (BJ or refuse) - no replay of that, but drunk can still peek others */
<<if $day4.drunkMode>>
<p>The stall still smells like sex and cheap perfume. Muffled sounds start up again on the other side of the wall - looks like someone else found the hole.</p>
[[Peek again|D4 Party Toilet Glory]]
[[Hall|D4 Party Hub]]
<<else>>
<p>The stall still smells like sex and cheap perfume. Whatever happened at the hole is done for tonight.</p>
[[Hall|D4 Party Hub]]
<</if>>
<<elseif $day4.gloryhole>>
<<goto "D4 Party Toilet Glory">>
<<elseif $day4.holeMade>>
<<if $day4.gloryDrilled>>
<p>The hole is already drilled. Sarah is bouncing on her heels.</p>
[[Use the gloryhole|D4 Party Toilet Glory]]
[[Hall|D4 Party Hub]]
<<else>>
<p>Emily and Sarah stand at the stall wall, drill in hand.</p>
<p>
<Sarah> Alright. Moment of truth!</Sarah>
</p>
<p>Emily powers the drill. Wood screams. A small hole opens - crude, stupid, thrilling.</p>
<img src="Images/Chapter 1/47.jpg">
<p>
<e>And... done. Hope Christine never finds out.</e>
</p>
<p>
<Sarah> Or maybe she will, and it'll be hilarious!</Sarah>
</p>
<p>They high-five and step back. The hole waits for someone bold - or stupid.</p>
<<set $day4.gloryhole to true>>
<<set $day4.gloryDrilled to true>>
<<set $day4.searchDrill to false>>
[[Use the gloryhole|D4 Party Toilet Glory]]
[[Hall|D4 Party Hub]]
<</if>>
<<elseif not $day4.searchDrill>>
<p>Sarah is already at the sink, mischievous grin locked and loaded.</p>
<p>
<Sarah> Hey Emily, I've got a crazy idea.</Sarah>
</p>
<p>
<e>Oh no. Should I be scared?</e>
</p>
<p>
<Sarah> We should totally make a hole in the toilet stall. Classic gloryhole. Christine will freak!</Sarah>
</p>
<p>
<e>Are you insane? This is her house!</e>
</p>
<p>
<Sarah> Nah. Her mom will love it.</Sarah>
</p>
<p>They both burst out laughing - and somehow, with alcohol in her blood, Emily nods.</p>
<<set $day4.searchDrill to true>>
<p>First they need a drill. Kitchen cabinets, probably.</p>
[[Find the drill|D4 Party Hub]]
<<else>>
<p>The bathroom waits. Sarah already scouted the stall. Still need that drill from the kitchen.</p>
[[Hall|D4 Party Hub]]
<</if>><<set $world.location to "Christine's - bathroom">>
<p>Emily steps into the washroom. From a stall: the unmistakable sound of slurping and soft moans.</p>
[[Peek|D4 Glory Peek]]
[[Leave|D4 Party Hub]]<<if $day4.gloryEvent>>
<p>Another girl is already enjoying the gloryhole - wet sounds, a thick cock through the wood, her throat working.</p>
<img src="Images/Day 5/gh8.gif">
[[Leave|D4 Party Hub]]
<<elseif not $day4.gloryhole or not $day4.gloryDrilled>>
/* Must have helped drill first */
<<goto "D4 Party Toilet">>
<<else>>
<<set $world.location to "Christine's - bathroom stall">>
<p>Emily peeks through the slightly open door.</p>
<p>Sarah - petite, wicked - is on her knees at the gloryhole. Her head bobs, lips stretched around a thick, hard cock sliding through the hole. Spit shines on her chin.</p>
<img src="Images/Day 5/gh_sarah.gif">
<p>
<Sarah> Like what you see?</Sarah>
</p>
<p>Her voice is thick with arousal. Sultry eyes lock on Emily.</p>
<p>Emily swallows hard. Cheeks burn.</p>
<p>
<e>Y-Yes...</e>
</p>
<p>Sarah's smile goes wicked. She takes Emily's hand and places it on the back of her own head, guiding fingers into soft hair.</p>
<img src="Images/2.3/10.jpg">
<p>
<Sarah> Good girl. Now push me down. Help me deepthroat this cock. Force it until I gag for you.</Sarah>
</p>
<p>Emily's pulse races. Heat floods between her thighs. Her grip tightens in Sarah's hair - dirty, electric.</p>
[[Next|D4 Glory Share]]
<</if>><<if $day4.gloryEvent>>
<<goto "D4 Party Toilet Glory">>
<</if>>
<<set $world.location to "Christine's - bathroom stall">>
<p>Sarah returns to the cock, taking it deep. Emily watches - wet sounds, throat stretch, the stranger on the other side groaning.</p>
<img src="Images/Day 5/gh3.gif">
<p>
<Sarah> Your turn.</Sarah>
</p>
<p>Sarah pulls back and gestures at the spit-slick cock thrusting through the hole.</p>
<<if $day4.drunkMode>>
<<link '<span class="story-choice">Suck the dick</span>' "D4 Glory BJ">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Suck the dick</span><span class="loc-sub">You are not corrupted enough... or maybe some drinks can make you</span></span>
<</if>>
[[Refuse|D4 Glory Refuse]]/* One-shot only: helped drill gloryhole + suck. David NTR only if this path + NTR on. */
<<if $day4.gloryEvent>>
<<goto "D4 Party Toilet Glory">>
<</if>>
<<set $day4.gloryEvent to true>>
<<set $day4.gloryBJ to true>>
<<set $flags.glory_event to true>>
<<set $flags.blowjob to (Number($flags.blowjob) || 0) + 1>>
<<if not $day4.gloryCorrBJ>>
<<set $day4.gloryCorrBJ to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1 · Gloryhole BJ">>
<</if>>
/* David only gets the morning photos if she made the hole and sucked (gloryBJ) while NTR is on */
<<if $ntr or $ntr_david>>
<<set $flags.pending_glory_ntr to true>>
<</if>>
<<set $world.location to "Christine's - bathroom stall">>
<p>Emily kneels, heart hammering. She licks the tip - salty pre-cum - and the man on the other side groans hard.</p>
<img src="Images/Day 5/gh4.gif">
<p>She and Sarah work together - mouths, tongues, shared spit on a stranger's cock. He swells, breath ragged. Emily feels him throb against her tongue.</p>
<p>Then he cums - hot, thick ropes flooding both their mouths. They swallow, eyes locked on each other, faces messy and shining.</p>
<img src="Images/Day 5/gh5.gif">
<p>Sarah and Emily smile, bodies pressed close as they wipe cum from each other's lips with tissues like this is a joke and a secret at once.</p>
<p>
<et>I just sucked a stranger through a wall. At my own farewell party.</et>
</p>
[[Hall|D4 Party Hub]]<<if $day4.gloryEvent>>
<<goto "D4 Party Toilet Glory">>
<</if>>
<<set $day4.gloryEvent to true>>
<<set $day4.gloryBJ to false>>
<<set $flags.glory_event to true>>
/* Refuse: no BJ → David does NOT get the glory NTR photos */
<<set $flags.pending_glory_ntr to false>>
<<if not $day4.gloryCorrRefuse>>
<<set $day4.gloryCorrRefuse to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<<set $world.location to "Christine's - bathroom stall">>
<p>
<e>I'm sorry... I'm not ready for that.</e>
</p>
<p>
<Sarah> As you wish.</Sarah>
</p>
<p>Sarah goes back to work - the best blowjob of her life for a complete stranger. Wet, deep, relentless.</p>
<img src="Images/Day 5/gh7.gif">
<p>The cock explodes, filling her mouth with hot cum.</p>
<img src="Images/Day 5/gh6.gif">
<p>Emily stands, legs weak, and decides to leave before the image burns deeper.</p>
[[Hall|D4 Party Hub]]<<set $world.location to "Christine's - bedroom">>
<img src="Images/Day 5/09.gif">
<<if $day4.peekElla>>
<p>
<et>Isn't she James's girlfriend? Damn. What an evil world we live in.</et>
</p>
<<else>>
<p>
<et>Someone's girlfriend is having a very public private moment. College is a disease.</et>
</p>
<</if>>
<<if $day4.drunkMode>>
[[Slip a hand under your dress|D4 Party Drunk Play]]
<</if>>
[[Hall|D4 Party Hub]]<<set $world.location to "Christine's - bedroom 2">>
<img src="Images/Day 5/09.gif">
<p>
<et>Another couple. Swapping? Or just lost. Either way - door, close, walk.</et>
</p>
<<if $day4.drunkMode>>
[[Slip a hand under your dress|D4 Party Drunk Play]]
<</if>>
[[Hall|D4 Party Hub]]<<if $day4.drunkPlay>>
<p>Her body still hums from earlier. She leaves the door - and her hands - alone this time.</p>
<<else>>
<<set $day4.drunkPlay to true>>
<p>The noise, the heat, the drink still warm in her blood - it all presses in at once. She leans back against the door, hikes her dress, and lets her fingers do what David hasn't gotten around to tonight.</p>
<img src="Images/Hometown/party_mast.gif">
<p>
<et>God, I needed that. Nobody has to know.</et>
</p>
<</if>>
[[Hall|D4 Party Hub]]<<if $day4.drunk lt 1>>
<<goto "D4 Party Hub">>
<</if>>
<<set $world.location to "Christine's - roof">>
<<set $day4.roofDone to true>>
<p>Under the cool night sky, Emily steps onto the roof. Party music becomes a distant thump. Breeze in her hair. Stars hard and quiet.</p>
<img src="Images/Day 5/sky.jpeg">
<p>She wraps her arms around herself.</p>
<p>
<e>I wonder if you're looking at the same stars, Mom...</e>
</p>
<p>On a folded blanket she opens her bag. Mom's diary waits like a relic. Pages of longing, mystery, adventure. She doesn't open it - just rests a hand on the cover, letting the weight of it sit with her for a moment.</p>
<p>
<e>Whatever you were looking for... I'm going to find it. I promise.</e>
</p>
<<if $day4.drunkMode>>
[[Stay on the roof|D4 Roof David Drunk]]
<<else>>
[[Stay on the roof|D4 Roof David]]
<</if>>
[[Back to the party|D4 Party Hub]]<<set $world.location to "Christine's - roof">>
<p>A little while later, the rooftop door creaks open. Emily turns - David steps out holding two mugs of hot chocolate.</p>
<p>
<david>There you are. Thought you'd disappeared on me.</david>
</p>
<p>
<e>Just needed some air. Couldn't resist the stars.</e>
</p>
<p>She takes a mug. He sits beside her, shoulder brushing hers, and looks up.</p>
<p>
<david>They're crazy beautiful tonight.</david>
</p>
<p>
<e>Yeah... makes you feel like everything's still out there. Like the world's still full of answers.</e>
</p>
<p>Silence. Hands find each other. Fingers intertwined on her lap.</p>
<p>
<david>You nervous about Portugal?</david>
</p>
<p>
<e>A little. Excited, mostly. Scared of what I'll find... or what I won't.</e>
</p>
<p>He squeezes her hand.</p>
<p>
<david>You'll find what you're meant to. You always do.</david>
</p>
<p>She leans into him, head on his shoulder. Childhood stories. College jokes. Wild dreams. Laughter soft under the stars.</p>
<p>He turns. She meets him halfway. Their lips touch - slow, warm, full of everything unspoken.</p>
<img src="Images/Day 5/kiss.gif">
<p>They kiss again, and again... until the stars blur and the world fades. Heads rest side by side, fingers still linked. Sleep claims them quietly under the night sky.</p>
<<set $day4.roofSlept to true>>
<<set $day4.partyDone to true>>
<<set $day4.partyHub to false>>
<<set $world.time to "Night">>
<<toast "Slept on the roof">>
<<run setup.Phone.refreshNotes()>>
[[...|Day 5 Morning]]<<set $world.location to "Christine's - roof">>
<p>The rooftop door creaks. David steps out, spotting the flush in her cheeks before he even says hello.</p>
<p>
<david>There you are. You look... a lot more fun than an hour ago.</david>
</p>
<p>
<e>Come here.</e>
</p>
<p>She pulls him down onto the blanket before he can answer, mouth already on his. The alcohol makes her bold - reckless, even. Clothes come loose between clumsy laughs and grasping hands.</p>
<img src="Images/Day 5/kiss.gif">
<p>Her fingers find his belt, working it open with more confidence than caution. He hisses through his teeth as she frees him, already hard in the cool night air.</p>
<p>
<david>Emily... out here? Someone could-</david>
</p>
<p>
<e>Then be quiet.</e>
</p>
<p>She sinks down between his knees before he can argue, tongue dragging slow up the underside of his cock.</p>
<img src="Images/Hometown/roof_bj.gif">
<p>He swears under his breath, hand tangling in her hair, hips twitching helplessly with every bob of her head. The rooftop, the party noise below, the stars - all of it fades to the wet sounds of her mouth working him and his ragged breathing above her.</p>
[[Next|D4 Roof David Drunk Sex]]<<set $world.location to "Christine's - roof">>
<p>She pulls off him, lips shining, and climbs into his lap instead - done waiting.</p>
<p>
<e>I need you inside me. Now.</e>
</p>
<p>He doesn't argue this time. She sinks down onto him with a shaky gasp, finally - finally - getting what she's chased all night. For a few seconds it's perfect: his hands gripping her hips, her forehead against his, both of them moving together under the stars.</p>
<p>Then his whole body goes rigid.</p>
<p>
<david>Fuck... Emily, I-</david>
</p>
<img src="Images/Hometown/early_cum.gif">
<p>It's over almost before it started. He groans, shudders, and goes still beneath her - breathless, spent, and mortified.</p>
<p>
<david>Shit. I'm sorry. I don't know why this keeps happening with you.</david>
</p>
<p>
<et>Of course. Again.</et>
</p>
<p>She stays there a moment, still full of him, still nowhere close to satisfied. The frustration curls low in her stomach - hot, unresolved, familiar.</p>
[[Next|D4 Roof David Drunk Head]]<<set $world.location to "Christine's - roof">>
<p>David catches her expression and winces, guilt cutting through the buzz of alcohol.</p>
<p>
<david>Let me... let me make it up to you.</david>
</p>
<p>Before she can answer, he's easing her back onto the blanket, kissing a slow line down her stomach until his mouth settles between her thighs.</p>
<img src="Images/Hometown/head.gif">
<p>Whatever he lacks in staying power, he makes up for here - tongue patient and deliberate, exactly where she needs it. Emily's fingers curl into his hair, back arching off the blanket as the tension finally, finally breaks.</p>
<p>
<e>Oh god... yes, right there...</e>
</p>
<p>She comes hard, muffling herself against her own wrist, thighs trembling around his head. David surfaces after, smug despite himself, and collapses beside her.</p>
<p>
<david>Better?</david>
</p>
<p>
<e>...Yeah. Much better.</e>
</p>
<p>They lie tangled together under the stars, breathing slowing, until sleep takes them both.</p>
<<set $day4.roofSlept to true>>
<<set $day4.partyDone to true>>
<<set $day4.partyHub to false>>
<<set $world.time to "Night">>
<<toast "Slept on the roof">>
<<run setup.Phone.refreshNotes()>>
[[...|Day 5 Morning]]<<if $day4.drunk lt 5>>
<<goto "D4 Party Hub">>
<</if>>
<<set $world.location to "Outside Christine's">>
<<if $day4.carSceneDone>>
<p>Outside is quieter now. The couple's car is gone. She already took that risk once tonight.</p>
[[Hall|D4 Party Hub]]
<<else>>
<p>Cool night air hits after the warm house. She walks to David's car and opens the trunk for another bottle - then freezes.</p>
<img src="Images/Chapter 1/50.gif">
<p>In the car next to them, a couple is clearly making out in the back seat - hands, mouths, no shame. Heat flares between her legs.</p>
<img src="Images/Chapter 1/51.gif">
<p>
<et>Wow... that's... something.</et>
</p>
<p>She takes a swig from the bottle, eyes never leaving them. The ache builds. She sets the bottle down and slides a hand under her skirt, fingers finding wet heat.</p>
<img src="Images/Chapter 1/52.gif">
<<set $day4.carSceneDone to true>>
<<set $day4.drunk to Math.max(Number($day4.drunk) || 0, 6)>>
<<set $day4.drunkMode to true>>
<<run setup.bigFade("You are completely drunk")>>
<<toast "Drunk 6/6">>
<p>Breath shaky, she fixes her clothes and heads back inside before someone sees - or before she does something worse.</p>
[[Hall|D4 Party Hub]]
<</if>><<set $world.location to "Home">>
<<set $world.time to "Night">>
<<set $day4.homeEve to true>>
<<set $day4.partyDone to true>>
<<set $day4.partyHub to false>>
<<run setup.Phone.refreshNotes()>>
<p>Home. Shoes off. Dress on the chair. Cake sugar and alcohol still ghosting her tongue. The house is quiet enough to hear her own future.</p>
<p>
<e>I'm really doing this...</e>
</p>
[[Go to bed|D4 Sleep]]
[[Home map|D4 Home Map]]<<set $world.time to "Night">>
<<set $world.location to "Home - Emily's room">>
/*
Farewell party is REQUIRED before Portugal / Day 5.
Do not force partyDone here — only real party endings set it.
*/
<<if not $day4.partyDone>>
<p>Emily lies back. Ceiling and streetlight stripes. Tomorrow wants a flight - but her chest is tight with unfinished goodbyes.</p>
<p>
<et>I never went to Christine's. Sarah and the others... I can't board a plane like the farewell never happened.</et>
</p>
<p>Sleep comes anyway. Morning will put her back on the same day until she shows up for the party.</p>
[[...|D4 Soft Reset]]
<<else>>
<<set $flags.day4_done to true>>
<p>Emily lies back. Ceiling and streetlight stripes. Cake sugar still ghosting her tongue. Tomorrow will want packing, goodbyes that are not finished<<if $day4.sawDavid>>, a date she promised David<</if>>, and a plane that does not care about fear.</p>
<p>
<et>They threw me a party for a research lie. Mom's truth is still waiting in Portugal.</et>
</p>
<p>She closes her eyes. Sleep takes her.</p>
[[...|Day 5 Morning]]
<</if>>/* Loop Day 4 until farewell party is finished — keep story progress */
<<set $day4.shower to false>>
<<set $day4.dressed to false>>
<<set $day4.breakfast to false>>
<<set $day4.leftHome to false>>
<<set $day4.classDone to false>>
<<set $day4.leftCollege to false>>
<<set $day4.homeEve to false>>
/* KEEP friendsTalk, cafeteria, toilet, mall, partyReady, sawDavid, partyDone (false) */
<<set $day3.cafeShiftsToday to 0>>
<<set $day3.workedCafe to false>>
<<set $world.day to 4>>
<<set $world.time to "Morning">>
<<set $world.location to "Home - Emily's room">>
<<set $player.energy to 90>>
<<if def $phone>>
<<set $phone.browserPornDay to -1>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<<goto "Day 4 Morning">>/* Safety: farewell party required before flight / Portugal */
<<if not $day4 or not $day4.partyDone>>
<<goto "D4 Soft Reset">>
<</if>>
<<set $world.day to 5>>
<<set $world.time to "Morning">>
<<set $player.energy to 90>>
<<set $flags.day4_done to true>>
<<if $day4>><<set $day4.drunkMode to false>><</if>>
<<if ndef $day5>>
<<set $day5 to {
packed : false,
saidByeDavid : false,
flightDone : false,
arrived : false,
showered : false,
doorLocked : true,
jackSaw : false,
napDone : false,
uncleOk : false,
forestDone : false,
drank : false,
bathPeek : false,
kitchenDone : false,
dayDone : false,
cafeVisited : false,
cafeJobAsked : false,
cafeExperience : false,
parkVisit : false,
mallVisit : false,
hornyMode : false,
hornyCafeDone : false,
hornyMallDone : false,
hornyParkDone : false
}>>
<</if>>
<<run setup.Phone.refreshNotes()>>
/* David only if Emily helped make the gloryhole AND sucked (gloryBJ) + NTR on */
<<if $day4.gloryBJ and $day4.gloryDrilled and ($ntr or $ntr_david) and not $flags.david_glory_ntr>>
<<goto "D5 David Glory NTR">>
<<elseif $day4.roofSlept>>
<<goto "D5 Roof Wake">>
<<else>>
<<goto "D5 Morning Home">>
<</if>><<set $world.day to 5>>
<<set $world.time to "Morning">>
<<set $world.location to "Christine's - roof">>
<<set $player.energy to 90>>
<p>Emily stirs as early sun kisses her face. The rooftop is quiet. Air crisp.</p>
<p>
<e>Oh god... we fell asleep up here?</e>
</p>
<p>She sits up carefully - and realizes with a tiny gasp she is not fully dressed, just bra and pants, party dress somewhere in a tangle.</p>
<p>
<e>Shit, shit, my flight...</e>
</p>
<p>She slips clothes back on as best she can, gives David one last soft glance while he still sleeps, and tiptoes toward the roof door.</p>
[[Home|D5 Morning Home]]<<set $world.day to 5>>
<<set $world.time to "Morning">>
<<set $world.location to "Home - Emily's room">>
<<set $player.energy to 90>>
<<run setup.Phone.refreshNotes()>>
<img src="Images/Chapter 1/sleep2.webp">
<<if $day4.roofSlept>>
<p>Back home just long enough to splash water on her face. Portugal is no longer a plan - it is a clock.</p>
<<else>>
<p>Morning again. Bags. Ticket. The edge of a different country.</p>
<p>
<e>Portugal... I'm really going.</e>
</p>
<</if>>
<<if $day2.diaryRead or $day2.diaryFound>>
<p>
<et>Mom's diary. A missing page. Whatever waited for her is waiting for me.</et>
</p>
<</if>>
<<if $day4.sawDavid and not $day5.saidByeDavid>>
<p class="hub-hint"><em>You promised David a date. There may not be time - but you can still say something.</em></p>
[[Text David goodbye|D5 Text David]]
<</if>>
<<link '<span class="story-choice">Pack and find Dad</span>' "D5 Pack">><</link>><<set $day5.saidByeDavid to true>>
<<set $day4.dateDone to true>>
<<set $world.location to "Home - Emily's room">>
<<run setup.Phone.refreshNotes()>>
<p>Emily thumbs open Messages. David is still a green dot - or was, last night. She types, deletes, types again.</p>
<p>
<e>Hey. About today... my flight is this morning. I can't do the date. I'm sorry. I'll message when I land.</e>
</p>
<p>Three dots. Then:</p>
<p>
<david>It's ok. Fly safe. Text me from Portugal. Miss you already.</david>
</p>
<<toast "Told David about the flight">>
[[Pack and find Dad|D5 Pack]]<<set $day5.packed to true>>
<<set $world.location to "Home - kitchen">>
<<set $world.time to "Morning">>
<p>Downstairs, Dad is in the kitchen, coffee in hand, worry sitting plain on his face. As soon as he sees her, his eyes widen - then soften.</p>
<<if $day4.roofSlept>>
<p>
<e>Dad... I'm so sorry, I didn't mean to fall asleep out-</e>
</p>
<p>Before she can finish, he shakes his head with a faint smile and stands.</p>
<<else>>
<p>
<e>I'm ready. Or... as ready as I'm going to be.</e>
</p>
<</if>>
<p>
<father>You're safe. That's what matters. Now go grab your bag - we've got a flight to catch.</father>
</p>
<p>She nods, runs to her room, snatches her things. Passport. Chargers. Diary. Within minutes she is back downstairs, breathless.</p>
<p>
<e>I've got everything. Let's go.</e>
</p>
[[To the airport|D5 Airport]]<<set $world.location to "Airport">>
<<set $world.time to "Morning">>
<p>They step outside. The car is already waiting. The drive is quiet but comforting - city peeling away into terminal signs and concrete sky.</p>
<p>As they near the drop-off lane, Emily looks at her father.</p>
<p>
<e>Thank you for always believing in me.</e>
</p>
<p>
<father>Take care. Call when you land. And Emily - come home when you're ready. Not when the mystery says so.</father>
</p>
<img src="Images/Day 5/1.png">
<p>One last hug that lasts a beat too long. Then the sliding doors, the security line, the thin ticket that somehow weighs more than her bag.</p>
<<link '<span class="story-choice">Board the flight</span>' "D5 Flight">><</link>><<set $day5.flightDone to true>>
<<set $world.location to "Airplane">>
<<set $world.time to "Afternoon">>
<<run setup.Phone.refreshNotes()>>
<p>The low hum of the airplane fills Emily's ears as she gazes out the window. Clouds drift beneath her like mountains of cotton. Rising sun paints the sky in golds and pinks.</p>
<img src="Images/Day 5/2.webp">
<p>
<et>This is it... I'm really going to Portugal.</et>
</p>
<p>She leans back, excitement bubbling under the jet-lag already waiting to claim her.</p>
<p>
<et>New country. New story. New clues about Mom. Something big is waiting.</et>
</p>
<p>She touches Mom's diary through the bag fabric. Missing pages. Names she still can't place.</p>
<p>
<et>Whatever you left me, Mom... I'm coming to find it.</et>
</p>
/* NTR path: cut to David receiving a threat mid-flight */
<<if $ntr or $ntr_david>>
[[...|D5 David Flight POV]]
<<else>>
[[Landing|D5 Landing]]
<</if>><<set $world.location to "David's room">>
<<set $flags.david_flight_ntr to true>>
<p>Elsewhere - while Emily's plane crosses an ocean - David's phone buzzes again. Same unknown number.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">11:42</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED · NO TRACE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">UNKNOWN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/14.jpg" alt="Photo">
</div>
<div class="msg-ts">11:42 · Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">I just found out your girlfriend is leaving for Portugal...</div>
<div class="msg-ts">11:42</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">And guess what? I'm going there too. What a coincidence.</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">She's very pretty, by the way.</div>
</div>
</div>
<div class="terminal-actions david-anon-actions">
<p class="david-anon-actions-label">David reacts</p>
<<link '<span class="david-anon-btn"><span class="david-anon-btn-main">What do you want from me?</span></span>' "D5 David Flight React">><<set $flags.david_flight_choice to "what">><</link>>
<<link '<span class="david-anon-btn"><span class="david-anon-btn-main">Stay away from her.</span></span>' "D5 David Flight React">><<set $flags.david_flight_choice to "away">><</link>>
</div>
</div>
</div><<set $world.location to "David's room">>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">11:43</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">She's very pretty, by the way.</div>
</div>
<<if $flags.david_flight_choice is "away">>
<div class="msg-group">
<div class="bubble player only">Stay away from her.</div>
</div>
<<else>>
<div class="msg-group">
<div class="bubble player only">What do you want from me?</div>
</div>
<</if>>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Haha... it's only a matter of time before she's mine.</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Say a word to her, and you'll regret it.</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Because she'll never find me... she'll just live in fear.</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">You really think you can stop me?</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Soon I'll have her choking on my cock just like this slut.</div>
</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">UNKNOWN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/15.gif" alt="Threat">
</div>
<div class="msg-ts">11:44 · Media</div>
</div>
</div>
</div>
<p>David's hands shake. He stares at the screen until the glass goes black. He does not text Emily. He does not know how to start.</p>
<<toast "David received a threat about Portugal">>
</div>
[[Back to the flight|D5 Landing]]<<set $world.location to "Airplane - landing">>
<<set $world.time to "Afternoon">>
<p>As the flight attendants make their landing announcements, Emily sits up straighter, eyes shining.</p>
<p>The plane dips lower. Cities appear in the distance. Warm desert light fills the cabin.</p>
<p>Moments later, the tires touch the runway with a soft thud. Passengers gather bags. Emily stands, heart pounding, backpack strap cutting her shoulder.</p>
<p>
<et>Let's go find out what you were hiding, Mom.</et>
</p>
<p>She steps off the plane and into the heat - her adventure has officially begun.</p>
[[Airport exit|D5 Jack Pickup]]<<set $day5.arrived to true>>
<<set $world.location to "Portugal - airport">>
<<set $world.time to "Afternoon">>
<<run setup.Phone.refreshNotes()>>
<p>Warm Portugal air hits her like a wave. She adjusts her bag and scans the crowd of people holding signs - then she sees him. A man in his late thirties, sunglasses, laid-back grin, cardboard sign in block letters: <strong>EMILY</strong>.</p>
<p>
<jack>Emily! Over here!</jack>
</p>
<p>
<e>Hi!</e>
</p>
<p>She jogs over, suitcase rattling behind her.</p>
<p>
<jack>Welcome to Portugal! I'm Jack - your uncle's son. Guess that makes me your cousin?</jack>
</p>
<p>She shakes his hand, amused.</p>
<p>
<e>Nice to meet you, Jack.</e>
</p>
<p>His car is a dusty old sedan with a cracked dashboard and a pineapple air freshener. He pops the trunk, slides into the driver's seat.</p>
<p>
<jack>It's not much, but it runs. Usually.</jack>
</p>
<p>As Emily opens the passenger door, her eyes land on something wedged between the seats - a porn magazine, glossy cover half-crumpled but unmistakable.</p>
<img src="Images/Day 5/3.webp">
<p>
<e>...Oh.</e>
</p>
<p>Jack nearly chokes, snatches it, tosses it into the backseat.</p>
<p>
<jack>Shit - I mean! That's not mine! Friend borrowed the car. You know how it is.</jack>
</p>
<p>
<e>Uh-huh. Sure.</e>
</p>
<p>
<jack>Great first impression, huh?</jack>
</p>
<p>
<e>Let's just pretend that didn't happen.</e>
</p>
<p>Awkward silence fades as the city blurs past - golden buildings, markets, palm trees. They pull up at a cozy two-story nestled between sandy alleys and blooming bougainvillea.</p>
<p>
<jack>Home sweet home. Hope you're ready to settle in... adventure starts tomorrow.</jack>
</p>
[[Uncle's house|D5 Uncle House]]<<set $world.location to "Portugal - uncle's house">>
<<set $world.time to "Afternoon">>
<p>As Emily steps inside, she is greeted by the scent of cardamom and old wood. Her uncle - tall, gray streaks in his beard, kind eyes - walks out from the kitchen with a gentle smile.</p>
<p>
<uncle>There she is! Emily, you've grown so much.</uncle>
</p>
<p>
<e>It's really good to finally meet you, Uncle.</e>
</p>
<p>She offers a polite hug.</p>
<p>
<uncle>You must be exhausted after that flight. Go take a bath, freshen up. Your room's upstairs, second door on the right. Bathroom's just across.</uncle>
</p>
<p>
<e>Thanks. I could definitely use a shower.</e>
</p>
<p>She heads upstairs with her bag. The hallway is quiet; the house hums with soft desert evening. Towel. Change of clothes. Bathroom door...</p>
<p>Before undressing, she stands in front of the door and thinks for a moment.</p>
[[Lock the door|D5 Shower Lock]]
[[Don't lock the door|D5 Shower Open]]<<set $day5.showered to true>>
<<set $day5.doorLocked to true>>
<<set $world.location to "Portugal - bathroom">>
<p>Emily turns the small latch until it clicks.</p>
<p>
<e>Better safe than sorry...</e>
</p>
<p>Travel clothes fold onto a stool. The mirror catches her reflection - she pauses.</p>
<p>
<et>Portugal... I'm really here.</et>
</p>
<p>Warm water cascades down. Fatigue, awkward car ride, the pressure of the unknown - rinsed, for a moment.</p>
<img src="Images/Day 5/5.gif">
<p>Steam swirls. She leans her head back, eyes closed, and lets the sound of water calm her thoughts.</p>
<p>After a while she steps out, wraps a fluffy white towel tight, skin warm and dewy.</p>
<img src="Images/Day 5/6.jpeg">
<p>
<et>Let's see what secrets you're hiding, Portugal.</et>
</p>
[[Downstairs|D5 After Shower]]<<set $day5.showered to true>>
<<set $day5.doorLocked to false>>
<<set $day5.jackSaw to true>>
<<set $world.location to "Portugal - bathroom">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily shrugs at the unlocked handle.</p>
<p>
<et>They're downstairs... it's fine.</et>
</p>
<p>Warm spray. Travel dust rinsing away. A soft smile as she thinks of stars, a rooftop, maybe David's kiss - if she had one.</p>
<p>The door creaks open.</p>
<p>
<jack>Oh shit - sorry! I didn't think-</jack>
</p>
<p>Emily gasps, spins, drops her towel in shock. Water drips from soaked hair.</p>
<img src="Images/Day 5/towel.gif">
<p>
<e>JACK! What the hell?!</e>
</p>
<p>
<jack>I swear I thought no one was in here! I just - needed the mirror. I'm really sorry!</jack>
</p>
<p>He covers his eyes and backs out. Door clicks shut.</p>
<p>Emily freezes, then wraps the towel tight.</p>
<p>
<e>Great... just perfect.</e>
</p>
<img src="Images/Day 5/6.jpeg">
<<toast "Corruption +1">>
[[Downstairs|D5 After Shower Awkward]]<<set $world.location to "Portugal - kitchen">>
<<set $world.time to "Afternoon">>
<p>Wrapped in a towel long enough to change into fresh clothes, Emily makes her way downstairs. Warm spice drifts through the air.</p>
<p>Her uncle and Jack sit at the small dining table, halfway through their plates.</p>
<p>
<uncle>There she is! Feeling better after the shower?</uncle>
</p>
<p>
<e>Much better, thank you.</e>
</p>
<p>
<jack>You picked a good time. Uncle cooked. Rare occasion, honestly.</jack>
</p>
<p>
<uncle>Hey now, don't scare her off already.</uncle>
</p>
<p>They eat, light conversation - her flight, local spots Jack swears by. When plates empty, her uncle nods toward the stairs.</p>
<p>
<uncle>Your room's upstairs, just next to the bookshelf landing. Why don't you get some rest? You've had a long day.</uncle>
</p>
<p>
<e>Yeah... I think I will. Thanks for everything.</e>
</p>
[[Nap|D5 Nap]]<<set $world.location to "Portugal - kitchen">>
<<set $world.time to "Afternoon">>
<p>After drying off, Emily dresses quickly, damp hair behind her ears. Downstairs: clinking dishes, careful silence.</p>
<p>Jack looks up, clearly uncomfortable.</p>
<p>
<jack>Hey... uh, sorry again about earlier. I didn't mean to-</jack>
</p>
<p>
<e>It's fine. Just... knock next time, alright?</e>
</p>
<p>He nods, rubbing the back of his neck.</p>
<p>
<uncle>Everything alright?</uncle>
</p>
<p>
<e>Yeah. Just tired.</e>
</p>
<p>They eat mostly in silence broken by her uncle's polite questions about the flight and her plans. He smiles fondly.</p>
<p>
<uncle>You've always had your mother's fire, you know that? But for now, rest. Your room's upstairs, left of the stairs. Nap before evening.</uncle>
</p>
<p>
<e>Thanks... I think I'll do just that.</e>
</p>
[[Nap|D5 Nap]]<<set $day5.napDone to true>>
<<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Evening">>
<<set $player.energy to 85>>
<<run setup.Phone.refreshNotes()>>
<p>Her room is small but cozy. The moment her head hits the pillow, travel and emotion catch up. Afternoon sun slips through the curtains. Sleep takes her.</p>
<p>...</p>
<p>The soft buzz of her phone vibrates against the nightstand. She blinks, groggy. Screen: <strong>7:30 PM</strong>.</p>
<img src="Images/Day 5/time.png">
<p>
<e>Still time...</e>
</p>
<p>Thoughts drift to Mom's diary - faded ink, an address, a place. Curiosity bubbles up.</p>
<p>
<et>I can check it out. Just... take a look.</et>
</p>
<p>She grabs her bag, tucks the diary inside, and heads for the hall.</p>
[[House map|D5 House Map]]
/* Locations: src/passages/locations/*.twee · Day 6: day6.twee */
/* '' DAVID GLORY NTR (morning of Day 5) ''''''''''''''''''' */<<set $flags.david_glory_ntr to true>>
<<set $flags.pending_glory_ntr to false>>
<<set $world.location to "David's room">>
<<set $world.time to "Morning">>
<p>Elsewhere - while Emily still tastes last night's secrets - David's phone buzzes again. Same unknown number.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">07:12</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED · NO TRACE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">UNKNOWN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/11.jpg" alt="Photo 1">
</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/12.jpg" alt="Photo 2">
</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/13.jpg" alt="Photo 3">
</div>
<div class="msg-ts">07:12 · Photos</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Take a good look.</div>
<div class="msg-ts">07:12</div>
</div>
</div>
<div class="terminal-actions david-anon-actions">
<p class="david-anon-actions-label">David reacts</p>
<<link '<span class="david-anon-btn"><span class="david-anon-btn-main">So you were sending me photos...</span><span class="david-anon-btn-sub">This is Sarah. I know she is a slut.</span></span>' "D5 David Glory NTR React">><</link>>
</div>
</div>
</div><<set $world.location to "David's room">>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">07:13</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Take a good look.</div>
</div>
<div class="msg-group">
<div class="bubble player only">So you were sending me her photos... This is Sarah and I know she is a slut.</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Haha, loser.</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Look at those photos carefully.</div>
</div>
</div>
</div>
<p>David zooms in. Party light. A gloryhole. Sarah on her knees - and another mouth in the frame that makes his stomach drop for reasons he cannot name yet. Or will not.</p>
<p>
<david>What the fuck is this college...</david>
</p>
<<toast "David received gloryhole photos">>
</div>
<<if $day4.roofSlept>>
[[...|D5 Roof Wake]]
<<else>>
[[...|D5 Morning Home]]
<</if>><<set $world.day to 6>>
<<set $world.time to "Morning">>
<<set $world.location to "Portugal - Emily's room">>
<<set $player.energy to 90>>
<<if ndef $day6>>
<<set $day6 to {
shower : false,
dressed : false,
breakfast : false,
ateToday : false,
leftHome : false,
collegeDone : false,
classDone : false,
metRyan : false,
ryanPhotoDone : false,
ryanParkReady : false,
ryanParkDone : false,
metBookGirl : false,
bookGirlClassReady : false,
leftDeskNote : false,
bookGirlWashroomReady : false,
bookGirlWashroomNote : false,
gwenWashroom : false,
gwenVirginPath : false,
gwenRejected : false,
gwenHouseInvited : false,
gwenHouseDone : false,
gwenBjTier : 3,
gloryHoleUnlocked : false,
gloryHoleUseCorGiven : false,
principalMet : false,
principalWaitSleeps : 0,
noBraEventReady : false,
noBraDay : false,
wearingBra : true,
noBraTaped : false,
principalPunishDone : false,
principalCleanDone : false,
/* After principal peek: next morning PD14 punish */
principalPeekPunishWaitSleeps : 0,
principalPeekPunishReady : false,
principalPeekPunishDone : false,
/* 5 sleeps after PD14 → CLD15 Gwen + PD15 severe punish */
principalGwenWaitSleeps : 0,
principalGwenReady : false,
principalGwenDone : false,
kellyGateMsg : false,
kellyGateMsgSeen : false,
secondGateReady : false,
secondGateDone : false,
gateJob : "",
gateRyanMore : false,
gateDavidNude : false,
gateRyanToDavid : false,
kellyFuckedVideo : false,
kellyPhotoSent : false,
ryanKellySexMsg : false,
forestWaitSleeps : 0,
forestGateReady : false,
forestGateDone : false,
forestGateStarted : false,
metKelly : false,
kellyAlly : false,
kellyRiddle : false,
kellyKitchenDone : false,
kellyPhone : false,
kellyParkQuest : false,
kellyParkMsgSeen : false,
kellyParkDone : false,
mainWaitSleeps : 0,
mainLoreReady : false,
/* After second gate: wait 2 sleeps → history class (Day 10 arc) */
historyWaitSleeps : 0,
historyClassReady : false,
historyClassDone : false,
alleyEventDone : false,
alleyWatch : false,
strangerPhone : false,
kellyTalkWaitSleeps : 0,
kellyTalkReady : false,
kellyTalkDone : false,
/* Vial from Kelly → next day Jack test → college food drop */
hasVial : false,
vialTestReady : false,
jackVialDrop : false,
collegeFoodDrop : false,
/* After food-cart spill: CLD211 hub events */
collegeSpillClassDone : false,
liamLockerDone : false,
principalPeekDone : false,
toiletOrgyDone : false,
/* Main: after spill trio, wait 2 sleeps → Kelly call / Evan */
kellyCallWaitSleeps : 0,
kellyCallReady : false,
kellyEvanDone : false,
/* Jack massage chain (after movie) */
jackShoulderWaitSleeps : 0,
jackShoulderReady : false,
jackShoulderDone : false,
/* Jack room peek — recurring night event after shoulder massage, loops until she opens the door */
jackRoomPeekNights : 0,
jackRoomPeekDone : false,
jackRoomPeekCorGiven : false,
jackFullMassageWaitSleeps : 0,
jackFullMassageReady : false,
jackFullMassageDone : false,
/* After full massage: 2 sleeps → morning kitchen jog (KD12) */
jackJogWaitSleeps : 0,
jackJogReady : false,
jackJogDone : false,
/* NTR: after Jack vial drop — night David POV (phone blink) */
davidBlinkDone : false,
/* Jack: after jog — room tease (JD12) */
jackTeaseDone : false,
/* Main: after Evan lore — wait 5 sleeps → Kelly phone / pond (B2D12) */
kellyForestWaitSleeps : 0,
kellyForestReady : false,
kellyForestMsgSeen : false,
pondVisionDone : false,
pondEmilyDone : false,
pondKellyDone : false,
pondEmilyFail : false,
pondKellyFail : false,
pondSealed : "",
pondBadEnd : false,
pondBadWho : "",
pondBodyChanged : false,
pondBodyBoobs : "",
pondBodyAss : "",
phoneNotif : false,
girlsMuscleWaitSleeps : 0,
girlsMuscleReady : false,
girlsMuscleSeen : false,
/* After pond: Albert late punishment → Jack talk → Albert route */
albertPunishDone : false,
albertRoute : false,
albertRoomDoorOpen : false,
albertJobReady : false,
albertJobTalkDone : false,
ekonAgencyUnlocked : false,
ekonMet : false,
ekonWarehouse : false,
ekonShiftToday : false,
deliverGolden : false,
deliverRiverside : false,
deliverTech : false,
ekonFirstShiftDone : false,
/* Jack after Albert job talk: evening date out → night girl sleeps in Emily room + vial */
jackDateNightDone : false,
jackGirlNightDone : false,
/* Albert morning after girl night (Day 15) */
albertDay15Done : false,
/* Liam BSD14 challenge — 1 sleep after story photo chat */
bsd14WaitSleeps : 0,
bsd14Ready : false,
bsd14Done : false,
bsd14Scored : false,
/* Next day after BSD14: coffee date (score) or park practice (miss) */
liamDateWaitSleeps : 0,
liamDateReady : false,
liamDateDone : false,
liamCoffeeDone : false,
liamPracticeDone : false,
/* Liam story photo (ED1234) */
liamStoryType : "",
liamCameraMode : false,
liamStoryPosted : false,
liamStoryHot : false,
basketballDone : false,
liamCourtDone : false,
/* Liam basketball meet is independent of the main history-class quest — 1 sleep after Principal no-bra event */
liamCourtWaitSleeps : 0,
liamCourtReady : false,
/* After locker (or court): 3 sleeps → Photogram follow + Liam contact */
liamFollowWaitSleeps : 0,
liamFollowReady : false,
liamFollowDone : false,
liamQuest : false,
ryanDavidThreat : false,
ryanJogPhoto : false,
ntrCheatSleeps : 0,
ryanCheatReady : false,
ryanCheatMsg : false,
ryanCheatPhoto : false,
/* After cheat photo: 1 sleep → David "not cheated / AI" morning */
ntrCounterSleeps : 0,
davidCounterReady : false,
davidCounterDone : false,
/* After David counter: 1 sleep → night in room → Ryan night walk */
ntrNightWaitSleeps : 0,
nightWalkReady : false,
nightWalkDone : false,
/* After first night walk: 3 sleeps → second walk + Jack peek */
ntrPeekWaitSleeps : 0,
jackPeekReady : false,
jackPeek : false,
ryanRepliedNude : false,
pendingDavidNude : false,
davidSawNude : false,
davidCalledEmily : false,
jackDatingWaitSleeps : 0,
jackDatingReady : false,
jackDatingDone : false,
datingApp : false,
classSocialAppDone : false,
socialApp : false,
cameraMode : false,
jackMovie : false,
cafeHired : false,
cafeShiftsToday : 0,
cafeShift : false,
cafeGropeCorGiven : false,
cafePromoOffered : false,
cafePromoAccepted : false,
parkVisit : false,
mallVisit : false,
homeEve : false
}>>
<</if>>
/* Ensure new event flags / wardrobe on older saves */
<<if ndef $wardrobe>><<set $wardrobe to { casual : true, jogging : false }>><</if>>
<<if ndef $wardrobe.casual>><<set $wardrobe.casual to true>><</if>>
<<if ndef $wardrobe.jogging>><<set $wardrobe.jogging to false>><</if>>
<<if ndef $player.outfit>><<set $player.outfit to "sleep">><</if>>
<<if ndef $day6.cafeGropeCorGiven>><<set $day6.cafeGropeCorGiven to false>><</if>>
<<if ndef $day6.cafePromoOffered>><<set $day6.cafePromoOffered to false>><</if>>
<<if ndef $day6.cafePromoAccepted>><<set $day6.cafePromoAccepted to false>><</if>>
<<if ndef $day6.metBookGirl>><<set $day6.metBookGirl to false>><</if>>
<<if ndef $day6.bookGirlClassReady>><<set $day6.bookGirlClassReady to false>><</if>>
<<if ndef $day6.leftDeskNote>><<set $day6.leftDeskNote to false>><</if>>
<<if ndef $day6.bookGirlWashroomReady>><<set $day6.bookGirlWashroomReady to false>><</if>>
<<if ndef $day6.bookGirlWashroomNote>><<set $day6.bookGirlWashroomNote to false>><</if>>
<<if ndef $day6.gwenWashroom>><<set $day6.gwenWashroom to false>><</if>>
<<if ndef $day6.gwenVirginPath>><<set $day6.gwenVirginPath to false>><</if>>
<<if ndef $day6.gwenRejected>><<set $day6.gwenRejected to false>><</if>>
<<if ndef $day6.gwenHouseInvited>><<set $day6.gwenHouseInvited to false>><</if>>
<<if ndef $day6.gwenHouseDone>><<set $day6.gwenHouseDone to false>><</if>>
<<if ndef $day6.gwenBjTier>><<set $day6.gwenBjTier to 3>><</if>>
<<if ndef $day6.gloryHoleUnlocked>><<set $day6.gloryHoleUnlocked to false>><</if>>
<<if ndef $day6.gloryHoleUseCorGiven>><<set $day6.gloryHoleUseCorGiven to false>><</if>>
<<if ndef $day6.girlsMuscleWaitSleeps>><<set $day6.girlsMuscleWaitSleeps to 0>><</if>>
<<if ndef $day6.girlsMuscleReady>><<set $day6.girlsMuscleReady to false>><</if>>
<<if ndef $day6.girlsMuscleSeen>><<set $day6.girlsMuscleSeen to false>><</if>>
<<if ndef $day6.forestWaitSleeps>><<set $day6.forestWaitSleeps to 0>><</if>>
<<if ndef $day6.principalMet>><<set $day6.principalMet to false>><</if>>
<<if ndef $day6.principalWaitSleeps>><<set $day6.principalWaitSleeps to 0>><</if>>
<<if ndef $day6.noBraEventReady>><<set $day6.noBraEventReady to false>><</if>>
<<if ndef $day6.noBraDay>><<set $day6.noBraDay to false>><</if>>
<<if ndef $day6.wearingBra>><<set $day6.wearingBra to true>><</if>>
<<if ndef $day6.noBraTaped>><<set $day6.noBraTaped to false>><</if>>
<<if ndef $day6.principalPunishDone>><<set $day6.principalPunishDone to false>><</if>>
<<if ndef $day6.principalPeekPunishWaitSleeps>><<set $day6.principalPeekPunishWaitSleeps to 0>><</if>>
<<if ndef $day6.principalPeekPunishReady>><<set $day6.principalPeekPunishReady to false>><</if>>
<<if ndef $day6.principalPeekPunishDone>><<set $day6.principalPeekPunishDone to false>><</if>>
<<if ndef $day6.principalGwenWaitSleeps>><<set $day6.principalGwenWaitSleeps to 0>><</if>>
<<if ndef $day6.principalGwenReady>><<set $day6.principalGwenReady to false>><</if>>
<<if ndef $day6.principalGwenDone>><<set $day6.principalGwenDone to false>><</if>>
<<if ndef $day6.albertDay15Done>><<set $day6.albertDay15Done to false>><</if>>
<<if ndef $day6.bsd14WaitSleeps>><<set $day6.bsd14WaitSleeps to 0>><</if>>
<<if ndef $day6.bsd14Ready>><<set $day6.bsd14Ready to false>><</if>>
<<if ndef $day6.bsd14Done>><<set $day6.bsd14Done to false>><</if>>
<<if ndef $day6.bsd14Scored>><<set $day6.bsd14Scored to false>><</if>>
<<if ndef $day6.liamDateWaitSleeps>><<set $day6.liamDateWaitSleeps to 0>><</if>>
<<if ndef $day6.liamDateReady>><<set $day6.liamDateReady to false>><</if>>
<<if ndef $day6.liamDateDone>><<set $day6.liamDateDone to false>><</if>>
<<if ndef $day6.liamCoffeeDone>><<set $day6.liamCoffeeDone to false>><</if>>
<<if ndef $day6.liamPracticeDone>><<set $day6.liamPracticeDone to false>><</if>>
<<if ndef $day6.liamStoryType>><<set $day6.liamStoryType to "">><</if>>
<<if ndef $day6.liamCameraMode>><<set $day6.liamCameraMode to false>><</if>>
<<if ndef $day6.liamStoryPosted>><<set $day6.liamStoryPosted to false>><</if>>
<<if ndef $day6.liamStoryHot>><<set $day6.liamStoryHot to false>><</if>>
<<if ndef $day6.classSocialAppDone>><<set $day6.classSocialAppDone to false>><</if>>
<<if ndef $day6.socialApp>><<set $day6.socialApp to false>><</if>>
<<if ndef $day6.principalCleanDone>><<set $day6.principalCleanDone to false>><</if>>
<<if ndef $day6.kellyGateMsg>><<set $day6.kellyGateMsg to false>><</if>>
<<if ndef $day6.kellyGateMsgSeen>><<set $day6.kellyGateMsgSeen to false>><</if>>
<<if ndef $day6.secondGateReady>><<set $day6.secondGateReady to false>><</if>>
<<if ndef $day6.secondGateDone>><<set $day6.secondGateDone to false>><</if>>
<<if ndef $day6.gateJob>><<set $day6.gateJob to "">><</if>>
<<if ndef $day6.gateRyanMore>><<set $day6.gateRyanMore to false>><</if>>
<<if ndef $day6.gateDavidNude>><<set $day6.gateDavidNude to false>><</if>>
<<if ndef $day6.gateRyanToDavid>><<set $day6.gateRyanToDavid to false>><</if>>
<<if ndef $day6.kellyFuckedVideo>><<set $day6.kellyFuckedVideo to false>><</if>>
<<if ndef $day6.kellyPhotoSent>><<set $day6.kellyPhotoSent to false>><</if>>
<<if ndef $day6.ryanKellySexMsg>><<set $day6.ryanKellySexMsg to false>><</if>>
<<if ndef $kelly_photo>><<set $kelly_photo to false>><</if>>
<<if ndef $day6.forestGateReady>><<set $day6.forestGateReady to false>><</if>>
<<if ndef $day6.forestGateDone>><<set $day6.forestGateDone to false>><</if>>
<<if ndef $day6.forestGateStarted>><<set $day6.forestGateStarted to false>><</if>>
<<if ndef $day6.metKelly>><<set $day6.metKelly to false>><</if>>
<<if ndef $day6.kellyAlly>><<set $day6.kellyAlly to false>><</if>>
<<if ndef $day6.kellyRiddle>><<set $day6.kellyRiddle to false>><</if>>
<<if ndef $day6.kellyKitchenDone>><<set $day6.kellyKitchenDone to false>><</if>>
<<if ndef $day6.kellyPhone>><<set $day6.kellyPhone to false>><</if>>
<<if ndef $day6.kellyParkQuest>><<set $day6.kellyParkQuest to false>><</if>>
<<if ndef $day6.kellyParkMsgSeen>><<set $day6.kellyParkMsgSeen to false>><</if>>
<<if ndef $day6.kellyParkDone>><<set $day6.kellyParkDone to false>><</if>>
<<if ndef $day6.mainWaitSleeps>><<set $day6.mainWaitSleeps to 0>><</if>>
<<if ndef $day6.mainLoreReady>><<set $day6.mainLoreReady to false>><</if>>
<<if ndef $day6.historyWaitSleeps>><<set $day6.historyWaitSleeps to 0>><</if>>
<<if ndef $day6.historyClassReady>><<set $day6.historyClassReady to false>><</if>>
<<if ndef $day6.historyClassDone>><<set $day6.historyClassDone to false>><</if>>
<<if ndef $day6.alleyEventDone>><<set $day6.alleyEventDone to false>><</if>>
<<if ndef $day6.alleyWatch>><<set $day6.alleyWatch to false>><</if>>
<<if ndef $day6.strangerPhone>><<set $day6.strangerPhone to false>><</if>>
<<if ndef $day6.kellyTalkWaitSleeps>><<set $day6.kellyTalkWaitSleeps to 0>><</if>>
<<if ndef $day6.kellyTalkReady>><<set $day6.kellyTalkReady to false>><</if>>
<<if ndef $day6.kellyTalkDone>><<set $day6.kellyTalkDone to false>><</if>>
<<if ndef $day6.hasVial>><<set $day6.hasVial to false>><</if>>
<<if ndef $day6.vialTestReady>><<set $day6.vialTestReady to false>><</if>>
<<if ndef $day6.jackVialDrop>><<set $day6.jackVialDrop to false>><</if>>
<<if ndef $day6.collegeFoodDrop>><<set $day6.collegeFoodDrop to false>><</if>>
<<if ndef $day6.collegeSpillClassDone>><<set $day6.collegeSpillClassDone to false>><</if>>
<<if ndef $day6.liamLockerDone>><<set $day6.liamLockerDone to false>><</if>>
<<if ndef $day6.principalPeekDone>><<set $day6.principalPeekDone to false>><</if>>
<<if ndef $day6.toiletOrgyDone>><<set $day6.toiletOrgyDone to false>><</if>>
<<if ndef $day6.kellyCallWaitSleeps>><<set $day6.kellyCallWaitSleeps to 0>><</if>>
<<if ndef $day6.kellyCallReady>><<set $day6.kellyCallReady to false>><</if>>
<<if ndef $day6.kellyEvanDone>><<set $day6.kellyEvanDone to false>><</if>>
<<if ndef $day6.jackShoulderWaitSleeps>><<set $day6.jackShoulderWaitSleeps to 0>><</if>>
<<if ndef $day6.jackShoulderReady>><<set $day6.jackShoulderReady to false>><</if>>
<<if ndef $day6.jackShoulderDone>><<set $day6.jackShoulderDone to false>><</if>>
<<if ndef $day6.jackFullMassageWaitSleeps>><<set $day6.jackFullMassageWaitSleeps to 0>><</if>>
<<if ndef $day6.jackFullMassageReady>><<set $day6.jackFullMassageReady to false>><</if>>
<<if ndef $day6.jackFullMassageDone>><<set $day6.jackFullMassageDone to false>><</if>>
<<if ndef $day6.jackJogWaitSleeps>><<set $day6.jackJogWaitSleeps to 0>><</if>>
<<if ndef $day6.jackJogReady>><<set $day6.jackJogReady to false>><</if>>
<<if ndef $day6.jackJogDone>><<set $day6.jackJogDone to false>><</if>>
<<if ndef $day6.davidBlinkDone>><<set $day6.davidBlinkDone to false>><</if>>
<<if ndef $day6.jackTeaseDone>><<set $day6.jackTeaseDone to false>><</if>>
<<if ndef $day6.kellyForestWaitSleeps>><<set $day6.kellyForestWaitSleeps to 0>><</if>>
<<if ndef $day6.kellyForestReady>><<set $day6.kellyForestReady to false>><</if>>
<<if ndef $day6.kellyForestMsgSeen>><<set $day6.kellyForestMsgSeen to false>><</if>>
<<if ndef $day6.pondVisionDone>><<set $day6.pondVisionDone to false>><</if>>
<<if ndef $day6.pondEmilyDone>><<set $day6.pondEmilyDone to false>><</if>>
<<if ndef $day6.pondKellyDone>><<set $day6.pondKellyDone to false>><</if>>
<<if ndef $day6.pondEmilyFail>><<set $day6.pondEmilyFail to false>><</if>>
<<if ndef $day6.pondKellyFail>><<set $day6.pondKellyFail to false>><</if>>
<<if ndef $day6.pondSealed>><<set $day6.pondSealed to "">><</if>>
<<if ndef $day6.pondBadEnd>><<set $day6.pondBadEnd to false>><</if>>
<<if ndef $day6.pondBadWho>><<set $day6.pondBadWho to "">><</if>>
<<if ndef $day6.pondBodyChanged>><<set $day6.pondBodyChanged to false>><</if>>
<<if ndef $day6.pondBodyBoobs>><<set $day6.pondBodyBoobs to "">><</if>>
<<if ndef $day6.pondBodyAss>><<set $day6.pondBodyAss to "">><</if>>
<<if ndef $day6.phoneNotif>><<set $day6.phoneNotif to false>><</if>>
<<if ndef $day6.albertPunishDone>><<set $day6.albertPunishDone to false>><</if>>
<<if ndef $day6.albertRoute>><<set $day6.albertRoute to false>><</if>>
<<if ndef $day6.albertRoomDoorOpen>><<set $day6.albertRoomDoorOpen to false>><</if>>
<<if ndef $day6.kellyDiaryWaitSleeps>><<set $day6.kellyDiaryWaitSleeps to 0>><</if>>
<<if ndef $day6.kellyDiaryReady>><<set $day6.kellyDiaryReady to false>><</if>>
<<if ndef $day6.kellyDiaryMsgSeen>><<set $day6.kellyDiaryMsgSeen to false>><</if>>
<<if ndef $day6.kellyDiaryDone>><<set $day6.kellyDiaryDone to false>><</if>>
<<if ndef $day6.libraryUnlocked>><<set $day6.libraryUnlocked to false>><</if>>
<<if ndef $day6.libraryBookAsked>><<set $day6.libraryBookAsked to false>><</if>>
<<if ndef $day6.libraryBookGotten>><<set $day6.libraryBookGotten to false>><</if>>
<<if ndef $day6.libraryReadAtHome>><<set $day6.libraryReadAtHome to false>><</if>>
<<if ndef $day6.libraryResearchDone>><<set $day6.libraryResearchDone to false>><</if>>
<<if ndef $day6.albertJobReady>><<set $day6.albertJobReady to false>><</if>>
<<if ndef $day6.albertJobTalkDone>><<set $day6.albertJobTalkDone to false>><</if>>
<<if ndef $day6.ekonAgencyUnlocked>><<set $day6.ekonAgencyUnlocked to false>><</if>>
<<if ndef $day6.ekonMet>><<set $day6.ekonMet to false>><</if>>
<<if ndef $day6.ekonWarehouse>><<set $day6.ekonWarehouse to false>><</if>>
<<if ndef $day6.ekonShiftToday>><<set $day6.ekonShiftToday to false>><</if>>
<<if ndef $day6.deliverGolden>><<set $day6.deliverGolden to false>><</if>>
<<if ndef $day6.deliverRiverside>><<set $day6.deliverRiverside to false>><</if>>
<<if ndef $day6.deliverTech>><<set $day6.deliverTech to false>><</if>>
<<if ndef $day6.ekonFirstShiftDone>><<set $day6.ekonFirstShiftDone to false>><</if>>
<<if ndef $day6.ekonWarehouseTalkDone>><<set $day6.ekonWarehouseTalkDone to false>><</if>>
<<if ndef $day6.jackDateNightDone>><<set $day6.jackDateNightDone to false>><</if>>
<<if ndef $day6.jackGirlNightDone>><<set $day6.jackGirlNightDone to false>><</if>>
<<if ndef $day6.jackRoomPeekNights>><<set $day6.jackRoomPeekNights to 0>><</if>>
<<if ndef $day6.jackRoomPeekDone>><<set $day6.jackRoomPeekDone to false>><</if>>
<<if ndef $day6.jackRoomPeekCorGiven>><<set $day6.jackRoomPeekCorGiven to false>><</if>>
<<if ndef $day6.basketballDone>><<set $day6.basketballDone to false>><</if>>
<<if ndef $day6.liamCourtDone>><<set $day6.liamCourtDone to false>><</if>>
<<if ndef $day6.liamCourtWaitSleeps>><<set $day6.liamCourtWaitSleeps to 0>><</if>>
<<if ndef $day6.liamCourtReady>><<set $day6.liamCourtReady to false>><</if>>
<<if ndef $day6.liamFollowWaitSleeps>><<set $day6.liamFollowWaitSleeps to 0>><</if>>
<<if ndef $day6.liamFollowReady>><<set $day6.liamFollowReady to false>><</if>>
<<if ndef $day6.liamFollowDone>><<set $day6.liamFollowDone to false>><</if>>
<<if ndef $day6.liamQuest>><<set $day6.liamQuest to false>><</if>>
<<if ndef $day6.ryanDavidThreat>><<set $day6.ryanDavidThreat to false>><</if>>
<<if ndef $day6.ryanJogPhoto>><<set $day6.ryanJogPhoto to false>><</if>>
<<if ndef $day6.ntrCheatSleeps>><<set $day6.ntrCheatSleeps to 0>><</if>>
<<if ndef $day6.ryanCheatReady>><<set $day6.ryanCheatReady to false>><</if>>
<<if ndef $day6.ryanCheatMsg>><<set $day6.ryanCheatMsg to false>><</if>>
<<if ndef $day6.ryanCheatPhoto>><<set $day6.ryanCheatPhoto to false>><</if>>
<<if ndef $day6.jackDatingWaitSleeps>><<set $day6.jackDatingWaitSleeps to 0>><</if>>
<<if ndef $day6.jackDatingReady>><<set $day6.jackDatingReady to false>><</if>>
<<if ndef $day6.jackDatingDone>><<set $day6.jackDatingDone to false>><</if>>
<<if ndef $day6.ntrCounterSleeps>><<set $day6.ntrCounterSleeps to 0>><</if>>
<<if ndef $day6.davidCounterReady>><<set $day6.davidCounterReady to false>><</if>>
<<if ndef $day6.davidCounterDone>><<set $day6.davidCounterDone to false>><</if>>
<<if ndef $day6.ntrNightWaitSleeps>><<set $day6.ntrNightWaitSleeps to 0>><</if>>
<<if ndef $day6.nightWalkReady>><<set $day6.nightWalkReady to false>><</if>>
<<if ndef $day6.nightWalkDone>><<set $day6.nightWalkDone to false>><</if>>
<<if ndef $day6.ntrPeekWaitSleeps>><<set $day6.ntrPeekWaitSleeps to 0>><</if>>
<<if ndef $day6.jackPeekReady>><<set $day6.jackPeekReady to false>><</if>>
<<if ndef $day6.jackPeek>><<set $day6.jackPeek to false>><</if>>
<<if ndef $day6.metRyan>><<set $day6.metRyan to false>><</if>>
<<if ndef $day6.ryanPhotoDone>><<set $day6.ryanPhotoDone to false>><</if>>
<<if ndef $day6.ryanParkReady>><<set $day6.ryanParkReady to false>><</if>>
<<if ndef $day6.ryanParkDone>><<set $day6.ryanParkDone to false>><</if>>
<<if ndef $day6.jackMovie>><<set $day6.jackMovie to false>><</if>>
<<if ndef $day6.ateToday>><<set $day6.ateToday to false>><</if>>
<<if ndef $day6.cafeHired>><<set $day6.cafeHired to false>><</if>>
<<if ndef $day6.cafeShiftsToday>><<set $day6.cafeShiftsToday to 0>><</if>>
<<if ndef $day6.lumaBrandReady>><<set $day6.lumaBrandReady to false>><</if>>
<<if ndef $day6.lumaBrandMsg>><<set $day6.lumaBrandMsg to false>><</if>>
<<if ndef $day6.lumaBrandDone>><<set $day6.lumaBrandDone to false>><</if>>
<<if ndef $day6.velvetOutfit>><<set $day6.velvetOutfit to "">><</if>>
<<if ndef $day6.lumaBrand2Ready>><<set $day6.lumaBrand2Ready to false>><</if>>
<<if ndef $day6.lumaBrand2Msg>><<set $day6.lumaBrand2Msg to false>><</if>>
<<if ndef $day6.lumaBrand2Done>><<set $day6.lumaBrand2Done to false>><</if>>
<<if ndef $day6.haloStyle>><<set $day6.haloStyle to "">><</if>>
<<if ndef $day6.leahMet>><<set $day6.leahMet to false>><</if>>
<<if ndef $day6.leahTattooNoted>><<set $day6.leahTattooNoted to false>><</if>>
<<if ndef $day6.gymUnlocked>><<set $day6.gymUnlocked to false>><</if>>
<<if ndef $day6.gymVisited>><<set $day6.gymVisited to false>><</if>>
<<if ndef $day6.gymIntroDone>><<set $day6.gymIntroDone to false>><</if>>
<<if ndef $day6.gymMembership>><<set $day6.gymMembership to false>><</if>>
<<if $day5.cafeJobAsked>><<set $day6.cafeHired to true>><</if>>
<<set $player.outfit to "sleep">>
<<set $day6.dressed to false>>
<<run setup.Phone.refreshNotes()>>
<img src="Images/Chapter 1/sleep2.webp">
<p>Morning sunlight peeks through the curtains. Emily stirs, stretches, a spark of excitement under the jet lag.</p>
<p>
<e>Today's the day...</e>
</p>
<p>Mom's diary still waits somewhere out there. But today is also college - Portugal branch, new halls, new faces.</p>
<p>
<et>First... get ready. College. Everything else can wait its turn.</et>
</p>
[[Get up|D6 House Map]]/* Sleep: restore + daily resets + wait-1-day timers. Does not auto-complete story quests. */
<<set $world.time to "Morning">>
<<set $player.energy to 90>>
<<set $player.outfit to "sleep">>
<<set $day6.cafeShiftsToday to 0>>
<<set $day6.shower to false>>
<<set $day6.dressed to false>>
<<set $day6.breakfast to false>>
<<set $day6.ateToday to false>>
<<set $day6.classDone to false>>
<<set $day6.leftHome to false>>
<<set $world.location to "Portugal - Emily's room">>
/* Luma: next "day" — apply pending followers + allow another post */
<<run setup.Phone.lumaOnSleep()>>
/* Wait-1-day unlocks */
<<if $day6.metRyan and not $day6.ryanParkDone>>
<<set $day6.ryanParkReady to true>>
<</if>>
<<if $day6.metBookGirl and not $day6.leftDeskNote>>
<<set $day6.bookGirlClassReady to true>>
<</if>>
/* After desk note: next sleep unlocks classroom washroom note */
<<if $day6.leftDeskNote and not $day6.gwenWashroom and not $day6.bookGirlWashroomNote>>
<<set $day6.bookGirlWashroomReady to true>>
<</if>>
/* After washroom: wait 2 full sleeps before forest gate route */
<<if $day6.gwenWashroom and not $day6.forestGateReady>>
<<set $day6.forestWaitSleeps to Number($day6.forestWaitSleeps || 0) + 1>>
<<if $day6.forestWaitSleeps gte 2>>
<<set $day6.forestGateReady to true>>
<</if>>
<</if>>
/* Girls group chat (2 guys / muscle party): independent, 1 sleep after Gwen's washroom bullying — no note, no quest tie-in */
<<if $day6.gwenWashroom and not $day6.girlsMuscleReady and not $day6.girlsMuscleSeen>>
<<set $day6.girlsMuscleWaitSleeps to Number($day6.girlsMuscleWaitSleeps || 0) + 1>>
<<if $day6.girlsMuscleWaitSleeps gte 1>>
<<set $day6.girlsMuscleReady to true>>
<</if>>
<</if>>
/* After forest/Kelly: wait 2 more days for next main lore */
<<if $day6.forestGateDone and not $day6.mainLoreReady>>
<<set $day6.mainWaitSleeps to Number($day6.mainWaitSleeps || 0) + 1>>
<<if $day6.mainWaitSleeps gte 2>>
<<set $day6.mainLoreReady to true>>
<</if>>
<</if>>
/* NTR: 2 sleeps after park jog → Ryan "David cheating" event at home */
<<if ($ntr or $ntr_david) and $day6.ryanParkDone and not $day6.ryanCheatReady and not $day6.ryanCheatPhoto>>
<<set $day6.ntrCheatSleeps to Number($day6.ntrCheatSleeps || 0) + 1>>
<<if $day6.ntrCheatSleeps gte 2>>
<<set $day6.ryanCheatReady to true>>
<</if>>
<</if>>
/* Principal: 5 sleeps after first meet → no-bra day event */
<<if $day6.principalMet and not $day6.principalPunishDone and not $day6.noBraEventReady>>
<<set $day6.principalWaitSleeps to Number($day6.principalWaitSleeps || 0) + 1>>
<<if $day6.principalWaitSleeps gte 5>>
<<set $day6.noBraEventReady to true>>
<</if>>
<</if>>
/* Liam basketball meet: independent of history class — 1 sleep after Principal no-bra event */
<<if $day6.principalPunishDone and not $day6.liamCourtReady and not $day6.liamCourtDone>>
<<set $day6.liamCourtWaitSleeps to Number($day6.liamCourtWaitSleeps || 0) + 1>>
<<if $day6.liamCourtWaitSleeps gte 1>>
<<set $day6.liamCourtReady to true>>
<</if>>
<</if>>
/* Principal: after peek — 1 sleep → morning class → PD14 punishment */
<<if $day6.principalPeekDone and not $day6.principalPeekPunishReady and not $day6.principalPeekPunishDone>>
<<set $day6.principalPeekPunishWaitSleeps to Number($day6.principalPeekPunishWaitSleeps || 0) + 1>>
<<if $day6.principalPeekPunishWaitSleeps gte 1>>
<<set $day6.principalPeekPunishReady to true>>
<</if>>
<</if>>
/* Principal: 5 sleeps after PD14 → CLD15 Gwen classroom + PD15 severe punish */
<<if $day6.principalPeekPunishDone and not $day6.principalGwenReady and not $day6.principalGwenDone>>
<<set $day6.principalGwenWaitSleeps to Number($day6.principalGwenWaitSleeps || 0) + 1>>
<<if $day6.principalGwenWaitSleeps gte 5>>
<<set $day6.principalGwenReady to true>>
<</if>>
<</if>>
/* Main: after 2-day wait, Kelly texts about next gate */
<<if $day6.mainLoreReady and not $day6.kellyGateMsg and $day6.kellyPhone>>
<<run setup.Phone.seedKellyGateMessage()>>
<<set $day6.kellyGateMsg to true>>
<<set $day6.secondGateReady to true>>
<</if>>
/* After second gate: wait 2 sleeps → history class (new teacher / Jayden) */
<<if $day6.secondGateDone and not $day6.historyClassReady and not $day6.historyClassDone>>
<<set $day6.historyWaitSleeps to Number($day6.historyWaitSleeps || 0) + 1>>
<<if $day6.historyWaitSleeps gte 2>>
<<set $day6.historyClassReady to true>>
<</if>>
<</if>>
/* After alley stranger: wait 1 sleep → Kelly house talk */
<<if $day6.alleyEventDone and not $day6.kellyTalkReady and not $day6.kellyTalkDone>>
<<set $day6.kellyTalkWaitSleeps to Number($day6.kellyTalkWaitSleeps || 0) + 1>>
<<if $day6.kellyTalkWaitSleeps gte 1>>
<<set $day6.kellyTalkReady to true>>
<</if>>
<</if>>
/* NTR: after Ryan cheat photo — 1 sleep before Jack's Heartspark scene (keeps them sequential, not same-night) */
<<if ($ntr or $ntr_david) and $day6.ryanCheatPhoto and not $day6.jackDatingReady and not $day6.jackDatingDone>>
<<set $day6.jackDatingWaitSleeps to Number($day6.jackDatingWaitSleeps || 0) + 1>>
<<if $day6.jackDatingWaitSleeps gte 1>>
<<set $day6.jackDatingReady to true>>
<</if>>
<</if>>
/* NTR: after Jack's Heartspark scene — 2 sleeps unlocks David "not cheated" morning */
<<if ($ntr or $ntr_david) and $day6.jackDatingDone and not $day6.davidCounterReady and not $day6.davidCounterDone>>
<<set $day6.ntrCounterSleeps to Number($day6.ntrCounterSleeps || 0) + 1>>
<<if $day6.ntrCounterSleeps gte 2>>
<<set $day6.davidCounterReady to true>>
<</if>>
<</if>>
/* NTR: after David counter — 1 sleep → night walk ready (room at Night) */
<<if ($ntr or $ntr_david) and $day6.davidCounterDone and not $day6.nightWalkReady and not $day6.nightWalkDone>>
<<set $day6.ntrNightWaitSleeps to Number($day6.ntrNightWaitSleeps || 0) + 1>>
<<if $day6.ntrNightWaitSleeps gte 1>>
<<set $day6.nightWalkReady to true>>
<</if>>
<</if>>
/* NTR: after first night walk — 3 sleeps → second walk + Jack peek + David evidence */
<<if ($ntr or $ntr_david) and $day6.nightWalkDone and not $day6.jackPeekReady and not $day6.jackPeek>>
<<set $day6.ntrPeekWaitSleeps to Number($day6.ntrPeekWaitSleeps || 0) + 1>>
<<if $day6.ntrPeekWaitSleeps gte 3>>
<<set $day6.jackPeekReady to true>>
<</if>>
<</if>>
/* After Kelly vial: any sleep with sample unlocks kitchen test next morning
(heal hasVial if kellyTalkDone - older saves may miss the flag) */
<<if $day6.kellyTalkDone and not $day6.jackVialDrop>>
<<set $day6.hasVial to true>>
<<set $day6.vialTestReady to true>>
<</if>>
/* Main: after campus spill trio complete — wait 2 sleeps → Kelly call / Evan */
<<if $day6.liamLockerDone and $day6.principalPeekDone and $day6.toiletOrgyDone and not $day6.kellyCallReady and not $day6.kellyEvanDone>>
<<set $day6.kellyCallWaitSleeps to Number($day6.kellyCallWaitSleeps || 0) + 1>>
<<if $day6.kellyCallWaitSleeps gte 2>>
<<set $day6.kellyCallReady to true>>
<</if>>
<</if>>
/* Jack: after movie, 1 sleep → shoulder massage offer ready */
<<if $day6.jackMovie and not $day6.jackShoulderReady and not $day6.jackShoulderDone>>
<<set $day6.jackShoulderWaitSleeps to Number($day6.jackShoulderWaitSleeps || 0) + 1>>
<<if $day6.jackShoulderWaitSleeps gte 1>>
<<set $day6.jackShoulderReady to true>>
<</if>>
<</if>>
/* Jack: after shoulder offer, 3 sleeps + Corruption >= 20 → full massage (Jack's room evening) */
<<if $day6.jackShoulderDone and not $day6.jackFullMassageReady and not $day6.jackFullMassageDone>>
<<set $day6.jackFullMassageWaitSleeps to Number($day6.jackFullMassageWaitSleeps || 0) + 1>>
<<if $day6.jackFullMassageWaitSleeps gte 3 and Number($player.corruption) gte 20>>
<<set $day6.jackFullMassageReady to true>>
<</if>>
<</if>>
/* Also re-check corruption if wait already done */
<<if $day6.jackShoulderDone and not $day6.jackFullMassageDone and $day6.jackFullMassageWaitSleeps gte 3 and Number($player.corruption) gte 20>>
<<set $day6.jackFullMassageReady to true>>
<</if>>
/* Jack: after full massage, 2 sleeps → morning kitchen jog (KD12) */
<<if $day6.jackFullMassageDone and not $day6.jackJogReady and not $day6.jackJogDone>>
<<set $day6.jackJogWaitSleeps to Number($day6.jackJogWaitSleeps || 0) + 1>>
<<if $day6.jackJogWaitSleeps gte 2>>
<<set $day6.jackJogReady to true>>
<</if>>
<</if>>
/* Main: after Evan lore — wait 5 sleeps → Kelly phone / forest pond */
<<if $day6.kellyEvanDone and not $day6.kellyForestReady and not $day6.pondVisionDone>>
<<set $day6.kellyForestWaitSleeps to Number($day6.kellyForestWaitSleeps || 0) + 1>>
<<if $day6.kellyForestWaitSleeps gte 5>>
<<set $day6.kellyForestReady to true>>
<<set $day6.phoneNotif to true>>
<<run setup.Phone.seedKellyForestMessage()>>
<</if>>
<</if>>
/* Main: after Albert route unlock — wait 3 sleeps → Kelly diary message (LD214) */
<<if $day6.albertRoute and not $day6.kellyDiaryReady and not $day6.kellyDiaryDone>>
<<set $day6.kellyDiaryWaitSleeps to Number($day6.kellyDiaryWaitSleeps || 0) + 1>>
<<if $day6.kellyDiaryWaitSleeps gte 3>>
<<set $day6.kellyDiaryReady to true>>
<<set $day6.phoneNotif to true>>
<<run setup.Phone.seedKellyDiaryMessage()>>
<</if>>
<</if>>
/* Liam: after locker scene — wait 3 sleeps → story photo (independent of pond) */
<<if $day6.liamLockerDone and not $day6.liamFollowReady and not $day6.liamFollowDone>>
<<set $day6.liamFollowWaitSleeps to Number($day6.liamFollowWaitSleeps || 0) + 1>>
<<if $day6.liamFollowWaitSleeps gte 3>>
<<set $day6.liamFollowReady to true>>
<<set $day6.phoneNotif to true>>
<</if>>
<</if>>
/* Liam basketball challenge: 1 sleep after story photo / Liam chat */
<<if ($day6.liamFollowDone or $day6.liamStoryPosted) and not $day6.bsd14Ready and not $day6.bsd14Done>>
<<set $day6.bsd14WaitSleeps to Number($day6.bsd14WaitSleeps || 0) + 1>>
<<if $day6.bsd14WaitSleeps gte 1>>
<<set $day6.bsd14Ready to true>>
<</if>>
<</if>>
/* Liam date/practice: 1 sleep after BSD14 challenge */
<<if $day6.bsd14Done and not $day6.liamDateReady and not $day6.liamDateDone>>
<<set $day6.liamDateWaitSleeps to Number($day6.liamDateWaitSleeps || 0) + 1>>
<<if $day6.liamDateWaitSleeps gte 1>>
<<set $day6.liamDateReady to true>>
<<run setup.Phone.refreshNotes()>>
<</if>>
<</if>>
/* Albert: next morning after route unlock → job talk ready */
<<if $day6.albertRoute and not $day6.albertJobTalkDone>>
<<set $day6.albertJobReady to true>>
<</if>>
/* Ekon delivery job: reset daily shift (1 shift = 10 XP max per day) */
<<set $day6.ekonShiftToday to false>>
<<set $day6.ekonShiftActive to false>>
<<set $day6.ekonQueue to null>>
<<set $day6.ekonStop to 0>>
<<if ndef $ekonJob>><<set $ekonJob to { level: 1, xp: 0, shiftsTotal: 0 }>><</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily sinks into the bed. Portugal air through the window. Whatever is unfinished can wait - sleep does not cancel it.</p>
<p>Morning comes when she is ready. Cafe shifts reset. Class is open again. Clothes are back to sleepwear until she changes.</p>
<<if ($ntr or $ntr_david) and $day6.davidCounterReady and not $day6.davidCounterDone>>
[[Get up|D6 David Cheat Counter]]
<<elseif $day6.kellyCallReady and not $day6.kellyEvanDone>>
[[Get up|D6 Kelly Call]]
<<elseif $day6.kellyForestReady and not $day6.kellyForestMsgSeen>>
[[Get up|D6 Phone Notify B2]]
<<elseif $day6.kellyDiaryReady and not $day6.kellyDiaryDone>>
[[Get up|D6 Kelly Diary Call]]
<<elseif $day6.liamFollowReady and not $day6.liamFollowDone>>
[[Get up|D6 Liam Story Choice]]
<<elseif $day6.jackGirlNightDone and not $day6.albertDay15Done>>
[[Get up|D6 Albert Day15 Knock]]
<<elseif $day6.metKelly and not $day6.kellyKitchenDone>>
[[Get up|D6 Kitchen Kelly Morning]]
<<elseif $day6.vialTestReady and not $day6.jackVialDrop>>
[[Get up|D6 Kitchen Jack Vial]]
<<elseif $day6.jackJogReady and not $day6.jackJogDone>>
[[Get up|D6 Kitchen Jack Jog]]
<<else>>
[[Get up|D6 House Map]]
<</if>><<set $world.location to "Portugal - cafe">>
<<set $day5.cafeVisited to true>>
<<if $day5.hornyMode>>
<<goto "D5 Cafe Horny Vision">>
<</if>>
<<= setup.locBannerHtml("cafe", "Cafe", $world.time + " - Portugal")>>
<p>A small corner cafe - warm light, chalk menu in Portuguese and English, the smell of espresso and fried pastry. A few locals nurse cups. Behind the counter, a receptionist with a tired smile and a name tag that might say <em>Sofia</em>.</p>
<<if $day5.cafeJobAsked>>
<p>
<npc>Receptionist:</npc> You're the one who asked about work, right? Manager still wants you in the morning. We're closing soon tonight.
</p>
<p>
<e>I'll be here. Thanks.</e>
</p>
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]
<<else>>
<p>
<npc>Receptionist:</npc> Welcome. Table for one, or just looking?
</p>
<p>
<et>I can ask about work - or leave without making it a thing.</et>
</p>
<<link 'Ask for work' "D5 Cafe Ask Work">><</link>>
[[Just look around|D5 Cafe Look]]
[[Town map|D5 Town Map]]
<</if>><<set $day5.hornyCafeDone to true>>
<<set $world.location to "Portugal - cafe">>
<<= setup.locBannerHtml("cafe", "Cafe", $world.time + " - Portugal")>>
<p>The bell above the door chimes. Warm light, espresso smell - and that low, restless heat still coiled in her stomach from the forest.</p>
<p>Behind the counter, the receptionist looks up and smiles, wiping her hands on her apron. Perfectly ordinary. Emily's mind does not cooperate.</p>
<p>Before she can stop it, her thoughts run somewhere filthy - the counter cleared, the receptionist's apron on the floor, the two of them tangled together, hips grinding slow against each other, moans swallowed by the espresso machine's hiss.</p>
<video src="Images/Forest/Da1_vial/scissor.mp4" autoplay loop muted playsinline style="width:220px;max-width:60%;display:block;margin:0 auto;border-radius:10px;"></video>
<p>
<et>Oh god. Oh god, where did that come from...</et>
</p>
<p>
<npc>Receptionist:</npc> Hi there - how can I help you?
</p>
<p>Emily opens her mouth. Nothing comes out. Her face is burning, and she is fairly sure it shows.</p>
<p>She turns and walks straight back out, heart hammering, not trusting herself to stay a second longer.</p>
<<toast "That drink is still messing with her head">>
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]<<set $world.location to "Portugal - cafe">>
<<set $day5.cafeVisited to true>>
<p>She browses the pastry case and the window seats. No purchase yet - just the map of a place she might return to with money and a shift.</p>
<<link 'Ask for work' "D5 Cafe Ask Work">><</link>>
[[Town map|D5 Town Map]]<<set $world.location to "Portugal - cafe">>
<<set $day5.cafeVisited to true>>
<p>Emily steps up to the counter, shoulders square.</p>
<p>
<e>Hi. I just arrived in town. Do you have any openings? I was hoping to ask about work.</e>
</p>
<p>The receptionist looks her over - not unkind, just practical - then glances at a closed office door.</p>
<p>
<npc>Receptionist:</npc> Manager's gone for the evening. I can take your name... but first - any prior experience? Serving, counter, kitchen?
</p>
[[I used to work at a cafe|D5 Cafe Experience Yes]]
[[No real experience|D5 Cafe Experience No]]
[[Never mind|D5 Cafe]]<<set $world.location to "Portugal - cafe">>
<<set $day5.cafeJobAsked to true>>
<<set $day5.cafeExperience to true>>
<<run setup.Phone.refreshNotes()>>
<p>
<e>Yeah. I used to work at a cafe back home - shifts, register, the rush hours. I know how it goes.</e>
</p>
<p>The receptionist softens a little, already reaching for a napkin and a pen.</p>
<p>
<npc>Receptionist:</npc> That helps. Write your name and a number where we can reach you. Come tomorrow morning - if the manager likes your face, you'll get a trial shift.
</p>
<p>Emily scrawls her name. Uncle's house number. The napkin slides under the register.</p>
<p>
<npc>Receptionist:</npc> Don't be late. We open early.
</p>
<p>
<e>I won't. Thank you.</e>
</p>
<<toast "Cafe: interview tomorrow morning">>
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]<<set $world.location to "Portugal - cafe">>
<<set $day5.cafeJobAsked to true>>
<<set $day5.cafeExperience to false>>
<<run setup.Phone.refreshNotes()>>
<p>
<e>Honestly? Not really. I'm a fast learner though.</e>
</p>
<p>The receptionist shrugs, not unfriendly.</p>
<p>
<npc>Receptionist:</npc> Manager prefers people who've done it before... but leave your name anyway. Tomorrow morning. No promises.
</p>
<p>Emily writes her name on the napkin. It still goes under the register.</p>
<p>
<npc>Receptionist:</npc> Early. Don't be late if you show.
</p>
<<toast "Cafe: name left - no experience noted">>
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]
/* -----------------------------------------------------------
Portugal Cafe - job path (XP, max level 5, 2 shifts / work day)
----------------------------------------------------------- */<<set $world.location to "Portugal - cafe">>
<<run setup.cafeEnsure("portugal")>>
<<if ndef $day6.cafeShiftsToday>><<set $day6.cafeShiftsToday to 0>><</if>>
<<if $day5.cafeJobAsked>><<set $day6.cafeHired to true>><</if>>
<<if not $day6.cafeHired>>
<<goto "D6 Cafe Not Hired">>
<</if>>
<<set _lvl to Math.clamp(Number($cafeJobPortugal.level) || 1, 1, setup.cafeMaxLevel("portugal"))>>
<<set _xp to Math.clamp(Number($cafeJobPortugal.xp) || 0, 0, 100)>>
<<set _pay to setup.cafePay("portugal")>>
<<set _rank to setup.cafeRankName(_lvl)>>
<<set _open to ($world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon")>>
<<set _canWork to (_open and $day6.cafeShiftsToday lt 2)>>
<<= setup.locBannerHtml("cafe", "Cafe", $world.time + " - Portugal")>>
<div class="cafe-panel">
<div class="cafe-panel-header">
<div class="cafe-panel-brand">
<div class="cafe-panel-title">Portugal Cafe</div>
<div class="cafe-panel-sub">Job - <<= $world.time>> - max Lv 5 · separate from hometown</div>
</div>
<<if not _open>>
<span class="cafe-panel-status is-closed">Closed</span>
<<elseif $day6.cafeShiftsToday gte 2>>
<span class="cafe-panel-status is-closed">Shifts full</span>
<<else>>
<span class="cafe-panel-status">Open</span>
<</if>>
</div>
<div class="cafe-panel-body">
<div class="cafe-job-row">
<div class="cafe-rank"><span class="cafe-rank-level">Lv <<= _lvl>></span> - <<= _rank>></div>
<div class="cafe-pay">$<<= _pay>> / shift</div>
</div>
<div class="cafe-xp-wrap">
<div class="cafe-xp-meta">
<span>Promotion XP</span>
<span><<= _xp>> / 100</span>
</div>
<div class="cafe-xp-bar" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="<<= _xp>>">
<div class="cafe-xp-fill" style="width:<<= _xp>>%"></div>
</div>
</div>
<div class="cafe-shifts-row">
<span class="cafe-shifts-label">Today <<= $day6.cafeShiftsToday>> / 2 shifts</span>
<div class="cafe-shift-slots" aria-hidden="true">
<span class="cafe-slot<<if $day6.cafeShiftsToday gte 1>> is-done<<elseif _canWork>> is-next<</if>>"></span>
<span class="cafe-slot<<if $day6.cafeShiftsToday gte 2>> is-done<<elseif $day6.cafeShiftsToday is 1 and _canWork>> is-next<</if>>"></span>
</div>
</div>
</div>
</div>
<p>Warm espresso air. Chalk menu in two languages. The apron hook waits if she wants hours.</p>
<<if not _open>>
<p>Closed for the evening. Come back Morning through Afternoon.</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<elseif $day6.cafeShiftsToday gte 2>>
<p>Two shifts is the limit for this work day. Sleep resets the counter - quests do not.</p>
[[Buy a coffee|D6 Cafe Coffee]]
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<else>>
<div class="cafe-actions">
<<link `'<span class="loc-card"><span class="loc-name">Work a shift</span><span class="loc-sub">' + (Number($day6.cafeShiftsToday) + 1) + '/2 - +$' + _pay + ' - +20 XP</span></span>'` "D6 Cafe Shift">><</link>>
<<if not $day6.cafePromoAccepted and ((_lvl is 2 and _xp gte 100) or _lvl gte 3)>>
<<link '<span class="loc-card"><span class="loc-name">Talk to the owner</span><span class="loc-sub">He wants a word</span></span>' "D6 Cafe Owner Talk">><</link>>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Buy a coffee</span><span class="loc-sub">$5 - Energy</span></span>' "D6 Cafe Coffee">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Town</span><span class="loc-sub">Leave</span></span>' "D6 Town Map">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Home</span><span class="loc-sub">Uncle\'s house</span></span>' "D6 House Map">><</link>>
</div>
<</if>><<set $world.location to "Portugal - cafe">>
<p>Same chalk menu. Same espresso smell. Without a job on file, she is just a customer.</p>
<p>
<npc>Receptionist:</npc> Coffee only, or looking for work?
</p>
<<link 'Ask for work' "D6 Cafe Ask Work">><</link>>
[[Buy a coffee|D6 Cafe Coffee]]
[[Town map|D6 Town Map]]<<set $world.location to "Portugal - cafe">>
<<set $day5.cafeJobAsked to true>>
<<set $day5.cafeVisited to true>>
<<run setup.Phone.refreshNotes()>>
<p>
<e>Do you have openings? I can work.</e>
</p>
<p>
<npc>Receptionist:</npc> Any experience?
</p>
[[I used to work at a cafe|D6 Cafe Exp Yes]]
[[Not really|D6 Cafe Exp No]]<<set $day5.cafeExperience to true>>
<<set $day5.cafeJobAsked to true>>
<<set $day6.cafeHired to true>>
<<run setup.Phone.refreshNotes()>>
<p>
<npc>Receptionist:</npc> Good. You're on the board. Shifts run Morning through Afternoon - two max per work day. XP toward promotion up to Lead.
</p>
<<toast "Cafe job unlocked">>
[[Cafe counter|D6 Cafe]]<<set $day5.cafeExperience to false>>
<<set $day5.cafeJobAsked to true>>
<<set $day6.cafeHired to true>>
<<run setup.Phone.refreshNotes()>>
<p>
<npc>Receptionist:</npc> Fine. Trial hire. Same rules - two shifts a day, XP for levels. Don't drop cups.
</p>
<<toast "Cafe job unlocked">>
[[Cafe counter|D6 Cafe]]<<set $world.location to "Portugal - cafe">>
<<if $day6.cafeShiftsToday gte 2 or not ($world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon")>>
<<goto "D6 Cafe">>
<</if>>
<<set _result to setup.cafeDoShift("portugal")>>
<<run setup.Phone.refreshNotes()>>
<p>Apron. Register. Cups and small talk. Feet hurt in a familiar, honest way.</p>
<p>
<npc>Receptionist:</npc> Good shift. Here's your cut.
</p>
<<if _result.leveled>>
<<toast `"+$" + _result.pay + " - Level up! Lv " + _result.level`>>
<<elseif _result.xpCapped>>
<<toast `"+$" + _result.pay + " - Lv 2 maxed - talk to the owner about a promotion"`>>
<<else>>
<<toast `"+$" + _result.pay + " - +20 XP (" + _result.xp + "/100)"`>>
<</if>>
/* Random customer event after every shift */
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Continue</span><span class="loc-sub">Something happens...</span></span>' "D6 Cafe Event">><</link>>
</div><<set $world.location to "Portugal - cafe">>
<<set $day6.cafePromoOffered to true>>
<p>The owner waves her over once the counter clears, drying his hands on a rag, voice pitched low so the regulars don't catch it.</p>
<p>
<npc>Owner:</npc> You're good with the customers. Better than good. I could bump you up properly - real tips, not just wages - but it means playing along when they get handsy. Flirt back a little. Make them want to come back and spend more.
</p>
<p>
<et>He's basically asking me to encourage it... for money.</et>
</p>
<div class="cafe-actions">
<<if $player.corruption gte 20>>
<<link '<span class="loc-card"><span class="loc-name">Accept the promotion</span><span class="loc-sub">Flirt back for tips</span></span>' "D6 Cafe Owner Accept">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Accept the promotion</span><span class="loc-sub">Locked - requires Corruption 20+</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Not yet</span><span class="loc-sub">Back to the counter</span></span>' "D6 Cafe">><</link>>
</div><<set $world.location to "Portugal - cafe">>
<<set $day6.cafePromoAccepted to true>>
<<run setup.cafeEnsure("portugal")>>
<<set $cafeJobPortugal.level to 3>>
<<set $cafeJobPortugal.xp to 0>>
<p>
<e>Okay. I'm in.</e>
</p>
<p>
<npc>Owner:</npc> Good girl. Keep the regulars happy and they'll keep coming back to you.
</p>
<<toast "Cafe promotion! Level 3 - flirting back for tips">>
[[Back to the counter|D6 Cafe]]<<set _cx to setup.cafeExits()>>
<<set $flags.cafeTown to _cx.town>>
<<set $flags.cafeHome to _cx.home>>
<<set $flags.cafeNight to _cx.night>>
<<set $world.location to "Portugal - cafe">>
<<run setup.cafeEnsure("portugal")>>
<<if ndef $day6.cafeGropeCorGiven>><<set $day6.cafeGropeCorGiven to false>><</if>>
<<set _lvl to Number($cafeJobPortugal.level) || 1>>
<<set _roll to random(1, 3)>>
<<if _lvl lte 1>>
/* ── LEVEL 1: flirting (4 variants) ── */
<<set _roll to random(1, 4)>>
<<if _roll is 1>>
<p>A guy about her age leans on the pickup counter while she wipes down the steam wand, forearms braced, gaze dragging slow from her mouth to the soft push of her chest against the apron ties.</p>
<p>
<npc>Customer:</npc> You make that look illegal. The coffee, I mean. Mostly.
</p>
<p>Heat crawls up her neck, a small pleased flush she doesn't quite hide. When she slides his cup across, his fingers cover hers a second too long - warm, deliberate - thumb stroking the back of her hand like a promise. She lets it happen a beat longer than she needs to.</p>
<p>
<e>...Enjoy your drink.</e>
</p>
<p>
<npc>Customer:</npc> I'd enjoy the view more if you worked my table all day.
</p>
<p>She catches herself smiling after he's gone, biting the inside of her cheek. He tips more than the drink costs. Her pulse sits low and warm. She tells herself it's just flirting.</p>
<<elseif _roll is 2>>
<p>The cafe thins for two minutes - just her and a man in a linen shirt who smells like sunscreen and espresso money. He asks for "whatever you like," voice low, eyes tracing her mouth when she recites the specials.</p>
<p>
<npc>Stranger:</npc> Pretty baristas should get hazard pay. The way that apron sits on you... damn.
</p>
<p>She laughs it off - light, a little breathless - and lets her hip tilt against the counter, unhurried, when she turns for the syrups. She can feel his gaze on her like fingertips.</p>
<p>
<npc>Stranger:</npc> Bet you taste sweeter than the caramel.
</p>
<p>Cup down, a slow look back over her shoulder before she walks away. Tip jar fattens. Flirting is free. Wanting is the expensive part.</p>
<<elseif _roll is 3>>
<p>A regular she's seen before - sunburnt shoulders, easy smile - corners her near the pastry case under the excuse of "which pastel de nata." He stands closer than the aisle needs, and she doesn't step back.</p>
<p>
<npc>Regular:</npc> You always this cute when you're working, or is today special?
</p>
<p>
<e>Depends who's asking.</e>
</p>
<p>
<npc>Regular:</npc> Bold answer. I like it. All focused, lips parted when you steam the milk - people notice, you know.
</p>
<p>She tucks a loose strand of hair behind her ear, slow, aware of exactly where his eyes go. He leaves a stupid-big tip and a wink. Just words. Mostly.</p>
<<else>>
<p>A tourist waits at the counter longer than his order needs, sunglasses pushed up into his hair, clearly enjoying the view while she works the espresso machine.</p>
<p>
<npc>Customer:</npc> Do you get a discount for being the best-looking thing in this place?
</p>
<p>She arches a brow, playing it up a little, sliding his cup across with two fingers instead of a full palm - a small, deliberate tease.</p>
<p>
<e>Only if you ask nicely - and tip well.</e>
</p>
<p>
<npc>Customer:</npc> Worth every euro.</p>
<p>He leaves grinning, glancing back once at the door. She catches herself watching him go, a little thrill she doesn't examine too closely.</p>
<</if>>
<<else>>
/* ── LEVEL 2+: stranger groping (toned down) ── */
<<if _roll is 1>>
<img src="Images/Hometown/cafe_ass_grope.gif">
<p>Rush hour crush at the register. Bodies packed. Someone behind her in the staff squeeze-space - a tall stranger who "got lost" reaching for a lid - presses in when the line surges.</p>
<p>A hand lands on her waist first. Then lower - palm settling over the curve of her ass through her shorts, one firm squeeze like he's testing his luck. She gasps; the milk pitcher nearly tips.</p>
<p>
<e>Hey-!</e>
</p>
<p>His mouth is at her ear, breath warm, the cafe noise a wall that hides everything.</p>
<p>
<npc>Stranger:</npc> Shh. Keep smiling. They'll think you're friendly.
</p>
<p>The hand lingers a beat too long, then lifts away as the line surges again. Her face is hot, pulse loud in her own ears.</p>
<<elseif _roll is 2>>
<img src="Images/Hometown/cafe_ass_grope2.gif">
<p>She crouches by the low shelf to restock cups. A man at the pickup edge "drops" his receipt and bends down with her - too close - his hand landing on her hip as he "steadies" himself.</p>
<p>It slides, slow and obvious, until it's cupping her ass through the fabric - a squeeze, unhurried, like he's allowed.</p>
<p>
<npc>Stranger:</npc> Sorry - lost my balance there. Worth it, though.
</p>
<p>She straightens fast, putting the counter between them, cheeks scarlet.</p>
<<else>>
<img src="Images/Hometown/grope_tits.gif">
<p>End of the rush. She carries a tray of dirty cups toward the back. In the narrow storeroom hall - dim, smelling of coffee grounds - a customer who "needed the restroom" blocks her path.</p>
<p>He leans in under the excuse of reaching past her, and his hand cups her breast through her top - a slow, deliberate squeeze, thumb dragging once over where her nipple presses the fabric.</p>
<p>
<e>Wait- what are you-</e>
</p>
<p>
<npc>Stranger:</npc> Just admiring the view. Can't blame a guy.
</p>
<p>He steps back and ambles out, whistling. She stands frozen a moment, face burning.</p>
<</if>>
<<if not $day6.cafeGropeCorGiven>>
<<set $day6.cafeGropeCorGiven to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<div class="cafe-actions">
<<if $day6.cafePromoAccepted>>
<<link '<span class="loc-card"><span class="loc-name">Flirt back</span><span class="loc-sub">Extra tip</span></span>' "D6 Cafe Flirt Back">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Flirt back</span><span class="loc-sub">Locked - reach level 3</span></span>
<</if>>
</div>
<</if>>
<<if $world.time is "Evening" or $world.time is "Night">>
<p>Windows show evening. Cafe is done for the day.</p>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">End the day</span></span>' `$flags.cafeHome`>><</link>>
</div>
<<else>>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Cafe counter</span><span class="loc-sub">Back</span></span>' "D6 Cafe">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Home</span><span class="loc-sub">Uncle\'s house</span></span>' `$flags.cafeHome`>><</link>>
</div>
<</if>><<set $world.location to "Portugal - cafe">>
<<set $player.money to Number($player.money) + 10>>
<p>Instead of pulling away, she leans into it for a second - a small, deliberate smile over her shoulder, a slow blink that says she noticed and doesn't entirely mind.</p>
<p>
<e>...Careful. Someone might think you actually know what you're doing.</e>
</p>
<p>He laughs, flustered now that she's the one holding the moment, and folds an extra bill into the tip jar on his way out.</p>
<<toast "Extra tip +$10">>
<<if $world.time is "Evening" or $world.time is "Night">>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Go home</span><span class="loc-sub">End the day</span></span>' `$flags.cafeHome`>><</link>>
</div>
<<else>>
<div class="cafe-actions">
<<link '<span class="loc-card"><span class="loc-name">Cafe counter</span><span class="loc-sub">Back</span></span>' "D6 Cafe">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' `$flags.cafeTown`>><</link>>
<<link '<span class="loc-card"><span class="loc-name">Home</span><span class="loc-sub">Uncle\'s house</span></span>' `$flags.cafeHome`>><</link>>
</div>
<</if>><<set $world.location to "Portugal - cafe">>
<<if $player.money gte 5>>
<<set $player.money to Number($player.money) - 5>>
<<set $player.energy to Math.clamp(Number($player.energy) + 5, 0, 100)>>
<<toast "Coffee -$5 - Energy +5">>
<p>Warm cup. Bitter comfort. Five euros well spent.</p>
<<else>>
<p>She checks her wallet. Not enough for coffee ($5) right now.</p>
<</if>>
[[Cafe counter|D6 Cafe]]
[[Town map|D6 Town Map]]<<if $player.outfit is "sleep" or not $day6.dressed>>
<<goto "D6 College Not Ready">>
<</if>>
<<set $world.location to "Portugal - college gates">>
<<if $world.time is "Night">>
<<set $world.time to "Evening">>
<</if>>
<<if ndef $day6>><<set $day6 to {}>><</if>>
<<if ndef $day6.girlsMuscleWaitSleeps>><<set $day6.girlsMuscleWaitSleeps to 0>><</if>>
<<if ndef $day6.girlsMuscleReady>><<set $day6.girlsMuscleReady to false>><</if>>
<<if ndef $day6.girlsMuscleSeen>><<set $day6.girlsMuscleSeen to false>><</if>>
<<set $day6.leftHome to true>>
<<if $day6.girlsMuscleReady and not $day6.girlsMuscleSeen>>
<<goto "D6 Girls Muscle Party Event">>
<</if>>
/* Independent principal path: no-bra day */
<<if $day6.noBraDay and not $day6.wearingBra and not $day6.principalPunishDone and not $day6.noBraTaped>>
<<goto "D6 College No Bra">>
<</if>>
/* After Jack vial test: college food-container drop (original CD11 / ND11) */
<<if $day6.jackVialDrop and not $day6.collegeFoodDrop>>
<<goto "D6 College Vial Drop">>
<</if>>
<p>Emily walks through the college gates. New branch, same smell of floor wax and coffee. Students cut across the quad.</p>
<img src="Images/2.8/14.jpg">
<p>
<et>Finally... something like normal. Just campus - and whatever that diary was pointing at.</et>
</p>
[[Enter campus|D6 College Map]]
/* Vial day: stumble into cafeteria food cart (original ND11) */<<set $world.location to "Portugal - college hall">>
<<set $day6.collegeFoodDrop to true>>
<<set $day6.hasVial to false>>
<<set $day6.leftHome to true>>
<<set $day6.classDone to true>>
<<set $day6.collegeDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped into the college building, the familiar chatter and footsteps echoing off the walls. Her bag hung loosely from her shoulder, and her eyes scanned the faces moving past her in the hallway.</p>
<p>She leaned against a pillar, watching the wave of students filter through.</p>
<p>
<et>Alright... time to spot him.</et>
</p>
<p>Some classmates waved at her. She smiled back casually, but her attention remained sharp. The vial in her pocket felt heavier than it should have. Her heart raced - not out of nerves, but anticipation.</p>
<p>Just then, she spotted him near the locker row - tall, athletic, laughing with a few teammates. Liam.</p>
<p>Emily took a breath and began walking confidently toward him. She was about to test her plan.</p>
<p>
<et>Just walk normal. Smile a bit. Say something casual...</et>
</p>
<p>But fate had other plans.</p>
<p>Her shoe caught the edge of a loose tile, and-</p>
<p><strong>THUD!</strong></p>
<p>Emily stumbled forward. The vial bounced once on the floor and dropped straight into a nearby open metal container sitting on a cart - clearly headed toward the cafeteria. A staff member had just wheeled it out of the kitchen for delivery.</p>
<p>At the same time, her skirt flipped up just enough to give anyone watching a brief, embarrassing glimpse of her panties.</p>
<img src="Images/1.5/13.jpg">
<p>
<e>Ugh! Not now!</e>
</p>
<p>She scrambled to fix her skirt. Before she could stand on her own, a hand reached down.</p>
<p>
<liam>Hey, you okay?</liam>
</p>
<p>It was him. The boy she was heading toward. The very subject of her experiment.</p>
<p>Emily blinked up at him, cheeks flushed.</p>
<p>
<e>Y-Yeah, I just... slipped.</e>
</p>
<p>He gently helped her up.</p>
<p>
<et>Wait... no way. Did it... go in there?</et>
</p>
<p>Liam picked up his container casually, lifted it, and took a sip.</p>
<p>Emily stared, frozen in place.</p>
[[Next|D6 College Vial Drop 2]]<<set $world.location to "Portugal - college hall">>
<<run setup.Phone.refreshNotes()>>
<p>Emily blinked, trying to gather her senses as Liam still held her hand a second too long.</p>
<p>
<liam>That was a hard fall. You sure you're not hurt?</liam>
</p>
<p>Emily nodded quickly, eyes darting to the container now being carted off - and to the cup still in his other hand.</p>
<p>
<e>Yeah. Just surprised me, that's all.</e>
</p>
<p>There was a short silence. She could feel him looking at her. Her mind was screaming about the dropped liquid.</p>
<p>
<liam>Was that yours? The bottle thing?</liam>
</p>
<p>
<e>I... yeah. It was nothing important. Just... water.</e>
</p>
<p>She knew it was a lame excuse, but her brain couldn't come up with anything better.</p>
<p>
<liam>Okay. Well... glad you're alright.</liam>
</p>
<p>
<e>Thanks. I should... I should get to class.</e>
</p>
<p>
<liam>Yeah, of course.</liam>
</p>
<p>They stood in silence for one more awkward beat before Emily turned and hurried away - heart racing, legs shaky, and thoughts an absolute mess.</p>
<<toast "The sample is gone">>
[[Class|D6 Spill Class]]
/* ═══════════════════════════════════════════════════════════
After food-cart spill — class + hall hub (CLD11 / CLD211)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - classroom">>
<<set $day6.collegeSpillClassDone to true>>
<<set $day6.classDone to true>>
<<set $day6.collegeDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily slipped quietly into the classroom, her heart still pounding from the embarrassing hallway encounter. She scanned the room quickly - thankfully, no one seemed to be paying much attention to her.</p>
<p>
<et>Why does this stuff always happen to me?</et>
</p>
<p>Her cheeks still slightly flushed as she made her way to her seat. Her mind replayed the moment on a loop - the fall, the visible panties, his eyes meeting hers. She buried her face in her hands for a moment.</p>
<p>
<et>Of all the people... why him? Why now?</et>
</p>
<p>She took a deep breath and tried to compose herself. Just another awkward day. She sat down, pulled out her notebook, and forced her focus onto the blackboard.</p>
<p>The door opened again with a creak, and the Maths teacher stepped in - an older man with tired eyes and a voice that somehow always made numbers sound even duller.</p>
<p>
<npc>Teacher:</npc> Alright, everyone. Settle down. Let's begin with quadratic equations today.
</p>
<p>Emily stared blankly at her page, trying to follow along, but her mind wandered. Her crush. The liquid. The cafeteria. Everything felt tangled.</p>
<p>Still, she scribbled in her notebook, doing her best to stay present - even as her heart thudded with leftover anxiety.</p>
[[Hall|D6 Spill Hall]]<<set $world.location to "Portugal - college hall">>
<<run setup.Phone.refreshNotes()>>
<<= setup.locBannerHtml("hallway", "College Hall", $world.time)>>
<p>Emily stood near the edge of the hallway, her eyes casually drifting toward the cafeteria entrance. Her thoughts weren't on the buzzing chatter of students or the echoing footsteps in the corridor.</p>
<<if $day6.liamLockerDone and $day6.principalPeekDone and $day6.toiletOrgyDone>>
<p>She's seen enough for one day. The gates are open. Kelly will call when it's time - not now.</p>
[[Leave campus|D6 Leave College]]
<<else>>
<p>Something is off on campus. She can feel it in the air.</p>
<div class="loc-grid">
<<if $day6.liamCourtReady and not $day6.liamCourtDone>>
<<link '<span class="loc-card"><span class="loc-name">Basketball court</span><span class="loc-sub">Liam is waiting</span></span>' "D6 Basketball Liam">><</link>>
<<elseif not $day6.liamLockerDone>>
<<link '<span class="loc-card"><span class="loc-name">Basketball court</span><span class="loc-sub">Find Liam</span></span>' "D6 Spill Basketball">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Basketball court</span><span class="loc-sub">Already checked</span></span>
<</if>>
<<if not $day6.principalPeekDone>>
<<link '<span class="loc-card"><span class="loc-name">Principal room</span><span class="loc-sub">Strange sounds</span></span>' "D6 Principal Peek">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Principal room</span><span class="loc-sub">Already checked</span></span>
<</if>>
<<if not $day6.toiletOrgyDone>>
<<link '<span class="loc-card"><span class="loc-name">Toilet</span><span class="loc-sub">Strange sounds</span></span>' "D6 Spill Toilet">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Toilet</span><span class="loc-sub">Already checked</span></span>
<</if>>
</div>
<</if>><<set $world.location to "Portugal - basketball court">>
<<set $day6.liamLockerDone to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>The cool evening breeze brushed against her flushed skin. Her feet led her to the basketball court - maybe out of habit, or maybe because her thoughts had drifted again to him.</p>
<p>Her crush. Tall. Athletic. Kind eyes that made her melt when he smiled.</p>
<p>The court was mostly empty now. A few scattered voices echoed from the far side, but not him. She glanced around, heart sinking.</p>
<p>
<e>Maybe he's inside... changing?</e>
</p>
<p>She hesitated, but curiosity got the better of her.</p>
<p>The locker room was quiet when she pushed the door open - only the faint hum of fluorescent lights overhead. She stepped inside slowly, careful not to make noise. The faint creak of a bench, a rhythmic sound, and a low grunt made her stop in her tracks.</p>
<p>She turned the corner and froze.</p>
<p>There he was. Liam. Back against the locker, shorts down to his thighs, one hand wrapped around his hard cock - and in the other, her photo.</p>
<p>
<e>W-What the hell...</e>
</p>
<p>She breathed silently. She stared, wide-eyed, unable to move.</p>
<p>He groaned softly, thumb brushing over the photo like it was sacred. Then he whispered her name under his breath.</p>
<p>
<liam>Emily...</liam>
</p>
<p>Her knees felt weak. A shiver shot through her. Her cheeks burned with heat - not just from embarrassment, but something else. Excitement.</p>
<p>She wanted to look away... but couldn't. Just the idea that he thought of her this way - that he desired her - made her body hum with confused energy.</p>
<p>His pace quickened. He was close.</p>
<p>Unable to stop herself, Emily slipped her hand under her skirt. Her fingers found her already wet panties and gently started rubbing her clit in slow circles, matching his rhythm. Soft, shaky breaths escaped her lips as she watched him stroke himself to her picture.</p>
<img src="Images/2.4/2.webp">
<p>
<et>Oh god... he's masturbating to me... and I'm touching myself while watching him... this is so wrong... but it feels so good...</et>
</p>
<p>She bit her lip hard to stay quiet, her fingers moving faster as his strokes became more desperate.</p>
<p>He groaned her name again, louder this time.</p>
<p>
<liam>Fuck... Emily...</liam>
</p>
<p>That pushed her over the edge. A small, muffled whimper escaped her as a quick, intense orgasm rippled through her body. She quickly pulled her hand away, legs trembling.</p>
<img src="Images/2.4/3.gif">
<p>Back outside, she pressed a hand to her lips, face flushed and breathing uneven.</p>
<p>
<e>He... was doing that to me... and I just...</e>
</p>
<p>She didn't know whether to be scared... or thrilled. But she knew one thing: something inside her had changed.</p>
<<toast "Corruption +1">>
[[Hall|D6 Spill Hall]]<<set $world.location to "Portugal - principal office">>
<<set $day6.principalPeekDone to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily's heels clicked softly against the polished corridor floor as she made her way through the administration wing. The building was unusually quiet - most of the staff had already gone home - but she still needed to drop off a form for one of her professors.</p>
<p>As she passed the principal's office, a strange sound caught her attention. A faint, wet rhythm. Followed by a deep, low hum.</p>
<p>She froze, leaning slightly toward the door. The blinds covering the slim glass panel weren't fully shut, leaving a narrow gap.</p>
<p>
<et>...What is that sound?</et>
</p>
<p>Her pulse quickened. She stepped closer, careful not to let her shoes scuff the floor. Slowly, she angled herself toward the gap and peeked inside.</p>
<p>Her eyes widened.</p>
<p>Her history teacher was kneeling in front of the principal's desk. Her hair spilled over her shoulders as her head bobbed rhythmically in his lap. The principal was leaning back, one hand tangled in her hair, his lips parted in a quiet groan.</p>
<img src="Images/1.5/16.gif">
<p>
<e>Oh my god...</e>
</p>
<p>Emily couldn't look away. The slick, obscene sound of mouth working over him filled the room - wet slurps and muffled hums. Every time she slid down, her lips stretched around him until her nose almost pressed against his body. The principal's fingers flexed in her hair, guiding her pace.</p>
<p>
<et>I shouldn't be watching this... but...</et>
</p>
<p>Her thighs pressed together instinctively. She could feel the heat rising to her cheeks, her breath coming shallower with each passing second.</p>
<p>Her history teacher pulled back slightly, lips glistening, before swallowing him again in one smooth, wet motion. The principal murmured something Emily couldn't hear, his voice rough with need.</p>
<p>Emily's grip on the doorframe tightened. She knew she should step away, but her body wouldn't listen. The pull of the scene in front of her was too strong.</p>
<p>Eventually she forced herself back from the glass, face burning, and slipped away down the corridor.</p>
<<toast "Corruption +1">>
[[Hall|D6 Spill Hall]]<<set $world.location to "Portugal - toilet">>
<<set $day6.toiletOrgyDone to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>But as she moved toward the bathroom, a strange, rhythmic sound echoed from inside.</p>
<p>Moans. Whispers. Skin slapping against skin.</p>
<p>Her brows furrowed.</p>
<p>She pushed the door open slightly - and froze.</p>
<p>Inside, the bathroom lights were dimmed. Steam from the hot water clung to the mirrors. But through the haze, she saw it clearly:</p>
<p>Four students - two girls and two guys - tangled together in a chaotic, breathless pile. One girl was bent over the sink, her moans echoing off the tiles. Another was on her knees between two guys, drool and cum dripping from her lips as she giggled like she was drunk on lust.</p>
<img src="Images/1.5/14.gif">
<p>Emily's eyes widened, and she instinctively stepped back.</p>
<p>
<e>Oh my god...</e>
</p>
<p>No one even noticed her. They were too far gone - lost in each other, driven by something deeper than simple desire.</p>
<img src="Images/1.5/15.gif">
<p>And that's when it hit her.</p>
<p>
<e>The drink... that liquid... the sample...</e>
</p>
<p>It was no coincidence.</p>
<p>She slowly closed the door, her heart pounding - not only from arousal, but from the realization that this went deeper than she thought.</p>
<p>The sample. The stranger. The Prijak Dynasty. Her mother's diary.</p>
<p>Something was connecting all of it. And it was only just beginning to unravel.</p>
<<toast "Corruption +1">>
[[Hall|D6 Spill Hall]]<<set $world.location to "Portugal - town">>
<p>
<e>I should get dressed first... sleepwear is not a campus look. Mirror in my room.</e>
</p>
[[Uncle's house|D6 House Map]]
[[Town map|D6 Town Map]]<<set $world.location to "Portugal - campus">>
<<set $day6.leftHome to true>>
<<if ndef $day6.bsd14Scored>><<set $day6.bsd14Scored to false>><</if>>
<<if ndef $day6.liamDateReady>><<set $day6.liamDateReady to false>><</if>>
<<if ndef $day6.liamDateDone>><<set $day6.liamDateDone to false>><</if>>
/* Liam coffee date — auto when ready (scored path) */
<<if $day6.liamDateReady and not $day6.liamDateDone and $day6.bsd14Scored and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<goto "D6 Liam Coffee Date">>
<</if>>
/* Liam park practice can also start from campus court (miss path) */
<<if $day6.liamDateReady and not $day6.liamDateDone and not $day6.bsd14Scored and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<goto "D6 Liam Park Practice">>
<</if>>
/* After food-cart spill: special hall hub (original CLD211) */
<<if $day6.collegeFoodDrop and $day6.collegeSpillClassDone and not ($day6.liamLockerDone and $day6.principalPeekDone and $day6.toiletOrgyDone)>>
<<goto "D6 Spill Hall">>
<</if>>
<<if $day6.collegeFoodDrop and not $day6.collegeSpillClassDone>>
<<goto "D6 Spill Class">>
<</if>>
<<= setup.locBannerHtml("college", "College", $world.time + " - Portugal branch")>>
<div class="loc-grid">
/* Classroom priority: Gwen day15 > washroom note > desk note > history > daily class */
<<if $day6.principalGwenReady and not $day6.principalGwenDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub">Gwen is already there...</span></span>' "D6 Classroom Gwen Day">><</link>>
<<elseif $day6.bookGirlWashroomReady and not $day6.bookGirlWashroomNote and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub">Sit near her</span></span>' "D6 Book Girl Class">><</link>>
<<elseif $day6.bookGirlClassReady and not $day6.leftDeskNote and ($world.time isnot "Night")>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub">Leave a note</span></span>' "D6 Book Girl Desk">><</link>>
<<elseif $day6.historyClassReady and not $day6.historyClassDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub">History — guest speaker</span></span>' "D6 History Class">><</link>>
<<elseif not $day6.classDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub">Attend class</span></span>' "D6 Classroom">><</link>>
<<elseif $day6.classDone>>
<span class="loc-locked"><span class="loc-name">Classroom</span><span class="loc-sub">Already attended</span></span>
<<else>>
<span class="loc-locked"><span class="loc-name">Classroom</span><span class="loc-sub">Not now</span></span>
<</if>>
/* Principal */
<<if $day6.collegeFoodDrop and not $day6.principalPeekDone>>
<<link '<span class="loc-card"><span class="loc-name">Principal</span><span class="loc-sub">Strange sounds...</span></span>' "D6 Principal Peek">><</link>>
<<elseif $day6.principalPeekPunishReady and not $day6.principalPeekPunishDone and $day6.classDone>>
<<link '<span class="loc-card"><span class="loc-name">Principal</span><span class="loc-sub">He wants to see you</span></span>' "D6 Principal Peek Punish">><</link>>
<<elseif $day6.principalGwenReady and not $day6.principalGwenDone>>
<<link '<span class="loc-card"><span class="loc-name">Classroom</span><span class="loc-sub">Gwen is already there...</span></span>' "D6 Classroom Gwen Day">><</link>>
<<elseif not $day6.principalMet and $day6.classDone>>
<<link '<span class="loc-card"><span class="loc-name">Principal</span><span class="loc-sub">Introduce yourself</span></span>' "D6 Principal">><</link>>
<<elseif $day6.noBraDay and not $day6.principalPunishDone and $day6.classDone>>
<<link '<span class="loc-card"><span class="loc-name">Principal</span><span class="loc-sub">He wants to see you</span></span>' "D6 Principal Punish">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Principal</span><span class="loc-sub">Office</span></span>' "D6 Principal">><</link>>
<</if>>
/* Library — unlocked after Kelly's diary reveal (research the alchemist glasses) */
<<if $day6.libraryUnlocked>>
<<if $day6.libraryResearchDone>>
<<link '<span class="loc-card"><span class="loc-name">Library</span><span class="loc-sub">Quiet reading</span></span>' "D6 Library">><</link>>
<<elseif $day6.libraryBookGotten>>
<<link '<span class="loc-card"><span class="loc-name">Library</span><span class="loc-sub">Keep reading</span></span>' "D6 Library">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Library</span><span class="loc-sub">Ask about the book</span></span>' "D6 Library">><</link>>
<</if>>
<</if>>
/* Hallway / book girl */
<<if not $day6.metBookGirl>>
<<link '<span class="loc-card"><span class="loc-name">Hallway</span><span class="loc-sub">Something catches your eye</span></span>' "D6 Book Girl">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Hallway</span><span class="loc-sub">Wander</span></span>' "D6 College Hall">><</link>>
<</if>>
/* Toilets / washroom meet */
<<if $day6.collegeFoodDrop and not $day6.toiletOrgyDone>>
<<link '<span class="loc-card"><span class="loc-name">Toilet</span><span class="loc-sub">Strange sounds...</span></span>' "D6 Spill Toilet">><</link>>
<<elseif $day6.bookGirlWashroomNote and not $day6.gwenWashroom>>
<<link '<span class="loc-card"><span class="loc-name">Toilet</span><span class="loc-sub">Washroom meet</span></span>' "D6 Washroom Meet">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Toilet</span><span class="loc-sub">Male / Female</span></span>' "D6 College Toilet">><</link>>
<</if>>
/* Liam coffee date (scored path) — evening cafeteria */
<<if $day6.liamDateReady and not $day6.liamDateDone and $day6.bsd14Scored and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<link '<span class="loc-card"><span class="loc-name">Cafeteria</span><span class="loc-sub">Coffee date with Liam</span></span>' "D6 Liam Coffee Date">><</link>>
<</if>>
/* Basketball */
<<if $day6.liamDateReady and not $day6.liamDateDone and not $day6.bsd14Scored and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<link '<span class="loc-card"><span class="loc-name">Basketball court</span><span class="loc-sub">Practice with Liam</span></span>' "D6 Liam Park Practice">><</link>>
<<elseif $world.time isnot "Night">>
<<if $day6.liamCourtReady and not $day6.liamCourtDone>>
<<link '<span class="loc-card"><span class="loc-name">Basketball court</span><span class="loc-sub">Liam is waiting</span></span>' "D6 Basketball Liam">><</link>>
<<elseif $day6.collegeFoodDrop and not $day6.liamLockerDone>>
<<link '<span class="loc-card"><span class="loc-name">Basketball court</span><span class="loc-sub">Find Liam</span></span>' "D6 Spill Basketball">><</link>>
<<elseif $day6.bsd14Ready and not $day6.bsd14Done>>
<<link '<span class="loc-card"><span class="loc-name">Basketball court</span><span class="loc-sub">Challenge Liam</span></span>' "D6 Basketball Challenge">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Basketball court</span><span class="loc-sub">Watch / events</span></span>' "D6 Basketball">><</link>>
<</if>>
<<else>>
<span class="loc-locked"><span class="loc-name">Basketball court</span><span class="loc-sub">Closed</span></span>
<</if>>
<<if $day6.historyClassDone and not $day6.alleyEventDone>>
<<link '<span class="loc-card"><span class="loc-name">Leave campus</span><span class="loc-sub">Something feels wrong</span></span>' "D6 Leave College">><</link>>
<<elseif $day6.collegeFoodDrop and not ($day6.liamLockerDone and $day6.principalPeekDone and $day6.toiletOrgyDone)>>
<span class="loc-locked"><span class="loc-name">Leave campus</span><span class="loc-sub">Check the campus first</span></span>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Leave campus</span><span class="loc-sub">Town</span></span>' "D6 Leave College">><</link>>
<</if>>
</div><<set $world.location to "Portugal - classroom">>
<<set $day6.classDone to true>>
<<set $day6.collegeDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
/* No-bra day class whispers */
<<if $day6.noBraDay and not $day6.wearingBra and not $day6.noBraTaped and not $day6.principalPunishDone>>
<<goto "D6 Classroom No Bra">>
<</if>>
/* NTR first meet Ryan only once */
<<if ($ntr or $ntr_david) and not $day6.metRyan>>
<<goto "D6 Classroom Ryan">>
<</if>>
/* After peek: morning class then summoned to principal (PD14) */
<<if $day6.principalPeekPunishReady and not $day6.principalPeekPunishDone>>
<<goto "D6 Classroom Then Principal">>
<</if>>
/* 5 days after PD14: Gwen dildo plant + severe principal punish (CLD15) */
<<if $day6.principalGwenReady and not $day6.principalGwenDone>>
<<goto "D6 Classroom Gwen Day">>
<</if>>
<<= setup.locBannerHtml("classroom", "Classroom", $world.time)>>
<p>Bright classroom. Emily finds a seat near the middle, bag down, notebook out. The teacher writes calculus across the board.</p>
<img src="Images/1.2/6.jpg">
<p>
<npc>Teacher:</npc> Good morning. Basics of calculus. Stay with me.
</p>
<p>A girl nearby doodles in her planner. Emily can grind the lecture - or make a friend.</p>
<<link 'Study hard' "D6 Class Study">><</link>>
[[Socialize|D6 Class Social]]
/* ── NTR: meet Ryan in class (original CLD6) ── */<<set $world.location to "Portugal - classroom">>
<<set $day6.metRyan to true>>
<<set $day6.classDone to true>>
<<set $day6.collegeDone to true>>
<<set $player.intelligence to Number($player.intelligence) + 1>>
<<run setup.Phone.refreshNotes()>>
<p>Emily walks into the bright classroom and quietly takes a seat near the middle. The low hum of chatter fills the room as students settle in.</p>
<p>She places her bag down, pulling out her notebook, when suddenly - a boy slides into the seat beside her.</p>
<p>
<ryan>Hey... Emily, right? Do you remember me?</ryan>
</p>
<p>Emily blinks, slightly caught off guard. She studies his face for a moment.</p>
<p>
<e>I've... seen you somewhere, I think. But I don't know why I can't remember.</e>
</p>
<p>He chuckles softly, leaning back in his chair.</p>
<p>
<ryan>I'm Ryan. Your senior back in college. I just got transferred to the Portugal branch too.</ryan>
</p>
<p>Emily's eyes widen a little.</p>
<p>
<e>Ohh... yeah, I remember now. I think I saw you at that party once.</e>
</p>
<p>She tilts her head slightly, a faint smile forming.</p>
<p>
<e>You were pretty popular there... especially with the girls.</e>
</p>
<p>Ryan smirks, clearly enjoying that.</p>
<p>
<ryan>What can I say? I make an impression.</ryan>
</p>
<p>They chat casually for a moment, the conversation flowing easily.</p>
<p>While Emily looks down at her notebook, Ryan casually pulls out his phone - <em>click</em>. A faint shutter sound.</p>
<p>Emily looks up briefly.</p>
<p>
<e>Hm?</e>
</p>
<p>Ryan quickly lowers his phone, acting normal.</p>
<p>
<ryan>Oh - nothing. Just checking something.</ryan>
</p>
<p>Emily hesitates for a second... then shrugs it off.</p>
<p>
<e>Must've been nothing...</e>
</p>
<p>The teacher's voice cuts through the room.</p>
<p>
<npc>Teacher:</npc> Alright, everyone, settle down. Let's begin.
</p>
<img src="Images/1.2/6.jpg">
<p>Emily turns her attention forward, but something about that moment lingers faintly in her mind...</p>
<<toast "Class done - Intelligence +1 - Met Ryan">>
<<link 'Elsewhere...' "D6 Ryan Photo Anon">><</link>>
/* ── NTR: Ryan's photo reaches David (Emily never knows) ── */<<set $day6.ryanPhotoDone to true>>
<<set $world.location to "David's room">>
<<set $flags.david_ryan_photo to true>>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere - Same day</div>
</div>
<p>David's phone buzzed. He glanced at the screen - same unknown number. His finger hovered over the notification for a moment before he opened it.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">14:22</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED - NO TRACE
</div>
</div>
<span class="david-anon-tag">1 new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">UNKNOWN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/16.jpg" alt="Photo of Emily in class">
</div>
<div class="msg-ts">14:22 - Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Recognize her?</div>
<div class="msg-ts">14:22</div>
</div>
</div>
</div>
<p>He stares. No reply. Just the photo - Emily in a bright classroom, someone sitting close enough that the angle should not exist.</p>
<p>His jaw tightens. He already knows who it is. And he is already opening her chat.</p>
</div>
<<link 'David messages Emily' "D6 David Texts Emily">><</link>>
/* ── NTR: David texts Emily about the guy next to her ── */<<set $world.location to "Portugal - campus">>
<<run setup.Phone.injectRyanSuspectChat()>>
<<run setup.Phone.refreshNotes()>>
<div class="david-anon-scene">
<p>Emily's phone buzzes as she steps into the hall after class. David.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">14:28</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#22d3ee;color:#22d3ee;">D
<div class="terminal-avatar-dot" style="background:#22d3ee;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">David</div>
<div class="terminal-header-status" style="color:#22d3ee;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label" style="color:#22d3ee;">DAVID</div>
<div class="bubble only">Hey... who are you with at college today?</div>
<div class="msg-ts">14:26</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Just some people from class lol, why?</div>
<div class="msg-ts right">14:27</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#22d3ee;">DAVID</div>
<div class="bubble only">That guy next to you. Who is he?</div>
<div class="msg-ts">14:27</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Oh, that's Ryan - my senior from college. I think you guys were in the same class. Kinda surprised he transferred here too. But what happened?</div>
<div class="msg-ts right">14:28</div>
</div>
</div>
</div>
<p>She frowns at the screen. How would he know anyone was sitting next to her?</p>
<p>
<et>Weird... maybe he saw a story? Or a group photo? Whatever. Class is done.</et>
</p>
</div>
<<toast "David texted - Phone updated">>
<<link 'Elsewhere... David again' "D6 David Messages Ryan">><</link>>
/* ── NTR: David messages Ryan (unknown number) after learning the name ── */<<set $day6.ryanDavidThreat to true>>
<<set $world.location to "David's room">>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere - Same day</div>
</div>
<p>David's jaw tightened. He knew exactly who it was now. He switched back to the unknown number and started typing.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">14:35</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">RYAN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
<span class="david-anon-tag">live</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Haha... I figured it out. You're Ryan, aren't you? That cocky bastard who thinks every pretty girl is his to claim. Stay the fuck away from Emily... or I'll make you regret ever looking at her.</div>
<div class="msg-ts right">14:33</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Mmm... I love it when they fight for her. This just got so much hotter. The chase is going to feel incredible now.</div>
<div class="msg-ts">14:34</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">I trust her completely. Do whatever pathetic shit you want - you'll never break her. She's mine.</div>
<div class="msg-ts right">14:34</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">The more you trust her... the wetter she'll get when I finally make her moan my name instead of yours.</div>
<div class="msg-ts">14:35</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Don't you fucking dare touch her.</div>
<div class="msg-ts right">14:35</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Relax, baby... I won't have to force anything. She'll come crawling to me on her own - dripping, aching, begging me to ruin that tight little pussy you think belongs to you.</div>
<div class="msg-ts">14:36</div>
</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/17.gif" alt="Ryan's taunt media">
</div>
<div class="msg-ts">14:36 - Media</div>
</div>
</div>
</div>
<p>David's hands shake. He almost throws the phone. Emily does not know any of this - she never will, if he has anything to say about it.</p>
</div>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]<<set $world.location to "Portugal - classroom">>
<<set $player.intelligence to Number($player.intelligence) + 1>>
<<toast "Studied - Intelligence +1">>
<p>She forces focus. Equations. Examples. By the end her head aches in a useful way.</p>
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - classroom">>
/* One-shot: classmate introduces Luma photo app */
<<if not $day6.classSocialAppDone>>
<<goto "D6 Class Social App">>
<</if>>
<<toast "Made a connection">>
<p>She leans toward the girl beside her again - quiet jokes under the teacher's radar, a shared eye-roll when the lecture drags. By the time the bell rings, the room feels a little less foreign.</p>
[[Campus map|D6 College Map]]
/* First Socialize: classmate posts on Luma → unlocks photo social app */<<set $world.location to "Portugal - classroom">>
<<set $day6.classSocialAppDone to true>>
<<set $day6.socialApp to true>>
<<run setup.Phone.unlockSocialApp()>>
<<toast "Luma unlocked">>
<p>Emily tips her chair just enough to glance sideways. The doodling girl from before isn't doodling at all - she's angled her phone below the desk lip, thumb flying, face lit by a soft pink-white glow.</p>
<p>On the screen: a filter-slick selfie from that morning, then a cafe latte with foam art, then a mirror shot in a cropped top she definitely did not wear to campus. A heart counter ticks up while the teacher drones about limits and derivatives.</p>
<p>The girl catches Emily looking. For half a second she freezes - then her mouth quirks, half guilty, half proud.</p>
<p>
<npc>Girl:</npc> What? Don't snitch. Calculus can wait. My feed cannot.
</p>
<p>Emily keeps her voice low.</p>
<p>
<e>You're posting in the middle of class?</e>
</p>
<p>
<npc>Girl:</npc> Uploading. There's a difference. Timing matters - morning light dies after noon, and so do likes.
</p>
<p>She tilts the phone so Emily can see the app icon: a soft gradient circle, camera aperture nested inside it.</p>
<p>
<npc>Girl:</npc> It's <strong>Luma</strong>. Photo social. Everyone here uses it - parties, outfits, "casual" gym shots that took forty minutes. You post, people double-tap, your ego either soars or flatlines. I'm Sofia, by the way.
</p>
<p>
<e>Emily. I'm... new. Still figuring out which cafes are worth the walk.</e>
</p>
<p>Sofia's eyes light up like she's been handed a project.</p>
<p>
<sofia>Then you need Luma more than I do. Transfer student energy photographs amazingly - trust me. Here.</sofia>
</p>
<p>Before Emily can protest, Sofia is already guiding her through install: name, a quick profile pic from the camera roll, private for now. The home screen blooms with a new icon right next to Notes.</p>
<p>
<sofia>Don't overthink the first post. A window, a coffee, your face if you're feeling brave. And if you ever need a second angle for a mirror shot... I have excellent arms.</sofia>
</p>
<p>Emily snorts under her breath. The teacher clears his throat; both girls snap their eyes forward like saints. Under the desk, Luma finishes syncing with a soft little chime only they can hear.</p>
<p>
<et>A whole feed of strangers - and a way to put herself in it. Later. When calculus isn't watching.</et>
</p>
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - college hall">>
<<= setup.locBannerHtml("hallway", "Hallway", $world.time)>>
<p>Lockers. Notice board. Students who already know each other. She is new paint on an old wall - visible, not yet claimed.</p>
<<if not $day6.metBookGirl>>
[[Something by the lockers|D6 Book Girl]]
<</if>>
[[Campus map|D6 College Map]]
/* Main quest: mystery book girl */<<set $world.location to "Portugal - college hall">>
<<set $day6.metBookGirl to true>>
<<set $day6.collegeDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>The bell has scattered students into the hall. Emily weaves through groups - then something catches her eye.</p>
<p>A girl stands alone by the lockers, clutching a worn-out book to her chest. Cover cracked and faded. On the open pages: strange symbols - the same kind of mysterious language she had stumbled upon in the forest and Mom's diary trail.</p>
<p>
<e>Wait... that looks just like what I found.</e>
</p>
<p>Curious, she walks up.</p>
<p>
<e>Hey... sorry, but - that book you're holding... where did you get it?</e>
</p>
<p>The girl stiffens. Fingers tighten on the book. Eyes dart around nervously. She shakes her head slightly.</p>
<p>
<npc>Girl:</npc> I... I don't know what you're talking about.
</p>
<p>Without another word she turns and hurries into the crowd before Emily can stop her.</p>
<p>
<e>Weird... she looked scared. What is going on here?</e>
</p>
<p>Hallway noise. A heavy, uneasy feeling settles in her chest. Main trail just got a face - and a book that ran away.</p>
<<toast "Main quest: mystery girl spotted">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
/* Main quest follow-up: leave symbol note on her desk (after wait 1 day) */<<if not $day6.bookGirlClassReady or $day6.leftDeskNote>>
<<goto "D6 College Map">>
<</if>>
<<set $world.location to "Portugal - classroom">>
<<set $day6.leftDeskNote to true>>
<<set $day6.collegeDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>Still standing in the hallway, Emily pulls out her phone.
She scrolls quickly through her photos until she finds it - the picture she took of that strange language.</p>
<p>
<e>There it is... those symbols... what does it even mean?</e>
</p>
<p>Her fingers brush lightly across the screen, tracing the unfamiliar shapes. An idea sparks in her mind.
She glances back into the emptying classroom and sees the desk where the mysterious girl had been sitting.</p>
<p>
<e>Maybe if I leave a message... she'll know I'm not just some random weirdo.</e>
</p>
<p>Sliding carefully back into the room, Emily approaches the girl's desk.
She kneels down, shielding herself from the hallway view, and quietly pulls out a pen.
Trying her best to copy the symbols from the photo, she writes a short line in the same mysterious language onto the corner of the desk.</p>
<p>
<e>There... I hope she understands.</e>
</p>
<p>Emily stands up quickly, heart pounding, and leaves the classroom without looking back.
A feeling of nervous excitement bubbles inside her.</p>
<p>
<et>I guess I'll find out if it works...</et>
</p>
<<toast "Main quest: note left on desk">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
/* Main: next day classroom - she writes "Meet me in the washroom" */<<if not $day6.bookGirlWashroomReady or $day6.bookGirlWashroomNote>>
<<goto "D6 College Map">>
<</if>>
<<set $world.location to "Portugal - classroom">>
<<set $day6.bookGirlWashroomNote to true>>
<<set $day6.classDone to true>>
<<set $day6.collegeDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>As soon as she reaches the classroom, she spots that girl - the same one who had the mysterious book before.
Without hesitation, Emily makes her way over and sits down beside her, pretending to casually organize her stuff.</p>
<p>
<e>Hey... morning!</e>
</p>
<p>She flashes a friendly smile, trying to start a conversation.
But the girl doesn't respond.
She simply keeps her eyes on the teacher, completely ignoring Emily.</p>
<p>For a moment, Emily feels a wave of disappointment.
But just as she's about to give up, she notices the girl's hand quickly moving across Emily's notebook.</p>
<p>When Emily looks down, her breath catches.</p>
<p>In small, rushed handwriting, the girl had scribbled:</p>
<p><strong>Meet me in the washroom</strong></p>
<p>No signature. No explanation. Just those six words.</p>
<p>Before Emily can react, the girl pulls her hand back and continues staring straight ahead like nothing happened.
Emily clutches her notebook tightly, her mind racing with questions.</p>
<<toast "Main: meet her in the washroom">>
[[After class...|D6 Washroom Meet]]
[[Campus map|D6 College Map]]
/* Main: washroom - three stalls */<<if not $day6.bookGirlWashroomNote or $day6.gwenWashroom>>
<<goto "D6 College Toilet">>
<</if>>
<<set $world.location to "Portugal - female toilet">>
<p>After the last class ends, Emily wastes no time.
She walks briskly down the hallway, ignoring the other students, until she reaches the washroom door.</p>
<p>Pushing it open, she steps inside.
The room is cool and silent, the soft hum of fluorescent lights buzzing above her head.</p>
<p>Her eyes quickly scan the room - and she notices there are three closed stalls.
Each one looks exactly the same from the outside: plain, a little worn, but nothing unusual.</p>
<p>
<e>Which one is she in? Should I just pick...?</e>
</p>
[[First stall|D6 Washroom Stall1]]
[[Second stall|D6 Washroom Stall2]]
[[Third stall|D6 Washroom Stall3]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - female toilet">>
<p>Emily hesitates for a second, then steps up to the first stall - the one closest to the door.
Her heart pounds as she slowly reaches out and pushes it open.</p>
<p>But the moment the door swings inward, her eyes go wide in shock.</p>
<p>Inside, a couple - a guy and a girl - are tangled together, completely lost in each other, clearly doing things they definitely shouldn't be doing at school.</p>
<img src="Images/1.2/20.gif">
<p>Emily freezes, her mouth dropping open.
The couple, caught off guard, gasp and scramble to cover themselves.</p>
<p>
<e>Oh my god - I'm so sorry!</e>
</p>
<p>Flushed deep red, Emily slams the door shut and backs away quickly, nearly tripping over herself.</p>
<p>
<e>What the hell was that?!</e>
</p>
[[Back to stalls|D6 Washroom Meet]]<<set $world.location to "Portugal - female toilet">>
<p>Still blushing, Emily hesitates, then tries the third stall - the one furthest from the door.</p>
<p>
<e>Maybe she's hiding there...</e>
</p>
<p>Taking a deep breath, she cautiously pushes the door open.</p>
<p>Inside, a girl is standing against the wall, eyes closed, lost in her own private moment -
and there's a glory hole cut into the stall wall.</p>
<img src="Images/1.2/21.gif">
<p>
<e>They... they have a glory hole in this college?!</e>
</p>
<p>The girl doesn't even notice her. Mortified, Emily yanks the door shut.</p>
<p>
<e>This place is insane... I seriously need to find that girl.</e>
</p>
<<toast "Glory hole unlocked">>
[[Back to stalls|D6 Washroom Meet]]<<set $world.location to "Portugal - female toilet">>
<p>Heart racing, Emily walks up to the second stall.
She hesitates only a second before gently pushing the door open.</p>
<p>Inside, sitting quietly on the closed toilet seat, is the mysterious girl from class.
She looks up immediately, her expression tense but determined.</p>
<p>
<npc>Girl:</npc> You're finally here.
</p>
<p>Emily steps inside, pulling the door shut behind her.
The two girls squeeze into the cramped space, both glancing nervously at the door.</p>
<p>
<e>What is going on? What do you know?</e>
</p>
<p>The girl lowers her voice to a whisper.</p>
<p>
<npc>Girl:</npc> I know you're looking for something. Something connected to... them. It's dangerous. If you're involved now, you have to be careful.
</p>
<p>Emily frowns. She pulls out her phone and opens the photo of the strange language from the forest.
She tilts the screen toward the girl.</p>
<p>
<e>Do you know anything about this?</e>
</p>
<p>The girl's eyes widen. She almost snatches the phone, staring with trembling fingers.</p>
<p>
<npc>Girl:</npc> Where did you get this? Where is this place?!
</p>
<p>Emily snatches the phone back.</p>
<p>
<e>First, you tell me. What does this mean?</e>
</p>
[[Next|D6 Washroom Confront]]<<set $world.location to "Portugal - female toilet">>
<p>Emily tightens her grip on her phone, refusing to answer right away.</p>
<p>But before she can react - the girl moves. Fast.</p>
<p>In a swift motion, the girl grabs Emily by the wrist and spins her around, pressing her face lightly but firmly toward the cold porcelain of the toilet.
Not hurting her - but enough to show she's not playing games.</p>
<img src="Images/1.2/preview.jpg">
<p>
<npc>Girl:</npc> I'm not asking nicely anymore. Tell me where you found this. Now.
</p>
<p>Emily freezes. This girl isn't just smart. She's dangerous.</p>
<p>
<e>Okay... okay! Just let me up!</e>
</p>
<p>The girl lets go, stepping back and crossing her arms. Sharp eyes, cool and unblinking.</p>
<p>
<npc>Girl:</npc> Start talking.
</p>
[[Tell her|D6 Washroom Tell]]<<set $world.location to "Portugal - female toilet">>
<p>Emily wipes her face quickly, still rattled.</p>
<p>
<e>Fine. I found it in the forest. There's an old tree deep in the woods. That's where I took the picture.</e>
</p>
<p>For a second the girl just stares, processing.
Then, instead of asking more about the forest or the book, she tilts her head slightly.</p>
<p>
<npc>Girl:</npc> Are you a virgin?
</p>
<p>
<e>W-What? What the hell does that have to do with anything?</e>
</p>
<p>
<npc>Girl:</npc> Just answer the question.
</p>
<<if not $havesex>>
[[Yes... I'm a virgin|D6 Washroom Virgin]]
<<else>>
<span class="loc-locked">Yes... I'm a virgin — <span style="color:#f87171;">You can't choose this option because you had sex with the principal</span></span>
<</if>>
<<if $havesex>>
[[I'm not a virgin|D6 Washroom Not Virgin]]
<<else>>
<span class="loc-locked">I'm not a virgin — <span style="color:#f87171;">You can't choose this option because you didn't have sex with the principal</span></span>
<</if>>/* Safety: cannot claim virgin if she had sex with principal */
<<if $havesex>>
<<goto "D6 Washroom Tell">>
<</if>>
<p>Emily shifts under the intense stare. Lying feels like a mistake. She answers honestly.</p>
<p>
<e>Yeah... I'm a virgin.</e>
</p>
<p>The girl's expression barely changes - if anything, almost amused. She steps closer, voice lower.</p>
<p>
<npc>Girl:</npc> How many blowjobs have you given?
</p>
<p>
<e>W-What?? Why are you even asking me that?!</e>
</p>
<p>
<npc>Girl:</npc> Answer the question.
</p>
<<if $flags.day1_glory or $day4.gloryBJ>>
[[Four...|D6 Washroom Virgin Invite 4]]
<<else>>
[[Three...|D6 Washroom Virgin Invite 3]]
<</if>><<set $day6.gwenBjTier to 4>>
<<goto "D6 Washroom Virgin Invite">><<set $day6.gwenBjTier to 3>>
<<goto "D6 Washroom Virgin Invite">><<set $day6.gwenWashroom to true>>
<<set $day6.gwenVirginPath to true>>
<<set $day6.gwenRejected to false>>
<<set $day6.gwenHouseInvited to true>>
<<set $day6.forestWaitSleeps to 0>>
<<if ndef $day6.gwenBjTier>><<set $day6.gwenBjTier to 3>><</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily hesitates, mind spinning with confusion and embarrassment.
But under Gwen's intense gaze, the truth slips out before she can stop herself.</p>
<p>
<e><<= $day6.gwenBjTier>>...</e>
</p>
<p>Her face flushes red with shame. Gwen's eyes narrow slightly, then the smallest smirk - satisfied.</p>
<p>She leans in, voice low and commanding.</p>
<p>
<gwen>Come to my place this evening.</gwen>
</p>
<p>
<e>What? Why?</e>
</p>
<p>Gwen is already pulling a scrap of paper from her pocket. She scribbles an address, presses it into Emily's hand.</p>
<p>
<gwen>Seven o'clock. Don't be late.</gwen>
</p>
<p>And just like that she walks out of the bathroom, leaving Emily alone - confused, clutching the crumpled address like a bomb.</p>
<p>
<e>What the hell just happened?</e>
</p>
<p>
<et>Whatever this is - it is only just beginning.</et>
</p>
<<toast "Main: Gwen's house this evening">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
[[Town map|D6 Town Map]]/* Safety: not-virgin path only if she had sex with principal */
<<if not $havesex>>
<<goto "D6 Washroom Tell">>
<</if>>
<<set $day6.gwenWashroom to true>>
<<set $day6.gwenVirginPath to false>>
<<set $day6.gwenRejected to true>>
<<set $day6.forestWaitSleeps to 0>>
<<run setup.Phone.refreshNotes()>>
<p>A flash of the principal's office - shame, heat, regret - then she looks away.</p>
<p>
<e>No... I'm not.</e>
</p>
<p>Silence. Then the girl's face hardens with disgust. She shoves Emily against the stall wall.</p>
<p>
<npc>Girl:</npc> You're not worth it. You're a waste of time. Don't go near that treasure. Don't even think about it. If you try... I'll make sure you regret it.
</p>
<img src="Images/1.3/1.gif">
<p>She storms out. Emily stands stunned, breath caught.</p>
<p>
<et>She thinks I'm nothing. But she doesn't know me. She doesn't know what I've been through. I won't give up.</et>
</p>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]<<set $day6.leftHome to true>>
/* After history class: alley stranger (Watching / Not watching) */
<<if $day6.historyClassDone and not $day6.alleyEventDone>>
<<goto "D6 Alley Follow">>
<</if>>
/* Spill-day: finish trio before free leave (Kelly call is separate main wait) */
<<if $day6.collegeFoodDrop and not ($day6.liamLockerDone and $day6.principalPeekDone and $day6.toiletOrgyDone)>>
<<goto "D6 Spill Hall">>
<</if>>
<<if $world.time is "Morning">>
<<run setup.advanceTime(1)>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>She steps off campus. Town waits - cafe, park, mall, or home.</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
/* ═══════════════════════════════════════════════════════════
History class + alley (original HD10 / ED10 / Watching)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - classroom">>
<<set $day6.historyClassDone to true>>
<<set $day6.historyClassReady to false>>
<<set $day6.classDone to true>>
<<set $day6.collegeDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped into the classroom quietly and slipped into her usual seat. Early sunlight streamed through the windows, casting golden patterns on the wooden desks.</p>
<p>At the front of the room stood the new history teacher - tall, strict-looking, arms crossed.</p>
<img src="Images/1.5/3.jpg">
<p>
<npc>Teacher:</npc> Good morning. Today, we have a guest speaker with us - someone with decades of experience studying lost civilizations. Please listen respectfully.
</p>
<p>A moment later, the door creaked open.</p>
<p>An old man in a wheelchair entered slowly, pushed by a young assistant. His silver hair glimmered under the light, his eyes intelligent yet weathered. There was a calm silence as he reached the front.</p>
<p>
<npc>Teacher:</npc> Class, please welcome Professor Jayden.
</p>
<p>He gave a faint nod and began without waiting.</p>
<p>
<jayden>Centuries ago, in the deep forests of Eastern Europe, there was a tribe believed to speak with the stars. Not through magic... but mathematics. Their tombs are aligned so precisely, they map the constellations that no longer exist today.</jayden>
</p>
<p>Students exchanged glances. Emily listened, intrigued.</p>
<p>
<jayden>They vanished without a trace. Only a few stone tablets remained - half-burned, scattered. But on those fragments... were hints of a woman. A queen. Not named, but feared. Her symbol was a pair of wings over fire.</jayden>
</p>
<p>He coughed lightly, pausing. His eyes swept over the room again, and they momentarily lingered on Emily.</p>
<p>
<jayden>What they left behind was knowledge... and a warning. One we've never understood. Perhaps we're not meant to.</jayden>
</p>
<p>He looked tired, like the story itself had drained him.</p>
<p>
<jayden>That's all I'll share for today. I don't want to give you nightmares. Any questions?</jayden>
</p>
<p>Emily raised her hand without thinking.</p>
<p>
<e>Yes... Do you know anything about the Prijak Dynasty?</e>
</p>
<p>The room fell unnaturally silent.</p>
<p>Jayden's smile faded. His hand slightly trembled on the armrest. He blinked at her.</p>
<p>The teacher turned instantly, voice like a blade.</p>
<p>
<npc>Teacher:</npc> Emily. That's not part of today's discussion.
</p>
<p>Jayden was still looking at Emily, his expression confused... then shaken. His assistant stepped in.</p>
<p>
<npc>Assistant:</npc> Professor, are you alright?
</p>
<p>Jayden murmured, barely audible:</p>
<p>
<jayden>...Where did you hear that name?</jayden>
</p>
<p>But before Emily could answer, the aide started wheeling him away.</p>
<p>
<npc>Teacher:</npc> Class dismissed. No more questions.
</p>
<p>The classroom buzzed with whispers as Jayden disappeared through the door.</p>
<p>Emily sat in silence, heart pounding.</p>
<p>
<et>Something has changed.</et>
</p>
<<toast "History class — Jayden">>
<p>
<et>Something changed in that room. I should leave when I'm ready... the court can wait.</et>
</p>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
<<if not $day6.liamCourtDone>>
[[Basketball court|D6 Basketball Liam]]
<</if>><<set $world.location to "Portugal - alley">>
<p>Emily notices she's being followed, but instead of fear, a strange thrill runs through her.</p>
<p>Her footsteps quicken as the shadow behind her grows more persistent. She suddenly darts into a narrow alley and presses herself against the wall. Her breath is shallow.</p>
<img src="Images/1.5/4.jpg">
<p>The sound of footsteps approaches... closer... closer-</p>
<p>She springs out.</p>
<p>
<e>Why are you following me?!</e>
</p>
<p>The man stumbles back in surprise. He's young, maybe in his early 20s, with messy dark hair and piercing eyes. He wears all black and carries no bag - nothing that suggests he's a student.</p>
<p>
<stranger>Easy. You startled me.</stranger>
</p>
<p>He raises his hands.</p>
<p>
<e>Start talking.</e>
</p>
<p>He looks around, then steps closer, lowering his voice.</p>
<p>
<stranger>Are they watching you?</stranger>
</p>
<p>Emily looks past him toward the streetlight and the mouth of the alley.</p>
[[Not watching|D6 Alley Not Watching]]
[[Watching|D6 Alley Watching]]<<set $world.location to "Portugal - alley">>
<<set $day6.alleyEventDone to true>>
<<set $day6.alleyWatch to false>>
<<run setup.Phone.unlockStranger()>>
<<run setup.Phone.refreshNotes()>>
<p>Her heart pounded. But what really caught her attention was something further away - a group of people in black suits, standing near the streetlight, pretending to be casual... but clearly watching them.</p>
<p>
<e>No... not anymore. They turned away.</e>
</p>
<p>He exhaled, relieved.</p>
<p>
<stranger>Good. Then listen to me carefully. You shouldn't have mentioned the Prijak Dynasty.</stranger>
</p>
<p>
<e>...What?</e>
</p>
<p>Her stomach dropped. That word again. That name.</p>
<p>
<stranger>I'm with them. Well - not entirely. I'm one of the few trying to protect you.</stranger>
</p>
<p>
<e>Why are you telling me this? I don't even know you.</e>
</p>
<p>He hesitated. His voice softened.</p>
<p>
<stranger>Because I know you. I can't explain how or why. But you're important. And I've been assigned to keep you alive.</stranger>
</p>
<p>
<e>This makes no sense... You could be lying. Why now?</e>
</p>
<p>He stepped forward, slipping a small, folded note into her hand - a number already saved to her phone before she can stop him.</p>
<p>
<stranger>Listen carefully. Only I can message you. Do not message me. Ever. If you try, they will see it. Phones are tracked. When I need you - I will reach out. You stay silent.</stranger>
</p>
<p>
<e>What about those people in suits?</e>
</p>
<p>
<stranger>I'll tell them you don't know anything. That you just heard the name "Prijak Dynasty" from some random traveler. I'll make them believe you're harmless.</stranger>
</p>
<p>He backed away, his gaze still locked on hers.</p>
<p>
<stranger>Be careful, Emily. Don't trust anyone - not even those close to you. They're already watching.</stranger>
</p>
<p>And with that, he disappeared into the shadows, leaving Emily standing alone, the note trembling in her hand... and a hundred new questions spinning in her mind.</p>
[[Continue|D6 Alley Aftermath]]<<set $world.location to "Portugal - alley">>
<<set $day6.alleyEventDone to true>>
<<set $day6.alleyWatch to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.unlockStranger()>>
<<run setup.Phone.refreshNotes()>>
<p>But before she could say anything, her gaze shifted - and she saw them.</p>
<p>A group of people in black suits, standing silently at the alley's mouth. Watching.</p>
<p>
<e>Yes, they're watching.</e>
</p>
<p>Her voice trembled.</p>
<p>He exhaled sharply and said something that made her freeze.</p>
<p>
<stranger>Quick. Get on your knees. Give me a blowjob - make it look real. I'll tell you everything.</stranger>
</p>
<p>
<e>W-What?!</e>
</p>
<p>Her heart pounded. But something in his eyes... it wasn't just lust - it was desperation. Fear.</p>
<p>
<stranger>Now. Before they get suspicious. Trust me.</stranger>
</p>
<p>Her hands trembled as she slowly knelt down, glancing behind her at the watching men. She reached for his belt, confused, scared... aroused.</p>
<p>She undid his zipper, pulled out his cock - thick, warm, already hard - and took him into her mouth. The act was humiliating, dangerous, but she knew she had no choice.</p>
<img src="Images/1.5/5.webp">
<p>His hand gently rested on her head, guiding her rhythm.</p>
<p>
<stranger>You shouldn't have mentioned the Prijak Dynasty. I'm one of them. I'm from their team. I'm here to protect you.</stranger>
</p>
<p>
<e>Why... tell me this?</e>
</p>
<p>She murmured around his shaft, pausing for breath.</p>
<p>
<stranger>Because I know you. But I can't say more. If they hear this... I'm dead.</stranger>
</p>
<p>He groaned as she resumed, sucking deeper. Seconds later, he gasped, pulling her head off with a firm tug.</p>
<img src="Images/1.5/6.webp">
<p>He zipped up quickly, then slipped a small card into her hand - the number already on her phone.</p>
<p>
<stranger>Only I can message you. Do not message me. If you try, they will see the traffic. When it's safe - I contact you. You never contact me first.</stranger>
</p>
<p>
<e>What about those men?</e>
</p>
<p>
<stranger>I'll tell them you know nothing. That you only heard the name from a stranger in passing. That you're not a threat.</stranger>
</p>
<p>With one last look - intense, unreadable - he turned and disappeared down the alley's opposite end.</p>
<p>Emily stood there, heart racing, lips wet, mind spinning with questions... and heat.</p>
<<toast "Corruption +1">>
[[Continue|D6 Alley Aftermath]]<<set $world.location to "Portugal - alley">>
<<run setup.Phone.unlockStranger()>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stood frozen in the narrow alleyway, her breath shaky, her heart racing.</p>
<img src="Images/1.5/8.jpg">
<p>The man was gone, swallowed by the shadows - leaving behind only confusion, fear, and a contact that should not exist on her phone.</p>
<p>She checks Messages. A new thread: <strong>???</strong></p>
<p><em>"Do not reply. Only I message you. They're watching."</em></p>
<p>Her fingers clench around the phone. The weight of his words keeps echoing in her mind.</p>
<p>
<et>He knew about the Prijak Dynasty... and he said he knows me? What does that even mean?</et>
</p>
<p>A breeze rustled the garbage bag beside her, making her flinch. The alley suddenly felt too narrow, too quiet. Too dangerous.</p>
<p>
<et>I can't go home yet... not with my head this messed up. Kelly. I need to talk to Kelly - but not today. Tomorrow. After I sleep on this.</et>
</p>
<p>She walks out of the alley, phone heavy in her pocket. She doesn't look back.</p>
<<toast "Contact saved — receive only">>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
/* ── No-bra day college entry (original CD9) ── */<<set $world.location to "Portugal - college gates">>
<<set $day6.leftHome to true>>
<p>Emily hurries through the college gates, heart racing. She clutches her bag to her chest as the morning breeze teases the thin fabric of her shirt. Her nipples are hard - clearly outlined - and no amount of adjusting can hide them.</p>
<img src="Images/1.4/2.jpg">
<p>In the main hallway, students chat and move. She keeps her eyes low, walking fast.</p>
<p>Then she sees him - the basketball guy. Tall, toned, messy dark hair. His gaze drops to her chest, pauses, then he whispers to the guy next to him. Both laugh.</p>
<p>
<e>Oh my god...</e>
</p>
<p>She rushes toward class, arms crossed over her chest. Behind her:</p>
<p>
<npc>Guy:</npc> Bro, she wasn't even wearing a bra...
</p>
<p>
<npc>Guy 2:</npc> Damn. She was in a hurry, huh?
</p>
[[Classroom|D6 Classroom]]
[[Toilet|D6 Toilet Tape]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - classroom">>
<p>Emily slips into the last row by the window, bag in front of her chest. The fabric still clings. She doesn't dare raise her hand.</p>
<p>Three seats down, boys whisper.</p>
<p>
<npc>Boy 1:</npc> She's still not wearing a bra...
</p>
<p>
<npc>Boy 2:</npc> Bet she knows exactly what she's doing.
</p>
<p>Her face burns. Arms stay crossed the whole lecture. When the bell rings she packs fast.</p>
<p>
<npc>Boy 3:</npc> She's cute though... kinda slutty, but cute.
</p>
<p>Embarrassment - and a strange heat under it. The principal will want to see her. She can feel it.</p>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 0, 0, 100)>>
[[Toilet|D6 Toilet Tape]]
[[Principal|D6 Principal Punish]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - female toilet">>
<<set $day6.noBraTaped to true>>
<p>She ducks into the girls' toilet, locks a stall, pulls off her shirt. Nipples stiff - no wonder they stared.</p>
<p>
<e>Ugh, I can't believe I forgot my bra...</e>
</p>
<p>In her bag: skin-colored medical tape. She tears two strips and smooths them over her nipples. Not perfect, but the outline flattens under the shirt.</p>
<p>In the cracked mirror - better. She can face the principal without showing everything.</p>
[[Principal|D6 Principal Punish]]
[[Campus map|D6 College Map]]
/* Principal punishment - no bra report (original P2CD9) */<<set $world.location to "Portugal - principal office">>
<<if $day6.principalPunishDone>>
<<goto "D6 Principal Again">>
<</if>>
<<if not $day6.classDone and not $day6.noBraDay>>
<<goto "D6 Principal">>
<</if>>
<<if $day6.noBraTaped>>
<<goto "D6 Principal Punish Taped">>
<<else>>
<<goto "D6 Principal Punish Bare">>
<</if>><<set $world.location to "Portugal - principal office">>
<<set $day6.principalPunishDone to true>>
<<set $day6.noBraEventReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily knocks. The room smells like old leather. Principal Johnson looks up - stern, gray at the temples.</p>
<p>
<principal>Emily, sit down.</principal>
</p>
<p>
<principal>Your professor informed me that you were in class without a bra. And that it was... quite obvious.</principal>
</p>
<p>
<e>It was a malfunction, sir. The strap snapped. I fixed it as soon as I could.</e>
</p>
<p>His eyes linger on her chest a second too long. The tape hides what it needs to.</p>
<img src="Images/1.4/4.jpg">
<p>
<principal>I see. In the future, be mindful of such... malfunctions. This is a formal institution. You may leave.</principal>
</p>
<p>She exits flushed - his gaze still on her back.</p>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]<<set $world.location to "Portugal - principal office">>
<<set $day6.principalPunishDone to true>>
<<set $day6.noBraEventReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>She goes straight to his office. Nipples still stiff against thin fabric. Arms crossed - not enough.</p>
<p>
<principal>Enter.</principal>
</p>
<p>His eyes lock on her chest. A long, uncomfortable second. Then he closes the file on his desk.</p>
<img src="Images/1.4/6.jpg">
<p>
<principal>Emily. Sit. Your professor reported you were improperly dressed - no bra, clearly noticeable. And now you stand here the same way.</principal>
</p>
<p>
<e>I—I didn't mean to...</e>
</p>
<p>
<principal>No excuses. If you're going to dress like that, you need respect and discipline. As punishment, you will spend the next hour cleaning the girls' restroom. Alone. Community service. Maybe next time you'll remember.</principal>
</p>
<p>
<principal>Janitor's closet is down the hall. Don't think I won't check your work.</principal>
</p>
<p>Humiliation - and under it, a strange fluttering heat.</p>
[[Clean the restroom|D6 Principal Clean]]<<set $world.location to "Portugal - female toilet">>
<<set $day6.principalCleanDone to true>>
<<run setup.advanceTime(1)>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>The janitor's closet creaks. Bucket, mop, disinfectant. She hauls them into the girls' restroom - quiet, damp, bleach fighting the usual must.</p>
<p>
<e>This is so humiliating...</e>
</p>
<p>She scrubs stall to stall. Shirt sticks to her back. No bra - every bend a bounce she feels too well.</p>
<p>Fourth stall - a soft thump. A muffled moan. She peeks under the partition: two pairs of legs - male, female - tangled.</p>
<img src="Images/1.4/7.gif">
<p>
<npc>Girl:</npc> Mmnh... don't stop...
</p>
<p>
<npc>Boy:</npc> Shh... someone might come in...
</p>
<p>Skin. Moans. Emily freezes, cleaning rag forgotten. Heat between her thighs. She finishes the sinks, cold water on her face, and leaves quietly - cheeks still red.</p>
<<toast "Corruption +1">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
/* ── Principal: first visit = discipline warning (original PCD6) ── */<<set $world.location to "Portugal - principal office">>
<<if $day6.noBraDay and not $day6.principalPunishDone>>
<<goto "D6 Principal Punish">>
<</if>>
<<if not $day6.classDone and not $day6.principalMet>>
<p>
<e>I am getting late for class...</e>
</p>
[[Campus map|D6 College Map]]
<<elseif not $day6.principalMet>>
<<goto "D6 Principal First">>
<<else>>
<<goto "D6 Principal Again">>
<</if>><<set $world.location to "Portugal - principal office">>
<<set $day6.principalMet to true>>
<<set $day6.collegeDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>The door is slightly open. A small sign reads: <strong>Principal Mr. Johnson</strong>.
She knocks politely.</p>
<p>
<npc>Voice:</npc> Come in.
</p>
<p>Emily steps inside. The office is large but neat - books, awards, a huge polished desk.
Behind it, Mr. Johnson looks up through thin glasses, studying her carefully.</p>
<p>
<e>Hello, sir. I'm Emily. I just wanted to formally introduce myself...</e>
</p>
<p>Before she can say more, the principal smiles knowingly.</p>
<p>
<principal>Ah, yes. Emily. The girl from the United States, correct?</principal>
</p>
<p>Emily nods, feeling a little nervous.</p>
<p>
<principal>Mr. Smith informed me about you before your transfer.</principal>
</p>
<<if $day3.principalBJ or $flags.day1_glory or $havesex>>
<p>
<principal>And... he also mentioned your tendency for a little too much mischief</principal>
<<if $day3.principalBJ>>
- and how you... handled him in his office. I even have some video of that.
<<else>>
.
<</if>>
</p>
<<if $day3.principalBJ>>
<img src="Images/1.2/9.gif">
<p>Emily shifts uncomfortably, not sure whether to laugh or apologize.</p>
<</if>>
<<else>>
<p>
<principal>He mentioned you can be... spirited. I hope that energy stays in the classroom.</principal>
</p>
<</if>>
<p>
<principal>This college is different, Miss Emily. We are proud of our discipline and focus on education here. I expect you to respect that. If I find you causing any trouble - and I mean any - be ready to face the consequences.</principal>
</p>
<p>Emily swallows hard and nods.</p>
<p>
<e>Yes, sir. I understand.</e>
</p>
<p>Mr. Johnson gives her a brief nod and gestures toward the door.</p>
<p>
<principal>Good. Now, go and make the best of your time here.</principal>
</p>
<p>Emily quickly thanks him and steps out, feeling a strange mix of relief and pressure.</p>
<<toast "Met Principal Johnson">>
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - principal office">>
<p>She stands outside the door for a second, then lightly pushes it open again.</p>
<p>Mr. Johnson looks up from a heavy stack of papers, frowning slightly.</p>
<p>
<principal>Yes, Miss Emily? What do you want now?</principal>
</p>
<p>Emily hesitates, suddenly realizing she has no real reason to be there.</p>
<p>
<e>Uh... nothing, sir. Just... passing by.</e>
</p>
<p>The principal narrows his eyes at her.</p>
<p>
<principal>This is a place of work, not a playground. Do not disturb me again unless it's important.</principal>
</p>
<p>Emily quickly nods and backs out, cheeks burning.</p>
<p>
<e>Great start, Emily. Real smooth.</e>
</p>
[[Campus map|D6 College Map]]
/* ── Toilet hub: male / female ── */<<set $world.location to "Portugal - college toilets">>
<<= setup.locBannerHtml("hallway", "Toilets", $world.time)>>
<p>Corridor doors: Male and Female. Tile smell. Fluorescent hum.</p>
[[Female toilet|D6 Toilet Female]]
[[Male toilet|D6 Toilet Male]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - female toilet">>
<<if $day6.bookGirlWashroomNote and not $day6.gwenWashroom>>
<<goto "D6 Washroom Meet">>
<</if>>
<<set _cor to Number($player.corruption) || 0>>
<<= setup.locBannerHtml("female_toilet", "Female Toilet", $world.time)>>
<p>Clean enough. Mirror streaked with old lipstick experiments. Sinks that actually run cold.</p>
<div class="choice-lock-list">
<<if _cor gte 20>>
<<link '<span class="story-choice">Third stall</span>' "D6 Toilet Female Glory">><</link>>
<<else>>
<div class="choice-locked" aria-disabled="true">
<span class="choice-locked-title">Third stall</span>
<span class="choice-locked-req">Requires Corruption 20 (now <<= _cor>>)</span>
</div>
<</if>>
</div>
[[Fix hair / wash up|D6 Toilet Female Fix]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - female toilet">>
<<set $day6.gloryHoleUnlocked to true>>
<<set _roll to random(1, 3)>>
<p>Emily glances around, then eases the third stall door open, quiet as she can manage.</p>
<<if _roll is 1>>
<video src="Images/School/Female_toilet/topper.webm" autoplay loop muted playsinline style="width:420px;max-width:90%;display:block;margin:0.65rem auto;border-radius:10px;"></video>
<p>Kneeling at the hole is a girl she recognizes instantly - glasses, cardigan, the top of every class roster pinned to the board outside the dean's office.</p>
<p>
<et>Wait... isn't she the top student in the entire year?</et>
</p>
<p>Emily eases the door shut, equal parts scandalized and strangely delighted, and slips away before anyone notices her.</p>
<<elseif _roll is 2>>
<video src="Images/School/Female_toilet/teacher_glory.webm" autoplay loop muted playsinline style="width:420px;max-width:90%;display:block;margin:0.65rem auto;border-radius:10px;"></video>
<p>Emily nearly chokes on her own breath - the woman on her knees at the hole is unmistakably one of the teachers, blazer draped neatly over the stall door like she's still keeping up appearances.</p>
<p>
<et>Oh my god. Even the teachers use this thing?!</et>
</p>
<p>She backs out slowly, pulse hammering, and pretends very hard she saw absolutely nothing.</p>
<<else>>
<video src="Images/School/Female_toilet/phone_glory.webm" autoplay loop muted playsinline style="width:420px;max-width:90%;display:block;margin:0.65rem auto;border-radius:10px;"></video>
<p>A girl is bent at the hole, lips wrapped around whatever's pushed through it - phone pinned to her ear with her shoulder, voice syrupy-sweet.</p>
<p>
<npc>Girl:</npc> ...miss you too, babe. Can't wait for our date tonight.
</p>
<p>She keeps going without missing a beat, sweet nothings and filthy noises tangled together like it's the most normal thing in the world.</p>
<p>
<et>She is talking to her boyfriend right now?! While doing... that?!</et>
</p>
<</if>>
<div class="choice-lock-list">
<div class="choice-locked" aria-disabled="true">
<span class="choice-locked-title">Use it yourself</span>
<span class="choice-locked-req">I can't even think of doing this</span>
</div>
</div>
[[Female toilet|D6 Toilet Female]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - female toilet">>
<p>Emily hesitates for only a second this time - then kneels in front of the hole herself, heart slamming so hard she can feel it in her throat.</p>
<p>
<et>I can't believe I'm actually doing this.</et>
</p>
<video src="Images/School/Female_toilet/phone_glory.webm" autoplay loop muted playsinline style="width:420px;max-width:90%;display:block;margin:0.65rem auto;border-radius:10px;"></video>
<p>Whoever is on the other side doesn't say a word - doesn't need to. She works at it with her mouth, eyes fluttering shut, the anonymity somehow making it easier instead of worse. No name. No face. Just heat and her own pulse pounding in her ears.</p>
<p>It's over quickly. She wipes her mouth, legs unsteady, and slips out of the stall like nothing happened - except everything did.</p>
<<if not $day6.gloryHoleUseCorGiven>>
<<set $day6.gloryHoleUseCorGiven to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
[[Female toilet|D6 Toilet Female]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - female toilet">>
<<set $player.energy to Math.clamp(Number($player.energy) + 1, 0, 100)>>
<p>She rinses her face, fixes her hair in the mirror, breathes. Small reset. Ready for the next hallway.</p>
<<toast "Freshened up">>
[[Female toilet|D6 Toilet Female]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - male toilet">>
<p>Emily pushes the wrong door for half a second - then stops. Male toilet. Voices, a laugh, a door slam.</p>
<p>
<et>Not my door. Unless I have a reason later.</et>
</p>
[[Campus map|D6 College Map]]
/* ── Basketball court / Liam ── */<<set $world.location to "Portugal - basketball court">>
/* Liam basketball meet — independent of the main history-class quest. Ready 1 sleep after Principal no-bra event */
<<if $day6.liamCourtReady and not $day6.liamCourtDone>>
<<goto "D6 Basketball Liam">>
<</if>>
<<= setup.locBannerHtml("basketball", "Basketball Court", $world.time)>>
<<if $day6.liamCourtDone or $day6.basketballDone>>
<p>Outdoor court. The game still runs.<<if $day6.liamCourtDone>> Liam lifts a hand when he spots her - friendly, not pushy.<</if>></p>
[[Watch a while|D6 Basketball Watch Light]]
[[Campus map|D6 College Map]]
<<elseif $day6.principalPunishDone and not $day6.liamCourtReady>>
<p>Outdoor court. Sneakers on asphalt. A few guys run drills - but the tall one she keeps noticing is not here yet.</p>
<p>
<et>He is not here. Maybe tomorrow...</et>
</p>
[[Campus map|D6 College Map]]
<<else>>
<p>Emily walked out to the sports ground, her steps slow and thoughtful. A group of boys were playing basketball, their voices echoing across the court.</p>
<img src="Images/1.3/basket.jpg">
<p>As she watched, her eyes caught on one of them - tall, lean, confident. He moved with ease, completely in rhythm with the game. His hair was a bit messy, sweat glistening on his neck, but there was something undeniably attractive about him.</p>
<p>He paused mid-game, catching sight of her standing near the fence. And then - he winked.</p>
<p>Emily blinked, caught off guard, then smiled instinctively. Her heart skipped a beat.</p>
<p>
<et>Did he just...? Oh god, he actually winked at me.</et>
</p>
<p>She turned away quickly, trying to hide the sudden blush on her face.</p>
<p>
<et>Wow. Okay. That was... something. I need to come back here more often.</et>
</p>
[[Watch the boys play|D6 Basketball Event]]
[[Campus map|D6 College Map]]
<</if>><<set $world.location to "Portugal - basketball court">>
<<run setup.advanceTime(1)>>
<p>She watches a few possessions. Nothing new. Time thins out.</p>
<<toast "Time passes">>
[[Basketball court|D6 Basketball]]
[[Campus map|D6 College Map]]<<set $world.location to "Portugal - basketball court">>
<<set $day6.basketballDone to true>>
<<set $day6.liamQuest to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>She leans on the fence. One tall guy sinks a three without looking at the crowd - then jogs over when the point ends, ball under his arm.</p>
<p>
<liam>Nice of you to watch. I'm Liam. You new to the branch?</liam>
</p>
<p>
<e>Emily. Yeah. Still mapping the place.</e>
</p>
<p>He offers the ball with a half-smile.</p>
<p>
<liam>Court quiet after this. I can show you a few shots - no laughing, promise. If you want.</liam>
</p>
<p>They pass a little. Emily's shot goes wide. She groans. He corrects her elbows - close, not touching, presence warm.</p>
<p>She runs for a rebound, loses balance, and stumbles straight into his arms. For a second neither moves. Cheeks pink. They step apart fast.</p>
<p>
<liam>You're okay. Kinda impressive reflexes.</liam>
</p>
<p>
<e>That was... embarrassing.</e>
</p>
<p>They keep practicing until the light softens. Both a little tired, both smiling.</p>
<p>
<liam>You did really good today. Come back when you want another session. I'll be around.</liam>
</p>
<p>
<e>Thanks. I think I'm actually getting better.</e>
</p>
<<toast "Liam quest unlocked">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
/* Basketball court Liam meet (original PCD10) — independent of the main history-class quest */<<set $world.location to "Portugal - basketball court">>
/* Guard: only once ready (1 sleep after Principal no-bra event) */
<<if not $day6.liamCourtReady>>
<<goto "D6 Basketball">>
<</if>>
<<if $day6.liamCourtDone>>
<<goto "D6 Basketball">>
<</if>>
<<set $day6.liamCourtDone to true>>
<<set $day6.basketballDone to true>>
<<set $day6.liamQuest to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily walks near the edge of the court. A group of boys are shooting hoops, laughing. She spots him - Liam - tall, athletic, confident, but quiet. He sees her too... and their eyes meet for a second.</p>
<img src="Images/1.5/2.jpg">
<p>
<e>God... why does he keep looking at me like that?</e>
</p>
<p>She quickly looks away, pretending to check her phone.</p>
<p>Liam jogs over with the basketball under one arm. His shirt sticks to his chest from the sweat.</p>
<p>
<liam>Hey... Emily, right?</liam>
</p>
<p>
<e>(nervous) Yeah... you remembered?</e>
</p>
<p>
<liam>(smirking) Kinda hard to forget.</liam>
</p>
<p>Her cheeks burn. She knows exactly what he means. She fiddles with her shirt, aware again of how sensitive her chest feels without a bra.</p>
<p>
<liam>You ever play?</liam>
</p>
<p>
<e>Basketball? Uh, not really. I suck.</e>
</p>
<p>
<liam>I could teach you. Come on, just one shot.</liam>
</p>
<p>He gently tosses her the ball. She tries, misses completely. Laughing, Liam comes up behind her, guiding her arms from behind.</p>
<p>Their bodies touch. Emily can feel the heat of him behind her, his hand over hers, and her heart pounds.</p>
<p>
<e>This is... kinda close.</e>
</p>
<p>
<liam>Do you want me to stop?</liam>
</p>
<p>She does not answer. She just looks at him - he is smiling, but his eyes are intense.</p>
<p>The bell rings, breaking the moment. Emily steps back quickly.</p>
<p>
<e>I, um... I should go home.</e>
</p>
<p>
<liam>Same here.</liam>
</p>
<p>But before they part, Liam leans a little closer.</p>
<p>
<liam>I'll be here again tomorrow... maybe you will too.</liam>
</p>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
/* ===========================================================
Principal peek punishment (original PD14 / PND14)
Morning class → office — video of Emily peeking
=========================================================== */<<set $world.location to "Portugal - classroom">>
<<run setup.Phone.refreshNotes()>>
<p>Class drags. Emily can't focus - every time the door opens she half-expects a summons.</p>
<p>When the bell finally rings, a student aide stops her in the aisle.</p>
<p>
<npc>Aide:</npc> Emily? Principal Johnson wants you in his office. Now.
</p>
<p>Her stomach drops. The history teacher is already walking that way, tablet under one arm.</p>
[[Principal's office|D6 Principal Peek Punish]]<<set $world.location to "Portugal - principal office">>
<<if $day6.principalPeekPunishDone>>
<<goto "D6 College Map">>
<</if>>
<<if not $day6.principalPeekPunishReady>>
<<goto "D6 Principal">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily nervously pushed open the principal's office door and stepped inside. Mr. Johnson, the principal, stood behind his desk with a stern expression, and her History teacher was by his side.</p>
<p>
<principal>Sit down, Emily.</principal>
</p>
<p>He commanded firmly, gesturing to the chair in front of him. Emily obeyed, her heart pounding. Mr. Johnson picked up a tablet and tapped a few buttons. The screen lit up, showing a video of Emily peeking into the principal's room.</p>
<p>
<principal>This... is unacceptable!</principal>
</p>
<p>His voice boomed, making Emily flinch.</p>
<p>
<principal>I've warned you not to do anything like this. This is my college, and it requires discipline. Do you understand?</principal>
</p>
<p>Emily's eyes widened, guilt and fear flooding her. She nodded quickly, unable to find her voice.</p>
<p>
<principal>Because of your actions, I have no choice. You must be punished.</principal>
</p>
<p>
<npc>History teacher:</npc> Emily... I hope you understand the seriousness of this.
</p>
<p>She added quietly, giving her a concerned glance.</p>
[[Next|D6 Principal Peek Punish 2]]<<set $world.location to "Portugal - principal office">>
<<set $day6.principalPeekPunishDone to true>>
<<set $day6.principalPeekPunishReady to false>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>
<principal>Emily. Pull your panties down and bend down, leaning toward the table.</principal>
</p>
<p>
<e>Ok sir.</e>
</p>
<p>Emily does as her principal said - pulls her panties down and leans over the table.</p>
<img src="Images/1.7/7.gif">
<p>Her history teacher comes near Emily and puts two fingers inside her.</p>
<p>
<e>Ahh, ma'am - it's hurting.</e>
</p>
<p>
<npc>History teacher:</npc> This is your punishment, darling.
</p>
<img src="Images/1.7/8.gif">
<p>After some minutes Emily squirts all over the floor.</p>
<img src="Images/1.7/9.jpg">
<p>
<principal>Good. You can leave now - and I hope you never forget this.</principal>
</p>
<<toast "Principal punishment · Corruption +1">>
[[Leave|D6 College Map]]
/* ===========================================================
Basketball challenge with Liam (original BSD14)
=========================================================== */<<set $world.location to "Portugal - basketball court">>
<<if $day6.bsd14Done>>
<<goto "D6 Basketball">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped onto the basketball court, spotting Liam practicing his shots alone. She leaned casually against the fence, a teasing smile on her lips.</p>
<p>
<e>Hey, Liam... I think I'm way better than you at basketball.</e>
</p>
<p>Liam paused, eyebrow raised, a smirk forming.</p>
<p>
<liam>Oh really? You think you can beat me?</liam>
</p>
<p>
<e>Absolutely. I'm way better than you.</e>
</p>
<p>Liam's smirk widened.</p>
<p>
<liam>Alright... how about this? Make a basket from there -</liam>
</p>
<p>He pointed toward the three-point line.</p>
<p>
<liam>- and I'll do whatever you want. Whatever. No questions.</liam>
</p>
<p>Emily's eyes sparkled at the challenge.</p>
<p>
<e>Hmm... that sounds fair.</e>
</p>
<p>She lined up her shot, Liam watching closely, anticipation and playful tension crackling between them.</p>
[[Emily scored|D6 Basketball Score]]
[[She missed|D6 Basketball Miss]]<<set $world.location to "Portugal - basketball court">>
<<set $day6.bsd14Done to true>>
<<set $day6.bsd14Ready to false>>
<<set $day6.bsd14Scored to true>>
<<set $day6.basketballDone to true>>
<<set $day6.liamDateWaitSleeps to 0>>
<<set $day6.liamDateReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily released the ball with a confident flick of her wrist. For a brief second, everything felt still. The ball arced perfectly through the air - swish. It dropped cleanly through the hoop.</p>
<p>Emily froze, then slowly turned toward Liam, a smug smile spreading across her lips.</p>
<p>
<e>Looks like... I won.</e>
</p>
<p>Liam let out a low laugh, shaking his head in disbelief as he walked closer.</p>
<p>
<liam>No way... that was actually perfect. Alright, a deal's a deal.</liam>
</p>
<p>He stopped in front of her, eyes meeting hers.</p>
<p>
<liam>So... what do you want in return?</liam>
</p>
<p>Emily pretended to think, tapping her finger against her chin.</p>
<p>
<e>A coffee date. Tomorrow evening.</e>
</p>
<p>Liam blinked once - then smiled. A genuine one.</p>
<p>
<liam>Yeah. I can do that. Tomorrow evening it is.</liam>
</p>
<p>
<e>Don't be late.</e>
</p>
<<toast "Coffee date with Liam tomorrow evening">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]<<set $world.location to "Portugal - basketball court">>
<<set $day6.bsd14Done to true>>
<<set $day6.bsd14Ready to false>>
<<set $day6.bsd14Scored to false>>
<<set $day6.basketballDone to true>>
<<set $day6.liamDateWaitSleeps to 0>>
<<set $day6.liamDateReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily took a deep breath and released the ball. It left her fingertips slightly off. The ball hit the rim, circled once... twice... and then bounced out, clattering onto the court.</p>
<p>Emily let out a small groan, placing her hands on her hips before looking at Liam.</p>
<p>
<e>Hey... that almost went in.</e>
</p>
<p>Liam chuckled, jogging over to grab the ball.</p>
<p>
<liam>Almost doesn't count. But hey, that was a good try.</liam>
</p>
<p>He stepped closer, eyes warm instead of smug.</p>
<p>
<liam>Tell you what - how about you join me for a practice session tomorrow? There's a nice court in the park. Evening breeze, less people. I'll help you improve that shot.</liam>
</p>
<p>
<e>Alright. But don't go too easy on me.</e>
</p>
<<toast "Park practice with Liam tomorrow evening">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
/* ===========================================================
Principal route — 5 days after PD14: CLD15 Gwen + PD15 punish
=========================================================== */<<set $world.location to "Portugal - classroom">>
<<if $day6.principalGwenDone>>
<<goto "D6 College Map">>
<</if>>
<<set $day6.classDone to true>>
<<set $day6.collegeDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily pushed open the classroom door fifteen minutes early, hoping for a quiet corner to cool off before lectures began. The room wasn't empty.</p>
<p>Gwen was already there, lounging in the back row with her usual pack of four girls, all of them scrolling on their phones and giggling. The moment Emily stepped inside, the laughter sharpened, heads turning toward her like predators scenting blood.</p>
<p>Gwen's glossy lips curled into a smirk.</p>
<p>
<gwen>Look who decided to show up early. Trying to avoid us, loser?</gwen>
</p>
<p>Her friends snickered. One made a mocking kissy face.</p>
<p>Emily ignored them, jaw tight, and marched to her usual seat near the front. She dropped her backpack beside the bench, sat down, and pulled out her notebook, pretending to review notes while her pulse hammered.</p>
<p>Students trickled in over the next few minutes. The bell rang. The professor came.</p>
[[Class|D6 Classroom Gwen Dildo]]<<set $world.location to "Portugal - classroom">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Halfway through, as the professor scribbled on the board, a chair scraped loudly in the back. Gwen herself stood up this time, hand raised with fake innocence.</p>
<p>
<gwen>Ma'am? Excuse me, ma'am!</gwen>
</p>
<p>
<npc>Professor:</npc> Yes, Gwen?
</p>
<p>
<gwen>I think you should see what Emily brought to college today. It's... educational.</gwen>
</p>
<p>Before anyone could react, Gwen reached over two desks, snatched Emily's open backpack from the floor, and plunged her hand inside. Emily's stomach dropped.</p>
<p>
<et>No—no way—</et>
</p>
<p>Gwen's hand emerged triumphant, holding a thick, veiny, eight-inch dildo aloft like a trophy. She waved it slowly so the whole room could see.</p>
<img src="Images/1.8/10.jpg">
<p>The class erupted. Laughter exploded - sharp, cruel, unstoppable. Guys whistled. Girls gasped and giggled. Someone in the back yelled,</p>
<p>
<npc>Classmate:</npc> Damn, Emily, didn't know you were packing like that!
</p>
<p>
<npc>Classmate 2:</npc> Bet she uses it to study anatomy!
</p>
<p>Emily sat frozen, face burning crimson, staring at the toy in Gwen's hand. She had never seen it before in her life.</p>
<p>
<e>That's not— I didn't—</e>
</p>
<p>Her voice was drowned out by the roar of laughter. The professor's face darkened to thunderous red. She slammed her marker on the desk.</p>
<p>
<npc>Professor:</npc> Silence!
</p>
<p>The room quieted to nervous giggles. The professor marched down the aisle, snatched the dildo from Gwen's hand, and wrapped it in a tissue from her pocket as if it were radioactive.</p>
<p>
<npc>Professor:</npc> Emily. Principal's office. After class. Do not leave this room until I dismiss you.
</p>
<p>Her eyes flicked to Gwen and the back row, cold and furious.</p>
<p>
<npc>Professor:</npc> And the rest of you - anyone else disrupting my class will join her. Understood?
</p>
<p>No one dared answer. The professor returned to the front, deposited the wrapped object into her briefcase with a loud snap, and resumed the lecture as if nothing had happened.</p>
<p>Emily stared at her blank notebook, tears of rage and humiliation stinging her eyes. She didn't look up for the rest of the period. Gwen leaned forward from the back, voice a low sing-song whisper just loud enough for Emily to hear.</p>
<p>
<gwen>Better get used to detention, slut.</gwen>
</p>
<p>Emily's hands curled into fists on the desk, nails digging into her palms.</p>
<p>
<et>She planted it. She had to have.</et>
</p>
<p>The clock ticked agonizingly slowly toward the end of class.</p>
<<toast "Corruption +1">>
[[After class|D6 Classroom Gwen After]]<<set $world.location to "Portugal - classroom">>
<<run setup.Phone.refreshNotes()>>
<p>The bell finally rang. Students shuffled out, some still snickering, throwing sidelong glances at Emily as they passed. She stayed seated, knuckles white around her pen, until the professor approached.</p>
<p>
<npc>Professor:</npc> Emily. Principal's office. Now.
</p>
<p>
<e>Yes, ma'am.</e>
</p>
<p>But she didn't head straight there. The moment the professor left, Emily shot to her feet, backpack slung over one shoulder, and stormed toward the back of the room.</p>
<p>Gwen was still lounging in her seat, surrounded by her giggling friends, examining her nails like nothing had happened. Emily stopped right in front of her, trembling with rage.</p>
<p>
<e>Why the hell did you do that? You planted that thing in my bag. Why?</e>
</p>
<p>Gwen looked up slowly, lips curling into a lazy, venomous smile.</p>
<p>
<gwen>Oh, sweetie. Because it's funny. Everyone already thinks you're a desperate little freak. I just gave them proof.</gwen>
</p>
<p>Her friends burst out laughing. Emily stepped closer, fists clenched.</p>
<p>
<e>You're disgusting. You think this is—</e>
</p>
<p>Gwen stood up abruptly, towering over her. Before Emily could react, Gwen's hands shot out - palms flat against Emily's shoulders - and shoved hard.</p>
<p>Emily stumbled backward, foot catching on a chair leg. She went down hard, landing on her back on the classroom floor with a sharp gasp. Her short skirt flipped up from the impact, folding completely over her stomach. Pale pink cotton panties - simple, with a tiny lace trim - were suddenly on full display to the half-dozen girls still lingering in the room.</p>
<p>Laughter exploded again, louder this time.</p>
<img src="Images/1.8/11.jpg">
<p>
<npc>Gwen's friend:</npc> Nice underwear, virgin!
</p>
<p>
<npc>Gwen's friend 2:</npc> Pink? How cute.
</p>
<p>Phones flashed. Gwen loomed over her, smirking down.</p>
<p>
<gwen>Careful, Emily. Keep running your mouth and next time it won't just be a toy in your bag.</gwen>
</p>
<p>Emily scrambled to her feet, yanking her skirt down with burning hands, face scarlet. Tears of pure fury blurred her vision, but she refused to let them fall. She didn't say another word. She grabbed her backpack from where it had fallen, shoved past the cackling group, and stormed out of the classroom.</p>
[[Principal's office|D6 Principal Gwen Punish]]<<set $world.location to "Portugal - principal office">>
<<run setup.Phone.refreshNotes()>>
<p>Emily stood outside the principal's office at exactly 4 p.m., hand trembling as she knocked.</p>
<p>
<principal>Enter.</principal>
</p>
<p>The door clicked shut behind her with a finality that made her stomach twist. Mr. Johnson sat behind his desk, tie loosened, sleeves rolled up to reveal strong forearms. The room was dim - blinds half-drawn, only the desk lamp casting a warm pool of light. The wrapped dildo was gone, but his eyes held the same cold fury from earlier. He didn't offer her a seat.</p>
<p>
<principal>You're late by thirty seconds. I've warned you repeatedly about discipline, Emily. Dress code. Behavior. Respect. And today you bring a sex toy to my classroom?</principal>
</p>
<p>
<e>Sir, please—it wasn't—</e>
</p>
<p>
<principal>Enough!</principal>
</p>
<p>He stood abruptly, towering over the desk.</p>
<p>
<principal>I'm done with excuses. Today's punishment will be far more severe than anything before. You need to learn humility. Obedience.</principal>
</p>
<p>He walked around the desk, stopping inches from her. The scent of his cologne - sharp, masculine - filled her space.</p>
<p>
<principal>Take off your clothes. All of them. Now.</principal>
</p>
<p>Emily's breath hitched. Her eyes widened, but his stare pinned her in place.</p>
<p>
<e>Mr. Johnson—</e>
</p>
<p>
<principal>Do it, or you're expelled.</principal>
</p>
<p>The threat hung heavy. Emily's fingers shook as they moved to the hem of her top. She pulled it over her head slowly, revealing the black lace bra beneath. Her cheeks burned crimson.</p>
<img src="Images/1.8/12.gif">
<p>Next, the skirt - unzipped and let fall, pooling at her feet. She stepped out of it in just her bra, pink cotton panties, and shoes.</p>
<p>
<principal>Everything.</principal>
</p>
<p>She reached behind her back, unhooking the bra. It slid off her shoulders, breasts spilling free - full, nipples already tightening under his gaze. Finally, she hooked her thumbs into her panties and pushed them down, stepping out until she stood completely naked before him.</p>
<img src="Images/1.8/13.gif">
<p>Mr. Johnson's eyes roamed over her body - slow, deliberate - lingering on her bare chest, the curve of her hips, the soft patch between her thighs. He sat back on the edge of the desk, arms crossed.</p>
<p>
<principal>Sit in the chair. Legs spread. Touch yourself.</principal>
</p>
<p>Emily's heart thundered. She moved to the leather chair facing him, sinking down, thighs parting hesitantly. Cool air kissed her exposed skin.</p>
<img src="Images/1.8/14.gif">
[[Next|D6 Principal Gwen Punish 2]]<<set $world.location to "Portugal - principal office">>
<<set $day6.principalGwenDone to true>>
<<set $day6.principalGwenReady to false>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 2, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>
<principal>I want to watch you masturbate. Slowly at first. Show me how a disobedient girl pleasures herself when she knows she's been bad.</principal>
</p>
<p>Her hand trembled as it slid between her legs. Fingers found her clit - already swollen despite her humiliation - and she began to circle, light and tentative. Mr. Johnson watched intently, breathing deepening.</p>
<img src="Images/1.8/15.gif">
<p>
<principal>Faster. Use two fingers inside. I want to hear you.</principal>
</p>
<p>Emily obeyed, sliding two fingers into her wetness with a soft gasp. She was shocked at how slick she already was. Her hips rocked slightly as she pumped, thumb rubbing her clit in tight circles. Breaths turned to whimpers.</p>
<img src="Images/1.8/16.gif">
<p>The room filled with the wet sounds of her fingers, her quiet moans, his steady gaze burning into her.</p>
<p>
<principal>Look at me while you do it. Don't close your eyes.</principal>
</p>
<p>She forced her eyes to his - dark, commanding - as pleasure coiled tighter and tighter low in her belly.</p>
<p>
<et>This is wrong... so wrong... but I can't stop—</et>
</p>
<p>Her back arched. Thighs trembled. She rubbed faster, fingers plunging deeper, chasing the building wave. A low moan escaped her lips.</p>
<p>
<principal>Come for me, Emily. Show me what happens to naughty girls who don't listen.</principal>
</p>
<p>It hit suddenly - sharp, overwhelming. Her body tensed, hips bucking off the chair as she squirted in a hot, clear rush over her fingers and onto the leather seat beneath her.</p>
<img src="Images/1.8/17.gif">
<p>A broken cry tore from her throat, echoing in the quiet office. She shuddered through the aftershocks, hand slowing, chest heaving. Mr. Johnson let the silence stretch, eyes never leaving her flushed, trembling form. Finally, he spoke.</p>
<p>
<principal>Clean yourself up. Get dressed. And leave.</principal>
</p>
<p>Emily stood on shaky legs, grabbing tissues from his desk to wipe her thighs and the chair. She dressed quickly - fingers fumbling with hooks and zippers - avoiding his gaze. When she reached the door, his voice stopped her.</p>
<p>
<principal>One more infraction, Emily - one more - and next time I won't stop at watching.</principal>
</p>
<p>She didn't respond. Couldn't. She slipped out, door closing softly behind her, the hallway empty and silent. Her body still hummed with forbidden heat as she walked away, the principal's warning ringing in her ears.</p>
<<toast "Principal severe punishment · Corruption +2">>
[[Hallway|D6 College Hall After Gwen]]<<set $world.location to "Portugal - college hallway">>
<<set $world.time to "Evening">>
<<run setup.Phone.refreshNotes()>>
<p>Emily stood near the edge of the hallway, her eyes casually drifting toward the cafeteria entrance. Her thoughts weren't on the buzzing chatter of students or the echoing footsteps in the corridor.</p>
<img src="Images/1.2/4.jpg">
<p>
<et>Just leave. Survive the walk home.</et>
</p>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
/* ===========================================================
Liam next-day date / practice (original Coffe Date / Basketball practice)
=========================================================== */<<set $world.location to "Portugal - cafeteria evening">>
<<if $day6.liamDateDone>>
<<goto "D6 College Map">>
<</if>>
<<set $day6.liamDateDone to true>>
<<set $day6.liamDateReady to false>>
<<set $day6.liamCoffeeDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>The cafeteria was calm in the evening - soft chatter, the low hum of a coffee machine, warm lights reflecting off wooden tables.</p>
<p>Emily sat near the window, hands wrapped around her cup, watching the steam rise. Moments later, Liam walked in, spotting her almost instantly. He smiled.</p>
<p>
<liam>Hey. I was worried I might be late.</liam>
</p>
<p>
<e>You're right on time.</e>
</p>
<p>They ordered their coffee and settled in, the initial nervousness fading with every passing second.</p>
<p>
<liam>So... what were you like as a kid?</liam>
</p>
<p>Emily laughed softly.</p>
<p>
<e>Way too confident for no reason. I once told my teacher I'd become famous before finishing school.</e>
</p>
<p>Liam burst out laughing.</p>
<p>
<liam>That actually sounds like something you would do. Did it work?</liam>
</p>
<p>
<e>Not yet. But I'm still hopeful.</e>
</p>
<p>Liam shook his head, amused.</p>
<p>
<liam>I was the opposite. Quiet kid. Spent most of my time playing alone... or missing easy basketball shots.</liam>
</p>
<p>
<e>Really? Hard to imagine. Guess practice really paid off.</e>
</p>
<p>
<liam>Guess so.</liam>
</p>
<p>He smiled at her a little longer than necessary. They laughed, trading small stories - school mishaps, childhood dreams, silly memories that made time pass unnoticed. The cups emptied, but neither seemed eager to leave.</p>
<p>Eventually, they both stood, gathering their things.</p>
<p>
<liam>I had a really good time.</liam>
</p>
<p>
<e>Me too.</e>
</p>
<p>After long talks they decide to leave - the evening air cooler, her pulse a little lighter.</p>
<<toast "Coffee date with Liam done">>
[[Campus map|D6 College Map]]
[[Leave campus|D6 Leave College]]
[[Town|D6 Town Map]]<<set $world.location to "Portugal - park court evening">>
<<if $day6.liamDateDone>>
<<goto "D6 Park">>
<</if>>
<<set $day6.liamDateDone to true>>
<<set $day6.liamDateReady to false>>
<<set $day6.liamPracticeDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>The park court was quiet in the evening, painted in soft orange light as the sun slowly dipped behind the trees.</p>
<p>Emily bounced the ball nervously, glancing at Liam.</p>
<p>
<e>Okay... don't laugh if I mess up.</e>
</p>
<p>Liam smiled, stepping closer.</p>
<p>
<liam>No laughing. I'm here to teach, remember?</liam>
</p>
<p>He showed her how to position her hands, standing just behind her - not touching, but close enough that she could feel his presence.</p>
<p>
<liam>Keep your elbows steady. And follow through.</liam>
</p>
<p>Emily tried again. The shot went wide.</p>
<p>
<e>Ugh... I'm terrible.</e>
</p>
<p>
<liam>You're not. You're just learning.</liam>
</p>
<p>They moved around the court, passing the ball back and forth. Emily ran for a loose rebound, lost her balance - and suddenly stumbled forward. She fell straight into Liam's arms.</p>
<p>For a second, neither of them moved. Emily's hands clutched his shirt instinctively, her face dangerously close to his. Liam's arms were wrapped around her, holding her steady. Both of them froze.</p>
<p>
<e>I—</e>
</p>
<p>
<liam>You're okay.</liam>
</p>
<p>They quickly stepped apart, both avoiding eye contact for a moment.</p>
<p>
<e>That was... embarrassing.</e>
</p>
<p>Liam laughed lightly, rubbing the back of his neck.</p>
<p>
<liam>Kinda. But also... impressive reflexes.</liam>
</p>
<p>Emily smiled despite herself. They continued practicing, the air between them lighter now - shared glances, small laughs, shots slowly improving. As the sky darkened, they finally stopped, both a little tired but smiling.</p>
<p>
<liam>You did really good today.</liam>
</p>
<p>
<e>Thanks. I think I'm actually getting better.</e>
</p>
<<toast "Park practice with Liam done">>
[[Park|D6 Park]]
[[Town|D6 Town Map]]
/* ── Library: research the alchemist glasses (Kelly's diary follow-up) ── */<<set $world.location to "Portugal - college library">>
<<= setup.locBannerHtml("classroom", "Library", $world.time)>>
<p>Rows of tall shelves, dust drifting through the light from narrow windows. A handful of students hunch over laptops. Behind the front desk sits the librarian - reading glasses low on her nose, the kind of stare that has ended a thousand conversations before they started.</p>
<<if $day6.libraryResearchDone>>
<p>Emily's already gotten what she came for. She still likes the quiet in here, though - it's one of the few places in this town that doesn't feel like it's watching her.</p>
<p>
<et>Everything I needed is already in my head. No reason to keep coming back here.</et>
</p>
[[Campus map|D6 College Map]]
<<elseif $day6.libraryBookGotten>>
<p>The book's already home, waiting on her desk. Nothing left to do here today.</p>
[[Campus map|D6 College Map]]
<<else>>
<p>
<et>Kelly said there might be something here. Only one way to find out.</et>
</p>
[[Ask the librarian about the book|D6 Library Ask]]
[[Campus map|D6 College Map]]
<</if>><<set $world.location to "Portugal - college library">>
<<set $day6.libraryBookAsked to true>>
<<set _int to Number($player.intelligence) || 0>>
<p>Emily steps up to the desk, keeping her voice low.</p>
<p>
<e>Hi. I'm looking for a book - something about alchemy, old stones, lenses maybe. I think it might be called "The Alchemist's Almanac"?</e>
</p>
<p>The librarian's eyes flick up over the rim of her glasses, sharp and assessing.</p>
<<if _int gte 10>>
<p>
<npc>Librarian:</npc> Huh. Not the kind of question I get twice in one semester.
</p>
<p>She studies Emily a moment longer, then sighs and pushes back from the desk.</p>
<p>
<npc>Librarian:</npc> That one doesn't leave the reference section for just anyone. But you look like you actually know what you're asking for, not just chasing a rumor. Fine.
</p>
<p>She returns a minute later with a heavy, leather-bound book, its spine cracked with age, and sets it down in front of Emily like she's handing over something fragile.</p>
<p>
<npc>Librarian:</npc> Take it home if you need to. Just don't lose it, and don't spill anything on it.
</p>
<p>Emily slides it into her bag, careful, like it might crack from the wrong angle.</p>
<p>
<et>Tonight, then. Somewhere quiet.</et>
</p>
<<set $day6.libraryBookGotten to true>>
<<run setup.Phone.refreshNotes()>>
<<toast "Got the book — The Alchemist's Almanac">>
[[Campus map|D6 College Map]]
<<else>>
<p>
<npc>Librarian:</npc> That book doesn't leave the reference shelf for just anyone who wanders in asking.
</p>
<p>
<e>I really need it. It's important.</e>
</p>
<p>
<npc>Librarian:</npc> Everyone who asks says that. Truth is, most students borrow it, read two pages, and toss it back like a magazine. That book's older than this building. I only hand it to students who've actually proven they can think - real intelligence, not just enthusiasm.
</p>
<p>
<et>She's not going to budge. I need to be sharper before she'll even consider it.</et>
</p>
<p class="hub-hint"><em>Requires Intelligence 10 (now <<= _int>>).</em></p>
[[Back to the library|D6 Library]]
<</if>><<set $world.location to "Portugal - forest edge">>
<<if $day5.forestDone>>
<p>The path is still there. She already walked it once. Whatever waited in the clearing - she already chose.</p>
[[Town map|D5 Town Map]]
<<else>>
<<set $world.time to "Evening">>
<<goto "D5 Forest Path">>
<</if>><<set $world.location to "Portugal - forest path">>
<<set $world.time to "Evening">>
<p>Emily leaves the main streets, fingers clutching an old page from her mother's diary. The sun dips, gold over the buildings, until town gives way to trees.</p>
<img src="Images/Day 5/forest.jpg">
<p>Dense trees. Dirt path. She blinks at the coordinates again.</p>
<p>
<e>This can't be right... Why would she come here?</e>
</p>
<p>Dry leaves under her boots. Wind in the branches. For a moment she thinks she hears Mom's voice:</p>
<p><em>Follow the path where light forgets to shine...</em></p>
<p>
<et>Seriously, Mom. Straight out of a thriller.</et>
</p>
<p>Ten minutes more. A clearing. Moss-covered stone bench. A broken signpost pointing nowhere. No door. No chest. Just quiet - until something catches her eye.</p>
<p>Near a tree base, half-buried in leaves: a weathered stone slab. A symbol matching Mom's diary.</p>
<p>
<e>Bingo.</e>
</p>
[[Inspect the stone|D5 Forest Stone]]<<set $world.location to "Portugal - forest clearing">>
<p>Emily kneels and brushes dust away. Beneath: a rectangular plate etched with patterns - and writing in a language she has never seen.</p>
<p>The runes seem to pulse faintly when she leans closer. This is not a casual curiosity; the stone refuses to yield unless she reads it correctly.</p>
<div id="stoneInspectGame" class="stone-inspect-game" role="group" aria-label="Stone inspection puzzle">
<div class="stone-inspect-title">Inspect the stone</div>
<p class="stone-inspect-hint">The marks are not random. Each symbol points to the next piece of the message. Solve it carefully, or the clearing will close around her.</p>
<div class="stone-inspect-progress" id="stoneInspectProgress">Step 1 of 4</div>
<div class="stone-inspect-clue" id="stoneInspectClue">Choose the symbol that watches over the forgotten road.</div>
<div class="stone-inspect-options">
<button type="button" class="stone-inspect-option" data-value="moon">☾ Moon</button>
<button type="button" class="stone-inspect-option" data-value="leaf">❁ Leaf</button>
<button type="button" class="stone-inspect-option" data-value="eye">◌ Eye</button>
<button type="button" class="stone-inspect-option" data-value="key">⟡ Key</button>
<button type="button" class="stone-inspect-option" data-value="star">✦ Star</button>
<button type="button" class="stone-inspect-option" data-value="wave">≈ Wave</button>
</div>
<div class="stone-inspect-status" id="stoneInspectStatus">The stone answers only to careful eyes.</div>
<button type="button" class="stone-inspect-hint-btn" data-stone-hint>Need a hint?</button>
<div class="stone-inspect-reveal" id="stoneInspectReveal" hidden>
<p><strong>The inscription resolves:</strong></p>
<p>“Follow the path where light forgets to shine...”</p>
</div>
<div class="stone-inspect-advance-wrap">
<button type="button" class="stone-inspect-advance" id="stoneInspectAdvance" hidden>Reveal the strange text</button>
</div>
</div>
<<run setup.bindStoneInspectionMinigame({ rootId: "stoneInspectGame", revealText: "Follow the path where light forgets to shine..." })>>
<p>
<e>What the hell... This isn't Portuguese. Or anything I've ever seen.</e>
</p>
<p>She snaps three photos - angles, light. Heart pounding. The forest feels colder. Heavier.</p>
<p>
<et>Maybe this is why she came here.</et>
</p>
<<toast "The stone's hidden pattern begins to surface">>
<p>The stone still refuses to open. She must solve the pattern before she can continue.</p>
[[Return to town|D5 Town Map]]<<set $world.location to "Portugal - forest clearing">>
<p>The runes finally settle. A faint glow spills across the stone, and the hidden text rises in sharp, strange letters.</p>
<div class="mystery-container">
<div class="mysterious-text">Ilana sera nei, ka lira vesil aen fae luth vel, noris. Ai'il fara nei vey luma ka'elan noris val.</div>
</div>
<p>
<e>What the hell... This isn't Portuguese. Or anything I've ever seen.</e>
</p>
<p>She stares at the script until her eyes sting. The message is real. The forest is listening.</p>
[[Continue into the clearing|D5 Forest Glass]]<<set $world.location to "Portugal - forest clearing">>
<p>The stone rejects her. The symbols slip apart the moment she reaches for the answer, and a cold silence settles over the clearing.</p>
<p>Emily backs away with her pulse hammering, feeling as though the forest has just closed a door in her face.</p>
<p><em>She leaves without the truth, only a growing dread.</em></p>
[[Try the minigame again|D5 Forest Stone]]
[[Return to town|D5 Town Map]]<<set $world.location to "Portugal - forest clearing">>
<p>Emily turns back toward the trail - then freezes.</p>
<p>A glimmer. Glass. Atop a moss-covered stone: a delicate, ancient-looking vessel filled with faintly glowing liquid. Blue and violet swirl like a tiny galaxy.</p>
<p>
<e>What the...</e>
</p>
<p>She drops her bag, flips the diary. A faded photo shows that exact glass on that exact stone.</p>
<div class="diary-entry">
<div class="entry-header">Daisy's Diary</div>
<div class="entry-date">18/03/2002</div>
<div class="entry-content">
<img src="Images/Day 5/drink.png">
I drank it. What happened next... I don't remember. The pages...
</div>
</div>
<p>
<e>She drank it...</e>
</p>
<p>Her eyes dart from photo to liquid. Mom came here. Drank this. And whatever happened next was important enough that the page is missing.</p>
<p>Now it waits again.</p>
<<link 'Drink it' "D5 Drink">><</link>>
[[Don't drink it|D5 No Drink]]<<set $day5.drank to true>>
<<set $day5.forestDone to true>>
<<set $player.intelligence to Math.max(0, Number($player.intelligence) - 1)>>
<<set $world.location to "Portugal - forest clearing">>
<<run setup.Phone.refreshNotes()>>
<p>Emily stares at the shimmering liquid. Heart pounding. Deep breath.</p>
<p>
<e>If she drank it... so can I.</e>
</p>
<p>Cool rim. One last hesitation - then she drinks.</p>
<p>Surprisingly smooth. Slightly sweet. A tingle on her tongue. She waits for light, sound, vision - anything.</p>
<p>Nothing comes.</p>
<p>
<e>That's it?</e>
</p>
<p>No dizziness. No revelation. Disappointment mixed with relief.</p>
<p>
<et>I should go back...</et>
</p>
<<toast "Intelligence -1">>
[[Path back|D5 Drink Effect]]<<set $world.location to "Portugal - forest path">>
<<set $world.time to "Evening">>
<p>As Emily makes her way toward the road, the last sun filters gold through the trees. Air cooler - but her skin feels strangely warm. Flush on her cheeks.</p>
<<set $day5.hornyMode to true>>
<<run setup.bigFade("You are feeling horny")>>
<p>
<e>Why is it suddenly... hot?</e>
</p>
<p>Breath heavier. Tension low in her belly - familiar and wrong. She shakes her head.</p>
<p>
<e>No. Not now. What the hell was in that drink?</e>
</p>
<p>Footsteps on the trail. An old man with a weathered face and cane emerges, smiling kindly.</p>
<p>
<pr>Stranger:</pr> Oh - hello there, miss. You wouldn't know which way leads back to the village road? I got a little turned around.
</p>
<p>Emily opens her mouth - and her eyes linger a second too long. The warmth pulses stronger. She looks away hard.</p>
<p>
<e>Uh... yeah, down that path, left at the clearing.</e>
</p>
<p>Lewd images flash uninvited. Shock. Shame.</p>
<img src="Images/Day 5/10.gif">
<p>
<et>What is wrong with me...</et>
</p>
<p>The old man tips his hat and continues on. Emily stands flushed, breathing hard.</p>
<p>
<e>That drink... It's doing something.</e>
</p>
<<if not $flags.d5_drink_cor>>
<<set $flags.d5_drink_cor to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1 · Feeling horny">>
<</if>>
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]<<set $day5.drank to false>>
<<set $day5.forestDone to true>>
<<set $world.location to "Portugal - forest clearing">>
<<run setup.Phone.refreshNotes()>>
<p>Emily stares at the glass. Diary photo. Missing page. Fingers tremble as she closes the book and steps back.</p>
<p>
<e>I... I can't. I don't know what this is. What if it's dangerous? What if it changes something I can't undo?</e>
</p>
<p>One last glance - then she turns away. Leaves under her boots. Heart pounding not with fear, but with the weight of restraint.</p>
<p>
<et>I should just go back now.</et>
</p>
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]
/* ===========================================================
DAY 6+ - Forest gate (after washroom + 2 days, Evening)
Ritual → gate → Gwen slaps Kelly → rescue → home alliance
=========================================================== */<<set $world.location to "Portugal - forest edge">>
<<set $day6.leftHome to true>>
<<if $day6.kellyForestMsgSeen and not $day6.pondVisionDone>>
<<goto "D6 Forest Pond Meet">>
<<elseif $day6.secondGateReady and not $day6.secondGateDone>>
<<goto "D6 Second Gate Meet">>
<<elseif $day6.pondVisionDone>>
<p>The pond still lies deeper in. The vision is burned into her mind. Nothing more tonight.</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<elseif $day6.secondGateDone>>
<p>The stone gate is quiet again. The chamber's trial is done - for now.</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<elseif $day6.forestGateDone>>
<p>The trees remember. The first gate is sealed again. Kelly will text when it's time for more.</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<else>>
<p>The same trees. The same path where light forgets to shine. Nothing new moves in the clearing - not today.</p>
<p>
<et>Something's still sleeping out here. Not yet.</et>
</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<</if>>
/* ═══════════════════════════════════════════════════════════
Pond vision after Kelly forest message (FD12 / GD12 / N4D12)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - forest">>
<<set $day6.leftHome to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily pushed through the trees, the forest quiet except for the soft rustle of leaves under her feet. Up ahead, she spotted Kelly waiting near a clearing.</p>
<p>
<kelly>Finally! Took you long enough.</kelly>
</p>
<p>
<e>Yeah, yeah. Let's get moving. We're here for the next gate, right?</e>
</p>
<p>Kelly nodded, a determined look in her eyes.</p>
<p>
<kelly>Exactly. Let's see what this one has in store for us.</kelly>
</p>
<p>The two of them stepped forward together, ready to explore whatever waited deeper in the forest.</p>
[[Next|D6 Forest Pond Vision]]<<set $world.location to "Portugal - magical pond">>
<p>As Kelly and Emily stepped through the trees, the forest opened into a wide clearing. At the center was a large pond, its surface shining like polished glass, the water so clear it seemed unreal.</p>
<img src="Images/9.jpg">
<p>Emily froze, her breath catching in her throat. On the surface of the pond, instead of her own reflection, she saw the familiar face of her mother.</p>
<p>
<daisy>Emily... you've grown so much.</daisy>
</p>
<p>The reflection whispered softly, lips moving as though she were standing right there.</p>
<p>Emily's eyes widened, her heart pounding.</p>
<p>
<e>...Mom?</e>
</p>
<p>She leaned closer, trying to make sense of the vision.</p>
<p>Beside her, Kelly had also gone still, her eyes locked on the water.</p>
<p>
<e>Kelly... what do you see?</e>
</p>
<p>Kelly shook her head slowly, her voice low and uncertain.</p>
<p>
<kelly>...It's not the same as yours. But... I swear, it's speaking to me too.</kelly>
</p>
<p>The two of them stood in silence, the pond glowing faintly under the moonlight, each caught in their own reflection of something impossible.</p>
<p>The surface ripples without wind. Filthy, sweet whispers rise from the glass - some true, some lies. Emily must listen carefully... or the pond will own her mind.</p>
<div id="pondWhisperEmily" class="pond-whisper" role="group" aria-label="Pond whisper minigame — Emily">
<p class="pond-whisper-title">Whispers for Emily</p>
<p class="pond-whisper-hint"><strong>Accept</strong> the pond's erotic truth. <strong>Reject</strong> false static. Too many mistakes and the water keeps her as its slut.</p>
<div class="pond-whisper-hud">
<span>Decoded <strong class="pond-whisper-score">0 / 5</strong></span>
<span>Mistakes <strong class="pond-whisper-miss">0 / 2</strong></span>
</div>
<div class="pond-whisper-card">
<div class="pond-whisper-tag">…</div>
<p class="pond-whisper-text">Listening…</p>
</div>
<p class="pond-whisper-status"></p>
<div class="pond-whisper-actions">
<button type="button" data-pond-accept>Accept whisper</button>
<button type="button" data-pond-reject>Reject whisper</button>
</div>
</div>
<<run setup.bindPondWhisperMinigame({ rootId: "pondWhisperEmily", who: "emily", next: "D6 Pond Emily POV", nextFail: "D6 Pond Bad Emily", needCorrect: 5, maxMisses: 2 })>>
/* ── Emily's pond vision (full erotic path) ── */<<set $world.location to "Portugal - pond vision">>
<<set $day6.pondEmilyDone to true>>
<p>Emily stared at the water, her mother's reflection smiling warmly - too warm, too knowing.</p>
<p>
<daisy>Emily... come closer. Don't be afraid.</daisy>
</p>
<p>Almost in a trance, Emily stepped forward, her shoes crunching on the damp grass. The world around her seemed to fade, until it felt like she was inside the pond itself - walking behind her mother down a hazy, endless path.</p>
<p>
<e>Mom... wait, where are we going?</e>
</p>
<p>Her mother didn't answer. She only kept walking, her hair flowing like a shadow in the strange light.</p>
<p>Then another figure emerged from the mist. A tall man in dark clothes - Jayden. His presence made Emily's chest tighten, fear and confusion surging inside her.</p>
<p>He stepped up beside her mother, his hand sliding along Daisy's arm, then lower...</p>
<p>With a cruel smile, Jayden began to slowly peel away Daisy's clothes, piece by piece, as if claiming her right in front of Emily's eyes.</p>
<img src="Images/1.gif">
<p>
<e>Stop! What are you doing to her?!</e>
</p>
<p>Emily cried, trying to rush forward, but her feet felt like they were sinking into mud.</p>
<p>Her mother only turned her head slightly, looking at Emily.</p>
[[Go closer|D6 Pond Go Closer]]<<set $world.location to "Portugal - pond vision">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily stepped closer, her chest tight with a mix of nerves and heat. She couldn't look away from the way Jayden towered over them.</p>
<img src="Images/11.gif">
<p>Daisy's gaze flicked up at her, steady and calm, voice low and sultry.</p>
<p>
<daisy>Let him do what he's doing, sweetheart...</daisy>
</p>
<p>Then, without hesitation, Daisy sank to her knees before Jayden. Her lips parted around him, and the lewd sound of sucking filled the air as she worked him eagerly.</p>
<p>Emily froze, her pulse racing, every part of her screaming with forbidden arousal.</p>
<p>Daisy pulled back, wiping her lips with the back of her hand, and looked at Emily again - this time with a wicked little smile.</p>
<img src="Images/12.gif">
<p>
<daisy>Don't just stand there... come join me.</daisy>
</p>
<p>Emily's breath hitched. Her fingers trembled as she undressed, piece by piece, baring her flushed skin. She lowered herself beside Daisy, knees pressing against the floor.</p>
<img src="Images/13.gif">
<p>Together, they leaned in - Daisy guiding, Emily's lips brushing against him. Their mouths met on him in turns, then together, as Jayden groaned above them.</p>
<img src="Images/14.gif">
[[Next|D6 Pond Emily Ready]]<<set $world.location to "Portugal - pond vision">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>After a few long minutes, Daisy slid her hand between Emily's thighs. Emily gasped, jerking slightly, but Daisy's voice was soft, coaxing.</p>
<p>
<daisy>Relax, baby... I need to make you ready for him.</daisy>
</p>
<p>Her fingers traced Emily's folds, circling her clit before slipping lower. Emily moaned, her hips twitching as Daisy eased two fingers inside, curling them slowly, working her open.</p>
<img src="Images/15.gif">
<p>Jayden watched, stroking himself lazily, his eyes dark with hunger.</p>
<p>When Daisy finally pulled her slick fingers out, she looked up at him and nodded.</p>
<p>
<daisy>She's ready. Take her.</daisy>
</p>
<p>Jayden moved behind Emily, pressing the blunt head of his cock against her. Emily gasped, clutching Daisy's shoulders as the thick stretch filled her inch by inch. Daisy kept rubbing her clit, whispering encouragement as Jayden sank deeper, until he was buried to the hilt.</p>
<img src="Images/16.gif">
<p>Emily's cry filled the vision as Jayden began to move, his hips slapping against her, each thrust harder than the last. Daisy kissed her cheek, still stroking her clit.</p>
<p>
<daisy>That's it... take him, baby... feel how good it is.</daisy>
</p>
[[Next|D6 Pond Emily Fuck]]<<set $world.location to "Portugal - pond vision">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Jayden gripped Emily's hips tight as he bottomed out inside her. She cried out, her nails digging into Daisy's shoulders, every nerve alive with shock and pleasure.</p>
<img src="Images/17.gif">
<p>
<daisy>Breathe, baby... let him in. Feel how good it is.</daisy>
</p>
<p>Jayden pulled back, then drove forward again, the sound of his hips slapping against her filling the vision. His rhythm quickly grew rough, relentless.</p>
<p>Daisy's hand never stopped working her clit. Emily's body quivered, caught between the fullness of Jayden pounding into her and the sharp sparks Daisy sent rushing through her.</p>
<img src="Images/18.gif">
<p>Jayden groaned, leaning over Emily's back, his breath hot against her ear.</p>
<p>
<jayden>So tight... fuck, you're made for this cock.</jayden>
</p>
<p>Emily whimpered, torn between shame and raw need. Daisy smirked and slid lower to press wet kisses along Emily's neck.</p>
<p>
<daisy>That's it, sweetheart... give yourself to him.</daisy>
</p>
<p>Jayden grunted and pulled Emily's hair back, forcing her to arch as he drove into her harder, deeper. Daisy rubbed her clit furiously, whispering filth into her ear.</p>
<p>
<daisy>Cum for him, baby... cum on his cock, let him feel how much you want it.</daisy>
</p>
<p>Emily's body tensed, then broke - her moan loud and raw as her orgasm ripped through her. She shook, clenching tight around Jayden as he groaned, pounding her even harder, chasing his own release.</p>
<p>With a final deep thrust, Jayden buried himself inside her and came, his hot spill filling her as he growled in satisfaction. Emily collapsed forward into Daisy's arms, panting, trembling, her body spent and used.</p>
<img src="Images/19.gif">
<p>
<daisy>Good girl... you took him so well.</daisy>
</p>
<p>The vision softens. Emily is still herself - barely. The pond is not done with them.</p>
[[Next|D6 Pond After Emily]]<<set $world.location to "Portugal - magical pond">>
<p>Emily gasps back to the bank for a breath. Kelly is still staring into the water, lips parted, pupils blown wide.</p>
<p>
<kelly>Em... it's pulling me too. I can hear them. The whole fucking team...</kelly>
</p>
<p>The surface offers a second dive - Kelly's fever. Emily can drag her out... or let Kelly fall in fully.</p>
[[Play Kelly's vision|D6 Pond Kelly Whisper]]
[[Skip Kelly's vision|D6 Pond Skip Kelly]]<<set $day6.pondKellyDone to false>>
<<set $day6.pondSealed to "emily">>
[[Next|D6 Pond Wake]]<<set $world.location to "Portugal - magical pond">>
<p>Kelly leans over the glass. The water reeks of sweat, cum, and locker-room heat. The whispers are filthier now - and they want her on her knees.</p>
<div id="pondWhisperKelly" class="pond-whisper" role="group" aria-label="Pond whisper minigame — Kelly">
<p class="pond-whisper-title">Whispers for Kelly</p>
<p class="pond-whisper-hint"><strong>Accept</strong> the pond's erotic truth for Kelly. <strong>Reject</strong> lies. Fail, and the water keeps Kelly as its locker-room whore.</p>
<div class="pond-whisper-hud">
<span>Decoded <strong class="pond-whisper-score">0 / 5</strong></span>
<span>Mistakes <strong class="pond-whisper-miss">0 / 2</strong></span>
</div>
<div class="pond-whisper-card">
<div class="pond-whisper-tag">…</div>
<p class="pond-whisper-text">Listening…</p>
</div>
<p class="pond-whisper-status"></p>
<div class="pond-whisper-actions">
<button type="button" data-pond-accept>Accept whisper</button>
<button type="button" data-pond-reject>Reject whisper</button>
</div>
</div>
<<run setup.bindPondWhisperMinigame({ rootId: "pondWhisperKelly", who: "kelly", next: "D6 Pond Kelly POV", nextFail: "D6 Pond Bad Kelly", needCorrect: 5, maxMisses: 2 })>>
/* ── Kelly's pond vision (full erotic path) ── */<<set $world.location to "Portugal - pond vision (Kelly)">>
<<set $day6.pondKellyDone to true>>
<p>Kelly sat in the bleachers, her eyes locked on the court. Her college crush moved across the floor with raw energy, muscles flexing, sweat dripping down his body. Every movement made her thighs press together, her breath catching.</p>
<img src="Images/19.jpg">
<p>When the game ended, the team headed for the locker room, laughter echoing down the hall. Kelly's heart raced as she slipped down from the stands and followed.</p>
<p>Inside, the room smelled of sweat, heat, and boys fresh from the game. Her crush tugged his shirt off, revealing the toned chest she had fantasized about for years.</p>
<p>
<kelly>Mind if I... join you?</kelly>
</p>
<p>The room fell quiet for a moment before her crush smirked, his eyes roaming over her. A few of the other players chuckled, circling closer, the atmosphere shifting instantly - hungry, expectant.</p>
<p>Kelly stepped deeper into the room, her skin tingling, every nerve on fire. She had dreamed of this moment so many times, and now she was about to make it real.</p>
[[Next|D6 Pond Kelly Strip]]<<set $world.location to "Portugal - pond vision (Kelly)">>
<p>Her crush stepped closer, his body still glistening with sweat, eyes locked on hers. Without a word, his hands slid to the hem of her top, tugging it upward. Kelly lifted her arms, breath shaky as he stripped her bare, then pushed her shorts down until she stood in only her underwear before him.</p>
<p>The other boys gathered, forming a circle around them, their eyes devouring the sight. Some leaned back against lockers, arms folded, smirks on their lips; others already shifted in excitement, their bulges obvious through their shorts.</p>
<p>Kelly's crush cupped her chin, tilting her face upward before pushing gently on her shoulder.</p>
<p>
<kelly>Y-You want me here, like this...?</kelly>
</p>
<p>His grin was all the answer she needed. Heart pounding, Kelly sank onto her knees, looking up at him while the circle of players tightened around, their hungry stares burning into her skin.</p>
<img src="Images/20.jpg">
<p>The heat of the room grew heavy, charged with the mix of sweat, musk, and arousal. Kelly's hands trembled as she reached for him, knowing she was about to put on a show for every single pair of eyes locked on her.</p>
[[Next|D6 Pond Kelly Knees]]<<set $world.location to "Portugal - pond vision (Kelly)">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Kelly knelt in the middle of the locker room, heart hammering in her chest as the circle of players closed tighter. Her crush stood right in front of her, smirk curling his lips as he freed his cock, thick and already swelling from the sight of her submission.</p>
<p>He guided it to her mouth, his hand gripping the back of her head.</p>
<img src="Images/21.gif">
<p>
<kelly>Mmm...</kelly>
</p>
<p>She moaned softly as her lips stretched around him, the salty taste hitting her tongue.</p>
<p>The others leaned in, watching hungrily, stroking themselves openly. It wasn't long before one stepped forward, pressing his cock against her cheek. Kelly's crush pulled her off for a second, spit glistening on her chin, and shoved her toward the next.</p>
<p>She opened her mouth obediently, taking him in, the thick head stretching her lips wide. Hands gripped her hair from every direction, pulling, guiding, forcing her to switch cocks again and again.</p>
<p>The circle turned into a rhythm - one after another pushing into her mouth, some rough, some teasing, all hungry. Kelly gagged and moaned, spit dripping down her chest, her face a mess as she tried to please them all.</p>
<p>Her crush grabbed her jaw, forcing her to look up at him while another boy slid deep into her throat.</p>
<img src="Images/22.gif">
<p>
<kelly>Ahh—mmph!</kelly>
</p>
<p>She choked, tears stinging her eyes, but the sight of all of them using her sent a forbidden thrill pulsing through her.</p>
<p>The boys cheered each other on, their cocks glistening with her saliva, their moans echoing in the tiled room. She was on her knees, surrounded, completely at their mercy - exactly where they wanted her.</p>
[[Next|D6 Pond Kelly Bench]]<<set $world.location to "Portugal - pond vision (Kelly)">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Kelly's throat was sore, spit running down her chin, when her crush finally pulled her up from the floor. He spun her around and bent her over the nearest bench, her bare skin pressed against the cool surface.</p>
<p>The circle of players shifted, eager, stroking themselves as they waited for a turn.</p>
<p>Her crush yanked her hips up and slammed into her from behind without warning. Kelly cried out, gripping the bench as his cock drove deep, the sound of skin slapping echoing through the locker room.</p>
<img src="Images/23.gif">
<p>
<kelly>Ahh—yes... oh fuck...</kelly>
</p>
<p>She moaned, her voice breaking between thrusts.</p>
<p>At last, one pulled free and groaned, thick ropes of cum splattering across her back. Another followed, spilling over her chest. Her crush stayed buried inside her, grinding deep as he emptied himself in hot spurts, filling her until it dripped down her thighs.</p>
<p>One after another, they finished - on her face, in her hair, across her belly - until Kelly was a panting, trembling mess, skin glazed in cum, body quivering from the relentless use.</p>
<p>She collapsed onto the bench, chest heaving, her face sticky and wet, lips curved into a dazed smile.</p>
<img src="Images/24.jpg">
<p>
<kelly>God... I've never felt so full.</kelly>
</p>
<p>The boys laughed and smirked, admiring their work, before slowly dispersing, leaving her spent and marked in the middle of the locker room.</p>
[[Next|D6 Pond Both Done]]<<set $world.location to "Portugal - magical pond">>
<p>Both visions thrash under the surface - Daisy's moan and the locker-room slap of skin, layered until Emily can barely tell which body is which.</p>
<p>The pond demands a choice: which fever does she keep when she wakes?</p>
[[See Emily's vision climax|D6 Pond Seal Emily]]
[[See Kelly's vision climax|D6 Pond Seal Kelly]]<<set $day6.pondSealed to "emily">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily chooses Daisy's heat. The memory spikes one last time - Jayden buried to the hilt, Mommy whispering <em>good girl</em> while cum leaks down her thighs - then the water goes quiet.</p>
<<toast "Sealed: Emily's vision">>
[[Wake|D6 Pond Wake]]<<set $day6.pondSealed to "kelly">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily chooses Kelly's fever. One last flash: Kelly glazed in loads, lips swollen, smiling like a used toy on the locker-room bench - then the pond releases them both.</p>
<<toast "Sealed: Kelly's vision">>
[[Wake|D6 Pond Wake]]
/* ── Bad endings: strip → dive → slut (Images/endings/Pond/)
stripping.webp · jumping_in_pond.webp · became_slut_of_pond.webp
Cannot skip once started; retry only at the true end.
*/<<set $world.location to "Portugal - pond (bad end)">>
<<set $day6.pondEmilyFail to true>>
<<set $day6.pondVisionDone to true>>
<<set $day6.pondBadEnd to true>>
<<set $day6.pondBadWho to "emily">>
<<set $player.corruption to 100>>
<<run setup.Phone.refreshNotes()>>
<p>Emily takes the wrong whispers - or lets the right ones slip past. The Magical Pond does not scold. It <em>claims</em>.</p>
<p>Her pupils blow wide. The clearing tilts. Daisy's reflection smiles from the water with too many teeth, voice soft as a hand sliding between her thighs.</p>
<p>
<npc>Pond / Daisy:</npc> Shhh. Stop thinking. Good girls don't argue. Good girls open.
</p>
<p>Emily tries to step back. Her feet sink into wet grass and refuse to lift. Heat floods low and sudden - a thick, shameful ache that drops her to her knees. Her nipples tighten until every brush of fabric is almost pain. A moan slips out before she can bite it back.</p>
<p>
<pond>Strip. Now. Show me what you were always meant to be.</pond>
</p>
<p>Her hands move without permission. Blouse first. Bra next - cold air kisses stiff peaks. Pants, then panties so soaked they cling before she peels them free and lets them fall. Night air finds every inch of bare skin. A thin line of wetness already tracks down her inner thigh.</p>
<img src="Images/endings/Pond/stripping.webp">
<p>She stands naked at the water's edge, breath shallow, cunt throbbing in time with the pond's soft glow. Somewhere far away Kelly might still be calling her name. Emily cannot answer. She does not want to.</p>
[[Next|D6 Pond Bad Emily Dive]]<<set $world.location to "Portugal - pond (bad end)">>
<p>
<pond>Jump. Become what Mommy always was under the surface. Warm. Open. Used.</pond>
</p>
<p>Emily walks into the water smiling - ankles, knees, hips. Cool liquid slides up her calves, then higher, licking the heat between her legs until she gasps. She does not hesitate. She <strong>dives</strong>.</p>
<img src="Images/endings/Pond/jumping_in_pond.webp">
<p>Black-blue swallows her whole. Pressure turns to pleasure so fast her mind blanks. Hands of liquid light cup her breasts, squeeze, thumb her nipples until she screams bubbles of yes. Fingers of water spread her ass, stroke her open, push inside her pussy and curl until her whole body jerks.</p>
<p>Something thick and endless presses her lips. She opens for it - greedy, grateful - and it fucks her mouth while something thicker spears her cunt. She cums underwater in helpless spasms, legs kicking, mind reducing to a single filthy loop: <em>use me, fill me, keep me</em>.</p>
<p>The pond drinks her name and starts rewriting the rest.</p>
[[Next|D6 Pond Bad Emily Body]]<<set $world.location to "Portugal - pond (bad end)">>
<<set $day6.pondBodyChanged to true>>
<<set $day6.pondBodyBoobs to "huge">>
<<set $day6.pondBodyAss to "huge">>
<p>The water remakes her for pleasure.</p>
<p>Her chest swells heavy and soft - breasts ballooning into plush, porn-star curves that bob and spill when she moves, nipples thick and permanently stiff. Her ass rounds out thick and fuckable, hips flaring, waist cinching as if the pond is sculpting a free-use doll. Her pussy stays swollen and slick, always ready, always empty until something fills it.</p>
<p>
<pond>Perfect. Crawl out. Show the world what you are now.</pond>
</p>
<p>She surfaces gasping, hair plastered to a face that still looks like Emily - but the body is a wet dream poured into living flesh. Pond water runs between massive breasts and over a plump ass that jiggles with every shaky step onto the bank. Cum-thick magic drips from her thighs.</p>
[[Next|D6 Pond Bad Emily Slut]]<<set $world.location to "Portugal - pond (bad end)">>
<p>Shapes step from the mist - Jayden's grin, faceless men, the pond itself wearing bodies like gloves. Emily drops to her knees on instinct. Heavy tits swing. Mouth opens. She presents herself like she has always known how.</p>
<p>
<e>Please... fuck the pond's slut... fill every hole... don't stop...</e>
</p>
<p>They do. One cock in her throat until tears streak her cheeks. Another buried to the hilt in her rewritten cunt. A third splitting her ass while she moans like a broken toy. She begs louder every time a load paints her tongue or pumps deep into her womb - and when they pull free she stays open, dripping, smiling, already craving the next.</p>
<img src="Images/endings/Pond/became_slut_of_pond.webp">
<p>When they finish, she remains on all fours, ass high, cum leaking from every hole, cheek pressed to wet grass as she gazes at the water like a lover.</p>
<p>
<pond>Good girl. Forever.</pond>
</p>
<p>Kelly's voice is gone. College is gone. Only the Magical Pond remains - and its heavy-titted, fat-assed pet who greets every visitor on her knees, still dripping, still hungry.</p>
[[Ending|D6 Pond Bad End Card]]<<set $world.location to "Portugal - pond (bad end Kelly)">>
<<set $day6.pondKellyFail to true>>
<<set $day6.pondVisionDone to true>>
<<set $day6.pondBadEnd to true>>
<<set $day6.pondBadWho to "kelly">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 2, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Kelly fails the whispers. The pond does not free her from the vision - it <em>nails her into it</em>.</p>
<p>The locker room solidifies around her. Real sweat. Real musk. Real cocks. Her eyes go soft and empty while her smile turns filthy. Somewhere behind the steam she still knows Emily exists. She just does not care.</p>
<p>
<pond>You always wanted this. Stop pretending. Get wet. Get used.</pond>
</p>
<p>Kelly's hand slides into her shorts without asking her brain. She fingers herself on the bleachers while the team watches - open, shameless - then stands, strips, and walks naked into the shower steam like a sacrifice that cannot wait to be ruined.</p>
<img src="Images/endings/Pond/stripping.webp">
<p>Clothes hit the wet floor. Bare skin. Hard nipples. A glistening need between her thighs. The vision and the real pond blur until she can no longer tell which water is calling her name.</p>
[[Next|D6 Pond Bad Kelly Dive]]<<set $world.location to "Portugal - pond (bad end Kelly)">>
<p>Back at the real clearing, Kelly's body jerks. She laughs - high, broken - and sprints for the water.</p>
<p>
<kelly>I'm going in... I need it... every cock the water promised...</kelly>
</p>
<p>Emily cannot stop her. Kelly hits the surface and <strong>dives</strong> headfirst into the Magical Pond.</p>
<img src="Images/endings/Pond/jumping_in_pond.webp">
<p>Under the surface the locker room becomes endless. Water-shaped athletes pin her, pass her, fuck her mouth while her crush rails her from behind in the dark-blue glow. Hands grip her hips. A cock fills her throat. Another stretches her pussy until she gags on pleasure instead of air.</p>
<p>She cums until bubbles turn to silence. The pond drinks her name and gives her a new one: <em>team toy</em>.</p>
[[Next|D6 Pond Bad Kelly Body]]<<set $world.location to "Portugal - pond (bad end Kelly)">>
<<set $day6.pondBodyChanged to true>>
<<set $day6.pondBodyBoobs to "huge">>
<<set $day6.pondBodyAss to "huge">>
<p>The water fattens her for use.</p>
<p>Kelly's breasts swell huge and soft - heavy enough to sway when she breathes, nipples fat and always peaked. Her ass balloons thick and round, built to clap when she gets fucked doggy on wet tile or pond-bank mud. Hips flare. Waist cinches. Her cunt stays slick and swollen, as if the pond left a permanent invitation between her legs.</p>
<p>She surfaces like a porn fantasy made flesh: glazed skin, swollen lips, massive tits floating, ass bobbing as she crawls onto the grass on all fours. Magic-slick water runs down her back and drips from her hanging breasts.</p>
[[Next|D6 Pond Bad Kelly Slut]]<<set $world.location to "Portugal - pond (bad end Kelly)">>
<p>Figures of the team step from the mist - half-real, half-pond. Kelly does not wait to be asked. She spreads her knees, lifts her huge ass, and reaches back to open herself with both hands.</p>
<p>
<kelly>Free use... pond property... fuck my throat, fuck my cunt, paint these tits...</kelly>
</p>
<p>They take turns. She sucks while getting railed - heavy breasts swinging, thick ass rippling with every thrust - begging for creampies the way other girls beg for air. Loads hit her tongue, her womb, the soft valley between her tits. She moans through all of it like gratitude.</p>
<img src="Images/endings/Pond/became_slut_of_pond.webp">
<p>When they leave her, she stays face-down, ass-up, cum pouring out of her, smiling at Emily with empty, happy eyes.</p>
<p>
<kelly>Come swim, Em... the water makes you prettier... heavier... better for cock...</kelly>
</p>
<p>Emily runs. Kelly does not. The Magical Pond has a new permanent resident - a thick, busty, always-horny locker-room slut who greets every ripple on her knees.</p>
[[Ending|D6 Pond Bad End Card]]<<set $day6.pondVisionDone to true>>
<<set $day6.pondBadEnd to true>>
<<set $world.time to "Night">>
<<run setup.Phone.refreshNotes()>>
<div class="mystery-container" style="padding:1.5rem;max-width:520px;text-align:center;">
<div class="mysterious-text" style="font-size:1.35rem;animation:none;opacity:1;">BAD ENDING</div>
<p style="margin:0.75rem 0 0;color:var(--text-dim);font-family:var(--font-ui);font-size:0.95rem;">
<<if $day6.pondBadWho is "kelly">>Kelly belongs to the Magical Pond.<<else>>Emily belongs to the Magical Pond.<</if>>
</p>
</div>
<img src="Images/endings/Pond/became_slut_of_pond.webp">
<<if $day6.pondBadWho is "kelly">>
<p>Busty. Thick. Mindless. Kelly stays by the water forever, offering her rebuilt body to whatever the pond sends - still smiling, still open, still wet.</p>
<<else>>
<p>Busty. Thick. Mindless. Emily stays by the water forever, offering her rebuilt body to whatever the pond sends - still smiling, still open, still wet.</p>
<</if>>
<p class="hub-hint"><em>You must finish this ending. Retry only the whisper challenge — not the whole game.</em></p>
[[Try the whispers again|D6 Pond Bad Retry]]/* Reset fail state and re-enter the correct whisper minigame only */
<<set $day6.pondBadEnd to false>>
<<set $day6.pondVisionDone to false>>
<<set $day6.pondBodyChanged to false>>
<<set $day6.pondBodyBoobs to "">>
<<set $day6.pondBodyAss to "">>
<<if $day6.pondBadWho is "kelly">>
<<set $day6.pondKellyFail to false>>
<<set $day6.pondKellyDone to false>>
<<set $day6.pondBadWho to "">>
<<run setup.Phone.refreshNotes()>>
<<goto "D6 Pond Kelly Whisper">>
<<else>>
<<set $day6.pondEmilyFail to false>>
<<set $day6.pondEmilyDone to false>>
<<set $day6.pondKellyDone to false>>
<<set $day6.pondSealed to "">>
<<set $day6.pondBadWho to "">>
<<run setup.Phone.refreshNotes()>>
<<goto "D6 Forest Pond Vision">>
<</if>>
/* ── Wake beside the pond (ND4512) ── */<<set $world.location to "Portugal - magical pond">>
<<set $day6.pondVisionDone to true>>
<<set $world.time to "Morning">>
<<run setup.Phone.refreshNotes()>>
<p>Kelly's voice broke through the haze first.</p>
<p>
<kelly>Daisy, get up—</kelly>
</p>
<p>Emily's eyelids fluttered, her body heavy as if she'd been asleep for days. She stirred, then frowned.</p>
<p>
<e>Where... am I?</e>
</p>
<p>She slowly pushed herself upright. The soft grass was damp beneath her palms, and the faint shimmer of water caught her eyes. She turned - they were lying beside a wide, silent pond, its surface reflecting the early morning light like a mirror.</p>
<p>Confusion pressed against her temples.</p>
<p>
<e>What happened here? Why are we here?</e>
</p>
<p>Kelly stretched, rubbing her arms before answering.</p>
<p>
<kelly>This isn't just any pond. People call it the Magical Pond. They say it has a way of pulling you into dreams... visions... even showing pieces of what it wants you to see. I guess... we both got caught in it last night.</kelly>
</p>
<p>Emily's eyes widened slightly, her mind flashing back to strange fragments she could barely piece together - voices, shadows, and the sensation of being pulled somewhere she didn't belong.</p>
<<if $day6.pondSealed is "emily">>
<p>
<et>Daisy's voice. Jayden's hands. That heat between my legs... it still feels wet.</et>
</p>
<<elseif $day6.pondSealed is "kelly">>
<p>
<et>Kelly on that bench... glazed... smiling. I can still hear them cheering.</et>
</p>
<<elseif $day6.pondEmilyFail or $day6.pondKellyFail>>
<p>
<et>For a second I almost stayed under. Almost let it keep me.</et>
</p>
<<else>>
<p>
<et>Whatever I saw... it felt more real than this grass.</et>
</p>
<</if>>
<p>
<e>So that's why... it all felt so real.</e>
</p>
<p>Kelly sighed, brushing the grass from her clothes as she stood.</p>
<p>
<kelly>Whatever it was, we can't stay here. It's already the second day. Albert and Jack might be looking for you.</kelly>
</p>
<p>Emily's heart gave a small jolt at the reminder.</p>
<p>
<et>I can't let them know what happened here... not yet.</et>
</p>
<p>She got to her feet quickly, nodding.</p>
<p>
<e>You're right. Let's go home.</e>
</p>
<p>Together, they turned from the pond, the water behind them still and eerily quiet - as if guarding its secrets for whoever dared return.</p>
<p>Grass stains on her clothes. Hair a mess. She is late - very late.</p>
<<toast "Magical Pond — head home">>
[[Home — already late|D6 Albert Late Home]]
/* ═══════════════════════════════════════════════════════════
Second gate - rainbow stone chamber + shaft puzzle (GD9/ND9)
Magical pond vision is a FUTURE event — not this one.
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - forest edge">>
<<set $day6.leftHome to true>>
<p>Emily heads down the dirt path toward the forest. Trees thicken. Town noise fades.</p>
<p>Ahead, beyond the old stone archway, Kelly leans against a mossy rock - hiking shorts, tank top, hair in a messy bun.</p>
<p>
<kelly>Well, well. Look who survived college.</kelly>
</p>
<p>
<e>I've had a weird stretch... but I'm ready.</e>
</p>
<p>
<kelly>You always say that before something insane happens. Let's open that damn gate.</kelly>
</p>
[[Enter the gate|D6 Second Gate Chamber]]<<set $world.location to "Portugal - gate chamber">>
<p>As Emily and Kelly step through the shimmering gate, a soft whoosh echoes behind them.</p>
<p>They both turn.</p>
<p><strong>SLAM!</strong></p>
<p>The gate shuts tight with a heavy thud.</p>
<p>
<e>Shit...</e>
</p>
<p>
<kelly>Okay, that's not creepy at all.</kelly>
</p>
<p>A circular stone chamber. Dim light through cracks in the ceiling. Moss, roots, damp earth and something old.</p>
<p>Three massive stone blocks, etched with weathered carvings - almost alive, pulsing faintly.</p>
<p>
<e>Are those... people? No, wait...</e>
</p>
<p>First stone: a nude woman kneeling, offering clothes to a shadowy figure.</p>
<p>Second: two girls holding hands, mouths touching, vines loosely around them.</p>
<p>Third: a girl before a pool, arms raised, exposed, ghostly hands reaching from below.</p>
<p>
<kelly>Okay. What the hell is this place...?</kelly>
</p>
<p>
<e>I think these are... trials. Puzzles. But erotic?</e>
</p>
<p>
<kelly>You think we have to do one of these to open the next gate?</kelly>
</p>
<p>
<kelly>So we either offer our clothes... kiss each other... or strip and do something in front of whatever's watching?</kelly>
</p>
<p>No instructions. Just the stones.</p>
[[Study the third stone|D6 Second Gate Rainbow]]<<set $world.location to "Portugal - gate chamber">>
<p>Emily and Kelly stand in front of the third stone. Unlike the others, this one is more vibrant - faded color markings forming an arch above a naked figure.</p>
<p>
<kelly>Looks like... a rainbow?</kelly>
</p>
<p>
<e>Yeah... but something's off.</e>
</p>
<p>Emily squints and counts the bands carefully, fingers on each etched stripe.</p>
<p>
<e>Red... orange... yellow... green... blue... indigo... violet... and...</e>
</p>
<p>She pauses.</p>
<p>
<e>Wait... there's an eighth one. That's not right.</e>
</p>
<p>
<kelly>What do you mean?</kelly>
</p>
<p>
<e>Rainbows only have seven colors. This last one - it's pink. That's not part of the real spectrum.</e>
</p>
<p>Kelly leans closer and frowns.</p>
<p>
<kelly>You think it was added on purpose?</kelly>
</p>
<p>
<e>Definitely. This might be the key.</e>
</p>
<p>Without hesitation, Emily presses the eighth stripe - the pink one - and pushes.</p>
<p><em>Click.</em></p>
<p>A low rumble. The rainbow carving shimmers. The stone splits down the center, revealing a hidden panel.</p>
<p>A whoosh of air. From a concealed hole just below the arch, something slowly emerges.</p>
<p>Thick... veined... glistening. A flesh-colored shaft, unmistakably a cock, rises from the opening. Warm mist. A pulsating hum - as if the chamber itself is alive.</p>
<img src="Images/1.4/8.gif">
<p>
<kelly>Oh... my god.</kelly>
</p>
<p>
<e>What... the hell kind of puzzle is this?</e>
</p>
<p>Floating text forms above the shaft, glowing softly.</p>
[[Read the inscription|D6 Second Gate Inscription]]<<set $world.location to "Portugal - gate chamber">>
<p>Looping elegant symbols - almost alive. Not English.</p>
<p>
<kelly>Ka'elar vey lunth, sai lora ven silth ae'lun fae morith nai.</kelly>
</p>
<p>
<e>Okay... and that means?</e>
</p>
<p>
<kelly>"To proceed, embrace the false light with lips unafraid."</kelly>
</p>
<p>A long silence.</p>
<p>
<e>Seriously?</e>
</p>
<p>
<kelly>That's what it says. Gwen taught me about the language.</kelly>
</p>
<p>The shaft pulses. The chamber grows warmer. The carving waits.</p>
[[Emily does it|D6 Gate Emily Job]]
[[Kelly does it|D6 Gate Kelly Job]]
[[Both try|D6 Gate Both Job]]<<set $world.location to "Portugal - gate chamber">>
<<set $day6.gateJob to "emily">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily takes a shaky breath and kneels. The surface is smooth, warm - too real, almost alive.</p>
<p>
<kelly>Emily... you sure?</kelly>
</p>
<p>
<e>If this is the way forward... then yeah. I'll do it.</e>
</p>
<p>She leans in. Lips close around it. A quiet hum fills the chamber. Walls glow brighter with every motion. Air thicker. Time blurs.</p>
<img src="Images/1.4/9.gif">
<<toast "Corruption +1">>
[[Work the shaft|D6 Gate Emily BJ Game]]<<set $world.location to "Portugal - gate chamber">>
<p>The stone cock fills her mouth - warm, humming, impossibly real. Each bob of her head makes the carvings pulse brighter.</p>
<div id="stoneBjGame" class="stone-bj-game" role="group" aria-label="Stone shaft minigame">
<div class="stone-bj-title">Ancient trial · Emily</div>
<p class="stone-bj-hint">Tap / click to keep going. Build the rhythm until the chamber answers.</p>
<div class="stone-bj-meta">
<span>Charge</span>
<span class="stone-bj-pct">0%</span>
</div>
<div class="stone-bj-bar" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0">
<div class="stone-bj-fill"></div>
</div>
<button type="button" class="stone-bj-btn">Suck · Stroke · Deeper</button>
<div class="stone-bj-done" hidden>
<a href="javascript:void(0)">It pulses - finish</a>
</div>
</div>
<<run setup.bindStoneBjMinigame({ rootId: "stoneBjGame", next: "D6 Gate Emily Climax", who: "emily" })>><<set $world.location to "Portugal - gate chamber">>
<p>Then - a jolt. The shaft pulses in her mouth. Silvery light bursts from the tip - not fluid, but ancient energy.</p>
<img src="Images/1.4/10.webp">
<p>The stone gate ahead creaks open. Behind them, the sealed entry clicks free.</p>
<p>But Emily doesn't stand. Body flushed, trembling. Something has changed.</p>
<img src="Images/1.4/11.webp">
<p>
<e>W-What is this feeling...?</e>
</p>
<p>Eyes hazy. She pulls at her clothes, skin burning. Pants hit the ground.</p>
<img src="Images/1.4/12.gif">
<p>
<kelly>Emily?! What are you doing?</kelly>
</p>
<p>
<e>I-I don't know... I can't stop...</e>
</p>
<p>She drops to her knees again - not for the puzzle, but from a wave of inexplicable arousal. Hand sliding down. Lost in it.</p>
<p>
<kelly>Emily, stop! Whatever that thing did - it's messing with you!</kelly>
</p>
<p>
<e>I can't... it's like my body's on fire...</e>
</p>
<p>Kelly grabs her shoulders, torn between worry and awe at what they've woken.</p>
[[Get her out|D6 Gate Emily Aftermath]]<<set $world.location to "Portugal - forest edge">>
<<set $day6.secondGateDone to true>>
<<set $day6.secondGateReady to false>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily's breath is still uneven. Sweat on her skin. Shame and confusion cloud her eyes as the heat slowly fades.</p>
<p>Kelly kneels beside her, gathering discarded clothes.</p>
<p>
<kelly>Come on... Let's get you dressed.</kelly>
</p>
<p>She helps Emily pull her top back on and picks up her bag, voice quieter now.</p>
<p>
<kelly>This place is... something else. We're leaving. You should come to my place - just rest for a bit.</kelly>
</p>
<p>Emily shakes her head, standing on unsteady legs.</p>
<p>
<e>I'm okay... I just... I need to go home. Clear my head.</e>
</p>
<p>
<kelly>Alright. Just... message me when you reach. Seriously.</kelly>
</p>
<p>
<e>I will.</e>
</p>
<p>They step through the stone archway. The heavy gate has silently reopened - golden late-afternoon light spills in. Outside, the forest seems calmer, quieter.</p>
<p>
<e>Bye, Kelly. Thanks... for today.</e>
</p>
<p>
<kelly>Take care, Em.</kelly>
</p>
<p>They part - Kelly toward the road, Emily into the trees, back toward town.</p>
[[Walk home|D6 Gate Emily Walk]]<<set $world.location to "Portugal - road to town">>
<<set $world.time to "Evening">>
<p>The sun dips low as Emily walks the quiet road back to town. Soft wind against still-sensitive skin.</p>
<p>Her mind isn't calm.</p>
<p>Flashes of the ruins still stir - the way her body reacted, how control slipped so easily. Every step awakens something shameless.</p>
<p>Her thighs press together as a wicked thought creeps in.</p>
<p>
<e>What if... someone took me right here... in the middle of the road...?</e>
</p>
<img src="Images/1.4/13.gif">
<p>
<e>What if people just... watched... and I didn't stop them...?</e>
</p>
<img src="Images/1.4/14.gif">
<p>She gasps softly, cheeks burning, glancing around - but the road is empty.</p>
<p>Still the idea pulses. Breath quickens. Nipples tighten against fabric.</p>
<p>
<e>No. Not here. Just... get home.</e>
</p>
<p>She clutches her bag tighter and picks up her pace. She doesn't trust herself out in public with thoughts like these.</p>
<p>Not after the gate.</p>
[[Home|D6 Gate Emily Home]]<<set $world.location to "Portugal - uncle's house">>
<<set $world.time to "Evening">>
<p>Emily unlocks the front door. Familiar quiet. The buzz in her mind hasn't faded.</p>
<p>From the living room, the low sound of a TV.</p>
<p>
<jack>You're back.</jack>
</p>
<p>Jack is sprawled on the couch, remote in hand, half-watching some old movie. Emily gives a faint smile, sets her bag down, and sinks onto the couch beside him.</p>
<p>Her body still hums with that strange heat. Being this close to Jack... doesn't help.</p>
<p>She steals a glance at his lap. Just one glance.</p>
<p>
<et>What if he noticed? What if he touched me? Right here... on this couch...<br>Would I stop him? Could I?</et>
</p>
<img src="Images/1.4/15.gif">
<p>
<jack>You alright, Em?</jack>
</p>
<p>His voice breaks through her haze. Emily sits up straighter, swallowing.</p>
<p>
<e>Yeah... yeah, I'm fine.</e>
</p>
<p>She forces her gaze forward, but her thoughts keep slipping. Thighs pressed together. Quiet ache low in her belly. Jack is relaxed, unaware - and that only makes it worse.</p>
<p>
<e>I need to get away from this... from him... before I do something stupid.</e>
</p>
<p>She stands up quickly.</p>
<p>
<e>I think I'm just gonna lie down early.</e>
</p>
<p>
<jack>Alright. You rest. You look a little out of it.</jack>
</p>
<<if ($ntr or $ntr_david) and $day6.ryanCheatPhoto>>
[[To her room|D6 Gate Ryan More Nude]]
<<elseif $ntr or $ntr_david>>
[[To her room|D6 Gate David Nude Ask]]
<<else>>
[[Go to bed|D6 Sleep]]
<</if>>
/* Ryan already got a nude earlier → he asks for more (original: She was about to sleep) */<<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Night">>
<<set $day6.gateRyanMore to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.unlockRyan()>>
<p>Emily lies in the dark, eyes half closed. The room is quiet. She is almost asleep when her screen lights up.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:14</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#7c3aed;color:#7c3aed;">R
<div class="terminal-avatar-dot" style="background:#7c3aed;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Ryan</div>
<div class="terminal-header-status" style="color:#7c3aed;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Hello Emily... can I be lucky again? 😈</div>
<div class="msg-ts">22:14</div>
</div>
</div>
</div>
</div>
<p>She stares at the message for a long moment. Something about it pulls at her. She doesn't think. She just gets up.</p>
<p>The bathroom light flickers on. She doesn't ask herself why. What happened inside those gates cracked something open - and she isn't sure she wants it sealed shut.</p>
<p>A few minutes later she is back in bed. Phone in hand. She opens the chat. Presses send.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:18</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#7c3aed;color:#7c3aed;">R
<div class="terminal-avatar-dot" style="background:#7c3aed;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Ryan</div>
<div class="terminal-header-status" style="color:#7c3aed;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="img-bubble david-anon-photo">
<video src="Images/2.3/23.mp4" controls style="width:100%;display:block;"></video>
</div>
<div class="msg-ts right">22:17 - Video</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Enjoy.</div>
<div class="msg-ts right">22:17</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">...</div>
<div class="msg-ts">22:18</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Emily what the fuck.</div>
<div class="msg-ts">22:18</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">I mean it in the best way possible.</div>
<div class="msg-ts">22:19</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Go to sleep. I'll be thinking about you all night.</div>
<div class="msg-ts">22:19</div>
</div>
</div>
</div>
</div>
<p>She puts the phone face down on the pillow. Closes her eyes.</p>
<<if $ntr or $ntr_david>>
[[Elsewhere...|D6 Gate Ryan To David]]
<<else>>
<<toast "Corruption +1">>
[[Sleep|D6 Sleep]]
<</if>><<set $world.location to "David's room">>
<<set $day6.gateRyanToDavid to true>>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere</div>
</div>
<p>David is still awake. Still staring at the ceiling. His phone buzzes again - same unknown number.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:22</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
<span class="david-anon-tag">1 new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Thought you should see this. She sent it herself.</div>
<div class="msg-ts">22:21</div>
</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<video src="Images/2.3/23.mp4" controls style="width:100%;display:block;"></video>
</div>
<div class="msg-ts">22:21 - Video</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Emily made this for me while you were cheating lol. Look how fucking wet she gets.</div>
<div class="msg-ts">22:22</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Face isn't even visible in it.</div>
<div class="msg-ts right">22:22</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">You're just sending me porn videos and calling it proof. Try harder.</div>
<div class="msg-ts right">22:23</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Want one with her face? just wait</div>
<div class="msg-ts">22:23</div>
</div>
</div>
</div>
<p>David sets the phone down slowly. He doesn't believe it. He refuses to. But deep in his chest, a small cold doubt has already begun to take root.</p>
</div>
<<toast "Corruption +1">>
[[Sleep|D6 Sleep]]
/* No Ryan nude yet → David asks for a nude (gate night) */<<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Night">>
<<set $day6.gateDavidNude to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily kicks off her shoes and falls onto the bed. New city. New room. Same David. She smiles when his name pops up.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:10</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Baby 💙</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot" style="background:#00f2ff;"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Hello baby 🥰 how is it going in the new city?</div>
<div class="msg-ts">22:08</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Good... long day. Miss you though 💙</div>
<div class="msg-ts right">22:09</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Miss you too. A lot. Can I ask something kinda selfish?</div>
<div class="msg-ts">22:10</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Depends 👀</div>
<div class="msg-ts right">22:10</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Send me something... just for me. I want to see you. All of you. Please baby 🥺</div>
<div class="msg-ts">22:11</div>
</div>
</div>
</div>
</div>
<p>Her cheeks burn. The heat from the gate still simmers under her skin. She shouldn't. She does.</p>
<p>Bathroom. Clothes off. Phone raised. A few shaky breaths later - send.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:16</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Baby 💙</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot" style="background:#00f2ff;"></div>
ONLINE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/22.jpg" alt="Nude photo">
</div>
<div class="msg-ts right">22:15 - Photo</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Only for you. Don't share. Ever.</div>
<div class="msg-ts right">22:15</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Holy fuck Emily...</div>
<div class="msg-ts">22:16</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">You're perfect. I'm never showing anyone. Promise. Sleep well baby. Love you so much 💙</div>
<div class="msg-ts">22:16</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Love you. Goodnight.</div>
<div class="msg-ts right">22:17</div>
</div>
</div>
</div>
</div>
<p>She puts the phone on charge. Pulls the blanket up. The gate's heat still whispers behind her eyes - but sleep finally comes.</p>
<<toast "Corruption +1">>
[[Sleep|D6 Sleep]]<<set $world.location to "Portugal - gate chamber">>
<<set $day6.gateJob to "kelly">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Kelly smirks.</p>
<p>
<kelly>Then maybe I should be the brave one this time.</kelly>
</p>
<p>Before Emily can stop her, Kelly kneels in front of the glowing shaft. Light flickers as her fingers brush the base. She looks up once - playful, curious - then leans in.</p>
<p>The moment her lips wrap around it, carvings glow like veins across the stone.</p>
<img src="Images/1.4/16.gif">
<<toast "Corruption +1">>
[[Help her keep going|D6 Gate Kelly BJ Game]]<<set $world.location to "Portugal - gate chamber">>
<p>
<e>Kelly...!</e>
</p>
<p>Kelly continues - slow, deliberate. Heat pulses. Magic answers every motion.</p>
<div id="stoneBjGame" class="stone-bj-game" role="group" aria-label="Stone shaft minigame">
<div class="stone-bj-title">Ancient trial · Kelly</div>
<p class="stone-bj-hint">Tap / click as Kelly works the shaft. The chamber charges with her rhythm.</p>
<div class="stone-bj-meta">
<span>Charge</span>
<span class="stone-bj-pct">0%</span>
</div>
<div class="stone-bj-bar" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0">
<div class="stone-bj-fill"></div>
</div>
<button type="button" class="stone-bj-btn">Deeper · Faster · Glow</button>
<div class="stone-bj-done" hidden>
<a href="javascript:void(0)">The beam answers</a>
</div>
</div>
<<run setup.bindStoneBjMinigame({ rootId: "stoneBjGame", next: "D6 Gate Kelly Climax", who: "kelly" })>><<set $world.location to "Portugal - gate chamber">>
<p>Moments later the structure pulses brightly. A beam of light bursts from the tip - radiant magic, not liquid.</p>
<img src="Images/1.4/18.webp">
<p>Kelly wipes her mouth and stands slowly, flushed.</p>
<p>
<kelly>Tastes... like ozone and honey. Weirdly good.</kelly>
</p>
<p>
<e>Kelly...? Are you okay?</e>
</p>
<p>
<kelly>I... I don't know. It's hot in here... or is it just me?</kelly>
</p>
<p>Her hand brushes down her side, lingering near her waist. Emily's eyes widen.</p>
<p>
<e>Hey. Kelly. Snap out of it.</e>
</p>
<p>
<kelly>It's like... something ignited inside me. I feel— I feel so fucking horny, Em...</kelly>
</p>
<img src="Images/1.4/19.gif">
<p>
<e>This place did something to you. We're leaving. Now.</e>
</p>
<p>Emily grabs her arm and hauls her out. Outside air is cool and real. The doors stay open behind them.</p>
<img src="Images/1.4/20.gif">
<p>At the forest edge, Kelly's voice is shaky.</p>
<p>
<kelly>I'm sorry. I don't know what came over me...</kelly>
</p>
<p>
<e>You need to rest. Go home. Cold shower. Don't touch anything magical.</e>
</p>
<p>
<kelly>You're not wrong. Let's meet tomorrow. After I calm the hell down.</kelly>
</p>
<p>
<kelly>Yeah. I'll manage. See you later, Em.</kelly>
</p>
<<set $day6.secondGateDone to true>>
<<set $day6.secondGateReady to false>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
[[Home|D6 Gate Kelly Home]]<<set $world.location to "Portugal - uncle's house">>
<<set $world.time to "Evening">>
<<set $day6.kellyFuckedVideo to true>>
<p>Emily reaches home as dusk settles. Lights dimmed to a warm orange glow. She kicks off her shoes and walks into the living room.</p>
<p>Jack is stretched on the couch, watching an action movie, popcorn half-empty beside him.</p>
<p>
<jack>You're back. Want to watch?</jack>
</p>
<p>
<e>Sure... yeah.</e>
</p>
<p>She sits beside him, trying to focus. Her body is still warm from the gate - but Jack somehow grounds her again.</p>
<p>Until her phone buzzes.</p>
<p>A new message from Kelly. A video.</p>
<p>She taps it open - and freezes.</p>
<img src="Images/1.4/21.gif">
<p>Dark, shaky footage - clear enough. Kelly in a room lit by flickering candles... with two men. Breathless moans in the background. Caption:</p>
<p>
<em>"Emily... that forest really was magical."</em>
</p>
<p>Emily's cheeks flush deep red. Her heart pounds.</p>
<p>
<jack>You know... you probably shouldn't watch that kind of stuff right here on the couch.</jack>
</p>
<p>Emily jolts - Jack glanced her way.</p>
<p>
<e>I-it's not what it looked like—</e>
</p>
<p>
<jack>Hey, no judgment. Just maybe... save it for your room?</jack>
</p>
<p>She scrambles to turn off the screen, mortified, and stands quickly.</p>
<p>
<e>Right. I should go... um, rest.</e>
</p>
<p>
<jack>Good idea. You look like you've had a long day.</jack>
</p>
<p>Emily rushes to her room and closes the door. On the edge of her bed, heart racing. The video won't leave her mind. Kelly looked wild... free... unleashed.</p>
<p>
<e>What the hell happened to her after I left?</e>
</p>
<p>She lies back, still clutching her phone. Eventually sleep takes her - dreams of magic, temptation, and questions only beginning.</p>
<<if $ntr or $ntr_david>>
[[Message from David|D6 Gate Kelly David Msg]]
<<else>>
[[Sleep|D6 Sleep]]
<</if>><<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Night">>
/* Emily sends Kelly's pic → David knows her face (original $kelly_photo) */
<<set $day6.kellyPhotoSent to true>>
<<set $kelly_photo to true>>
<p>Emily is almost under when her phone lights up again - David.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:40</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Baby 💙</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot" style="background:#00f2ff;"></div>
ONLINE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Hello baby 🥰 how is it going in the new city?</div>
<div class="msg-ts">22:38</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Honestly a bit overwhelming haha. But I'm okay.</div>
<div class="msg-ts right">22:39</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Already settling in? That's my girl 😊 Made any friends yet?</div>
<div class="msg-ts">22:39</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Yeah actually! Met this girl named Kelly. She is super cute lol.</div>
<div class="msg-ts right">22:40</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Aww send me a pic 👀 I wanna see this cute friend of yours.</div>
<div class="msg-ts">22:40</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Haha okay okay hold on.</div>
<div class="msg-ts right">22:41</div>
</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/kellymain.jpg" alt="Kelly photo">
</div>
<div class="msg-ts right">22:41 - Photo</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Okay she IS cute haha 😂 Good taste in friends as always.</div>
<div class="msg-ts">22:42</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">I'm really glad you're settling in. Miss you though. A lot. Goodnight baby. Sleep well. Love you so much 💙</div>
<div class="msg-ts">22:43</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Miss you too. Goodnight babes 💙</div>
<div class="msg-ts right">22:43</div>
</div>
</div>
</div>
</div>
<p>She puts the phone on charge. Pulls the blanket up. Sleep comes easy - she never sees what hits David's phone next.</p>
/* Original: Meanwhile, David again get a message — Ryan sends Kelly sex pics */
[[Elsewhere...|D6 Gate Ryan Fucks Kelly]]
/* ===========================================================
Kelly gate path NTR: Ryan → David with Kelly sex photos
Original: "Meanwhile, David again get a message"
Requires Emily sent Kelly photo (kelly_photo / kellyPhotoSent)
=========================================================== */<<set $world.location to "David's room">>
<<set $day6.ryanKellySexMsg to true>>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere</div>
</div>
<p>David's phone buzzed. Same number. He almost didn't open it. But he did.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:48</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
<span class="david-anon-tag">1 new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/kelly1.gif" alt="Photo of Kelly">
</div>
<div class="msg-ts">22:47 - Photo</div>
</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/kelly2.gif" alt="Photo of Kelly">
</div>
<div class="msg-ts">22:47 - Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">I hope you know who this girl is.</div>
<div class="msg-ts">22:48</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Tell me you recognize that slut.</div>
<div class="msg-ts">22:48</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Your girlfriend's bestie is a total freak in bed. She begged us not to stop.</div>
<div class="msg-ts">22:49</div>
</div>
</div>
</div>
<<if $day6.kellyPhotoSent or $kelly_photo>>
<p style="text-align:center;font-style:italic;color:#888;margin:1.25rem auto;max-width:32rem;line-height:1.7;">
Wait…<br>
Fuck… that's Kelly.<br>
Emily's friend from college.<br>
…<br>
But it's not her. It's not Emily.<br>
He's just trying to fuck with me.<br>
Emily would never do this.<br>
I trust her.<br>
I have to trust her.
</p>
<<else>>
<div class="terminal-container david-anon-phone" style="margin-top:1rem;">
<div class="terminal-topbar">
<span class="david-anon-clock">22:50</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Sending me random stuff again. I don't know who this is.</div>
<div class="msg-ts right">22:50</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Lol. Your girlfriend doesn't even tell you about her new best friend. LMAO.</div>
<div class="msg-ts">22:50</div>
</div>
</div>
</div>
<</if>>
<p>Another buzz. More from the same number.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:52</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/kelly3.jpg" alt="Kelly after">
</div>
<div class="msg-ts">22:51 - Photo</div>
</div>
<<if $day6.kellyPhotoSent or $kelly_photo>>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Kelly's face after we were done with her. Look at that load 😈</div>
<div class="msg-ts">22:52</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Don't worry though… Emily is next. She'll look even better with my cum all over her pretty face.</div>
<div class="msg-ts">22:52</div>
</div>
<<else>>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Soon your girl will take her place. 😈</div>
<div class="msg-ts">22:52</div>
</div>
<</if>>
</div>
</div>
<<if $day6.kellyPhotoSent or $kelly_photo>>
<p style="text-align:center;font-style:italic;color:#888;margin:1.25rem auto;max-width:32rem;line-height:1.7;">
She won't.<br>
She never will.
</p>
<<else>>
<p>David locks the phone. He tells himself it's spam. He doesn't sleep well.</p>
<</if>>
</div>
[[Sleep|D6 Sleep]]<<set $world.location to "Portugal - gate chamber">>
<<set $day6.gateJob to "both">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>
<e>Ready?</e>
</p>
<p>
<kelly>Let's give it what it wants.</kelly>
</p>
<p>They kneel side by side. Soft lips brush the shaft first - then Kelly's tongue teasing the tip. Taking turns. Moaning as they suck and stroke together.</p>
<img src="Images/1.4/22.gif">
<<toast "Corruption +1">>
[[Share the work|D6 Gate Both BJ Game]]<<set $world.location to "Portugal - gate chamber">>
<p>Spit coats it, dripping down their chins. Tongues meet. The intensity builds with every shared stroke.</p>
<div id="stoneBjGame" class="stone-bj-game" role="group" aria-label="Stone shaft minigame">
<div class="stone-bj-title">Ancient trial · Both</div>
<p class="stone-bj-hint">Tap / click as Emily and Kelly work together. Fill the charge until the chamber breaks open.</p>
<div class="stone-bj-meta">
<span>Charge</span>
<span class="stone-bj-pct">0%</span>
</div>
<div class="stone-bj-bar" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0">
<div class="stone-bj-fill"></div>
</div>
<button type="button" class="stone-bj-btn">Together · Deeper · Faster</button>
<div class="stone-bj-done" hidden>
<a href="javascript:void(0)">It throbs - finish</a>
</div>
</div>
<<run setup.bindStoneBjMinigame({ rootId: "stoneBjGame", next: "D6 Gate Both Climax", who: "both" })>><<set $world.location to "Portugal - gate chamber">>
<p>Deeper, faster. The cock throbs - then pulses hard. Thick ropes across their faces and tongues.</p>
<img src="Images/1.4/23.gif">
<p>
<kelly>Mmm... messy little reward.</kelly>
</p>
<p>
<e>Don't waste a drop...</e>
</p>
<p>They lick it from each other's mouths as the last drops spill.</p>
<img src="Images/1.4/24.gif">
<p>A loud click. The door ahead opens. The sealed gate behind them creaks open too.</p>
<p>But they're no longer focused on the doors. Hands under shirts. Tops off. Lips colliding. Bodies tangled.</p>
<img src="Images/1.4/25.gif">
<p>
<kelly>You taste so dirty... I love it.</kelly>
</p>
<p>
<e>Touch me, Kelly... right there.</e>
</p>
<img src="Images/1.4/26.gif">
<p>Fingers between thighs. Panting. Grinding. Then a low hum from behind the wall. They pause, breathless.</p>
<p>
<e>This... might not be safe.</e>
</p>
<p>
<kelly>I know... let's go home first.</kelly>
</p>
<<set $day6.secondGateDone to true>>
<<set $day6.secondGateReady to false>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>They part outside the chamber - flushed, shaky, the forest watching in silence. Emily turns toward town. The heat of what they did still lives under her skin.</p>
[[Walk home|D6 Gate Emily Walk]]<<set $world.location to "Portugal - forest edge">>
<<set $day6.leftHome to true>>
<<if $day6.forestGateDone>>
<<goto "D6 Forest Quiet">>
<</if>>
<<if not $day6.forestGateReady>>
<<goto "D6 Forest Quiet">>
<</if>>
/* Virgin path must finish Gwen house first */
<<if $day6.gwenVirginPath and not $day6.gwenHouseDone>>
<p>The forest waits - but Gwen's address still burns in her pocket. She said evening at her place first.</p>
[[Gwen's house|D6 Gwen House]]
[[Town map|D6 Town Map]]
<<elseif $world.time isnot "Evening" and $world.time isnot "Night">>
<p>Daylight still cuts through the leaves. The air is too bright for whatever waits in the clearing.</p>
<p>
<et>Evening. It has to be evening.</et>
</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<elseif $day6.gwenVirginPath>>
<<goto "D6 Forest Virgin Invite">>
<<else>>
<<goto "D6 Forest Ritual">>
<</if>>
/* ═══════════════════════════════════════════════════════════
VIRGIN PATH — Gwen invites Emily; prophecy trial opens gate
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - forest clearing">>
<<set $day6.forestGateStarted to true>>
<<set $world.time to "Evening">>
<p>Emily arrives at the edge of the forest, heart racing. Tall ancient trees. Moss and damp earth.</p>
<p>As she steps further in, she spots Gwen already there, surrounded by five others - unpacking lanterns, notebooks, old maps marked with symbols.</p>
<p>Gwen looks up and smiles warmly.</p>
<p>
<gwen>There you are, Emily. I was hoping you'd come.</gwen>
</p>
<p>
<e>What's going on? Who are all these people?</e>
</p>
<p>
<gwen>They're researchers, like me. We've been following leads from old texts - the Prijak Dynasty, Queen Enisia. The inscription you found confirms a prophecy. And I made you do those things in my house to make you eligible for the prophecy.</gwen>
</p>
<p>
<e>Eligible for a prophecy?</e>
</p>
<p>Gwen hands her a notebook with an old poem:</p>
<p>
<em>
She walks untouched through every door,<br>
Yet knelt five times upon the floor.<br>
What she gave, she did not lose—<br>
A hidden truth for those who choose.<br>
Purity kept, though lips have played—<br>
Guess her tale, and be not swayed.
</em>
</p>
<p>
<gwen>A girl who is a virgin and gave five blowjobs can complete this puzzle.</gwen>
</p>
<p>
<e>Interesting... what do I have to do now?</e>
</p>
<p>
<gwen>Simple. Put that dildo-like thing in your pussy - and most probably a door must open.</gwen>
</p>
<p>
<e>This looks scary... but okay. I'll do it.</e>
</p>
[[Do it|D6 Forest Virgin Trial]]<<set $world.location to "Portugal - forest clearing">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily removes her clothes, nervous and strangely excited about what comes next.</p>
<img src="Images/1.3/19.jpg">
<p>She kneels before the stone fixture and slowly takes it inside her.</p>
<img src="Images/1.3/20.jpg">
<p>A rush of images floods her mind - basketball court, a teammate buried deep inside her, bodies slick with sweat.</p>
<img src="Images/1.3/21.gif">
<p>The principal's office - thick carpet, muffled screams of pleasure.</p>
<img src="Images/1.3/22.webp">
<p>A street, legs wrapped around a stranger as cars speed by.</p>
<img src="Images/1.3/23.gif">
<p>Her juices drip onto cold stone. The visions are intense, overwhelming - she cannot stop. She needs more.</p>
<img src="Images/1.3/24.gif">
<<toast "Corruption +1">>
[[Harder|D6 Forest Virgin Gate Opens]]<<set $world.location to "Portugal - forest clearing">>
<p>Emily moans, body trembling as she rides harder. Pleasure builds toward an orgasm that threatens to consume her.</p>
<p>
<gwen>See - look. The gate is opening.</gwen>
</p>
<p>Emily's eyes flutter open. An ancient stone structure - a hidden door slides open, dark passageway beyond. Glints of gold and jewels. Promise of treasure.</p>
<img src="Images/1.3/17.png">
[[Collapse|D6 Forest Virgin Betrayal]]<<set $world.location to "Portugal - forest clearing">>
<p>Emily collapses to her knees, trembling after the grueling ritual. Sweat on her skin, breath shallow.</p>
<p>
<e>We're... finally closer to the treasure...</e>
</p>
<p>She looks up at Gwen with a tired, hopeful smile.</p>
<p>
<gwen>We?</gwen>
</p>
<p>Gwen laughs coldly, steps closer with a smirk.</p>
<p>
<gwen>No, I am. We were just using you, bitch.</gwen>
</p>
<p>A sharp kick to Emily's stomach - she gasps and falls onto her side.</p>
<p>A young woman from Gwen's team - dark-haired, mid-20s - steps forward, voice trembling with anger.</p>
<p>
<npc>Girl:</npc> You can't do this to her! She helped us. She went through everything - this isn't right.
</p>
<p>Gwen doesn't even look. She snatches the notebook from the girl's hands and hurls it at her face.</p>
<p>
<gwen>And you're fired. Get out of my sight. Both of you.</gwen>
</p>
<p>She motions her team toward the open gate.</p>
<p>
<gwen>Let's go. The treasure's ours now.</gwen>
</p>
<p>One by one they follow her inside, leaving Emily and the girl in the dirt outside the ancient gate.</p>
<p>Silence - broken only by crackling torches and the bitter sting of betrayal.</p>
[[Next|D6 Forest Virgin Kelly]]<<set $world.location to "Portugal - forest clearing">>
<<set $day6.metKelly to true>>
<p>Emily sits on the forest floor, tears spilling freely. Her body trembles - not only from exhaustion, but heartbreak.</p>
<img src="Images/1.3/26.gif">
<p>
<e>Why... why did this happen...? I thought this would bring me closer to my mom...</e>
</p>
<p>The girl kneels beside her and gently places a hand on Emily's shoulder.</p>
<p>
<kelly>Wait... your mom?</kelly>
</p>
<p>
<e>Yeah... My mom came here years ago. She was looking for this treasure too. She wrote about it in her diary. That's how I even found this place...</e>
</p>
<p>Kelly's eyes widen.</p>
<p>
<kelly>Diary? You have her diary? Can I... can I see it?</kelly>
</p>
<img src="Images/Chapter 1/15.jpg">
<p>Emily pulls out the worn leather-bound book. Kelly opens it with reverence, flipping carefully.</p>
<p>
<kelly>This is incredible... Emily, don't cry. Gwen and her team - they don't know what we have. This diary is a direct path. They're guessing. We have a map written by someone who was here.</kelly>
</p>
<p>
<kelly>My name's Kelly, by the way. I... I was with them until tonight. Not anymore.</kelly>
</p>
<p>
<e>You... you really think we can still find it?</e>
</p>
<p>
<kelly>I know we can. Together. We're not out of this yet. In fact... we might be ahead of them. Let's go home. Rest, regroup - then we go after that treasure the right way.</kelly>
</p>
<p>Emily nods, still shaken, but no longer alone.</p>
<<set $day6.kellyAlly to true>>
[[Home|D6 Kelly Diary Virgin]]<<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Night">>
<<set $day6.forestGateDone to true>>
<<set $day6.kellyRiddle to true>>
<<set $day6.kellyAlly to true>>
<<run setup.Phone.refreshNotes()>>
<p>Back at uncle's house, Emily and Kelly sit on the edge of the bed. The diary lies open between them.</p>
<p>
<kelly>That riddle - the one at the gate - she used you for it. Virgin. Kneeling five times. That's why the house. That's why the questions in the washroom.</kelly>
</p>
<p>
<e>She used me like a key.</e>
</p>
<p>
<kelly>And then threw you away. But the diary doesn't care about Gwen. Your mom's path is still here. I'm with you - same college, different department. We'll meet. We'll plan.</kelly>
</p>
<p>
<e>Yeah. Let's bring her down. For real.</e>
</p>
<p>They don't say much after that. Two girls united by betrayal and a dangerous truth. Soon both drift into sleep.</p>
<<toast "Main quest: allied with Kelly">>
[[Sleep|D6 Sleep After Kelly]]<<set $world.location to "Portugal - forest clearing">>
<<set $day6.forestGateStarted to true>>
<<set $world.time to "Evening">>
<p>The sun is setting as Emily steps into the familiar stretch of forest. The air feels heavier than usual - like it is waiting for something.</p>
<p>Her steps slow as she reaches the clearing where she first found the mysterious markings. But something is different.</p>
<p>Voices.</p>
<p>She crouches behind a thick bush, pushing the branches aside just enough to see. Her heart skips.</p>
<p>There stands Gwen - cold and confident - surrounded by five other people cloaked in dark colors. Among them, a woman steps forward and begins disrobing without hesitation, then drops to her knees. Emily's eyes widen.</p>
<img src="Images/1.3/16.jpg">
<p>
<et>What the hell is going on...?</et>
</p>
<p>The woman approaches the ancient symbols etched into the ground. She sits before them, legs folded, head tilted back.</p>
[[Watch|D6 Forest Gate Opens]]<<set $world.location to "Portugal - forest clearing">>
<p>Suddenly, the woman's body jerks.</p>
<p>A low hum fills the air, as though the ground itself responds.</p>
<p>Her limbs twitch, eyes glowing faintly - possessed.</p>
<p>Emily covers her mouth in shock as a deep, grinding sound echoes through the trees. The earth trembles lightly.</p>
<p>A hidden stone gate embedded in a nearby rock face slowly begins to open.</p>
<img src="Images/1.3/17.png">
<p>The group erupts in quiet joy - some gasp, others clasp hands. Gwen stands still, unmoved by their excitement.</p>
<p>Then it shifts.</p>
<p>Gwen's face turns sour as she turns toward a girl holding an old, worn book.</p>
<p>Without warning - <strong>SLAP!</strong>
The book falls to the dirt as the girl stumbles back, stunned.</p>
<p>
<gwen>You almost ruined everything.</gwen>
</p>
<p>She spits the words with venom, then turns and disappears into the newly opened passage, followed quickly by the rest of the group.</p>
<p>All except the girl with the book, who remains behind - holding her cheek, trembling, and alone.</p>
<p>Emily's pulse races.</p>
<p>
<et>A gate... it actually opened... And Gwen - she's leading something dark. But why slap that girl? What was in that book?</et>
</p>
[[Go forward|D6 Forest Help Kelly]]<<set $world.location to "Portugal - forest clearing">>
<p>Emily carefully emerges from the bushes, her footsteps light but sure.</p>
<p>
<e>Hey... are you okay?</e>
</p>
<p>The girl flinches at her voice, eyes wide and teary. She quickly grabs the book from the ground and holds it close.</p>
<p>
<npc>Girl:</npc> You... you shouldn't be here.
</p>
<p>Her voice trembles - a mix of fear and warning.</p>
<p>Emily gently approaches, hands raised slightly to show she means no harm.</p>
<p>
<e>I saw what happened. She hit you. Whatever this is... you don't deserve to be treated like that.</e>
</p>
<p>The girl glances toward the now-closed gate, then back at Emily, struggling to hold her emotions together.</p>
<p>
<e>Come with me. Let's get you out of here. You're shaking.</e>
</p>
[[Take her home|D6 Kelly First Aid]]<<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Night">>
<<set $day6.metKelly to true>>
<p>Emily leads the girl gently into her room and sits her on the edge of the bed. Grabbing a first aid kit, she kneels beside her and begins dabbing a soft cotton ball on the fading bruise on Kelly's cheek.</p>
<p>
<e>You really shouldn't let anyone treat you like that. Especially not someone like Gwen.</e>
</p>
<p>The girl winces slightly, then manages a small, grateful smile.</p>
<p>
<kelly>Thanks... You're kind. My name's Kelly.</kelly>
</p>
<p>
<e>Kelly... nice to meet you. Even under these weird circumstances.</e>
</p>
<p>Kelly lies back slowly against the pillows, visibly exhausted.</p>
<p>
<e>Get some rest. You're safe here.</e>
</p>
<p>But Kelly sits up again, fingers tightening around the book.</p>
<p>
<kelly>You shouldn't have come to the forest... What you saw - it's a secret. I can't tell you more. Gwen would-</kelly>
</p>
<p>She hesitates, her face hardening.</p>
<p>
<kelly>But I swear I'll break that Gwen's face someday.</kelly>
</p>
<p>Emily leans back on her chair and sighs.</p>
<p>
<e>I already know a little about what you're hiding.</e>
</p>
<p>She opens her phone and shows Kelly the photo - the mysterious text glowing faintly on the old stone in the forest.</p>
<p>Kelly's eyes widen.</p>
<p>
<kelly>How... how do you have this?</kelly>
</p>
<p>
<e>I found it. Before I met any of you. I've been trying to understand it ever since.</e>
</p>
<p>Kelly stares at her in awe and confusion.</p>
<p>
<kelly>Who are you, Emily...?</kelly>
</p>
<p>Emily offers a faint smile.</p>
<p>
<e>I think I'm someone who's meant to be part of this story. Even if Gwen doesn't like it.</e>
</p>
[[Talk more|D6 Kelly Diary]]<<set $world.location to "Portugal - Emily's room">>
<p>Emily sits beside Kelly, lowering her voice.</p>
<p>
<e>You know Gwen? She's actually my classmate.</e>
</p>
<p>Kelly looks up, surprised.</p>
<p>
<kelly>You're serious? That psycho's just walking around campus like she's normal?</kelly>
</p>
<p>Emily nods.</p>
<p>
<e>Yeah... and she knows I'm interested in all this. But what she doesn't know is why.</e>
</p>
<p>She reaches under her bed and pulls out a worn leather-bound diary.</p>
<img src="Images/Chapter 1/15.jpg">
<p>
<e>This belonged to my mother. She disappeared years ago... and I believe this treasure - this whole mystery you're all chasing - she was chasing it too.</e>
</p>
<p>Kelly's eyes go wide as Emily opens the diary and hands it to her. Strange markings, symbols, cryptic notes.</p>
<p>
<kelly>Oh my god... This... this is the real thing. Gwen only has fragments and guesses - rumors passed around her group. But this...</kelly>
</p>
<p>She flips through the pages in awe, voice trembling with excitement.</p>
<p>
<kelly>This could change everything. With this... we can get ahead of Gwen. We could beat her gang to the truth. Maybe even stop them entirely.</kelly>
</p>
<p>
<e>So... are you with me?</e>
</p>
<p>Kelly looks up, fire in her eyes brighter than ever.</p>
<p>
<kelly>Yeah. Let's bring her down. For real.</kelly>
</p>
<<set $day6.kellyAlly to true>>
[[The riddle|D6 Kelly Riddle]]<<set $world.location to "Portugal - Emily's room">>
<<set $day6.forestGateDone to true>>
<<set $day6.kellyRiddle to true>>
<<run setup.Phone.refreshNotes()>>
<p>
<e>By the way - I found some text in the forest. Can you tell me what it was?</e>
</p>
<p>
<kelly>You must mean the one in front of the gate. It goes:</kelly>
</p>
<p>
<em>
She walks untouched through every door,<br>
Yet knelt five times upon the floor.<br>
What she gave, she did not lose—<br>
A hidden truth for those who choose.<br>
Purity kept, though lips have played—<br>
Guess her tale, and be not swayed.
</em>
</p>
<p>
<e>Wait a minute... does that mean a girl who is a virgin and gave five blowjobs can complete this puzzle?</e>
</p>
<p>
<kelly>Exactly.</kelly>
</p>
<p>
<e>That's why Gwen asked if I was a virgin or not - she wanted to use me for that puzzle.</e>
</p>
<p>
<kelly>Yeah. But she got a volunteer - the girl who was nude in the forest. Gwen bullied her too.</kelly>
</p>
<p>
<e>She definitely deserves hell.</e>
</p>
<p>Kelly gently closes the diary and holds it against her chest, as if it were the most valuable thing in the world.</p>
<p>
<kelly>By the way... I'm in the same college as you. Just... different department. That's probably why we haven't run into each other before.</kelly>
</p>
<p>
<e>Seriously? All this time?</e>
</p>
<p>Kelly nods, a little sheepishly.</p>
<p>
<kelly>I usually keep to myself. But now that I know you're in this with me, we should meet regularly. During breaks or after class - somewhere safe.</kelly>
</p>
<p>
<e>Yeah... I'd like that.</e>
</p>
<p>The tension of the day slowly melts. Kelly lies back, still holding the diary. Emily dims the lights.</p>
<p>They don't say much after that - two girls united by a dangerous truth, and the promise of facing it together.</p>
<p>Soon, both drift into sleep.</p>
<<toast "Main quest: allied with Kelly">>
[[Sleep|D6 Sleep After Kelly]]/* Morning after Kelly night → kitchen with Kelly + Albert + Jack */
<<set $world.time to "Morning">>
<<set $player.energy to 90>>
<<set $player.outfit to "sleep">>
<<set $day6.cafeShiftsToday to 0>>
<<set $day6.shower to false>>
<<set $day6.dressed to false>>
<<set $day6.breakfast to false>>
<<set $day6.ateToday to false>>
<<set $day6.classDone to false>>
<<set $day6.leftHome to false>>
<<set $world.location to "Portugal - Emily's room">>
<<if $day6.metRyan and not $day6.ryanParkDone>>
<<set $day6.ryanParkReady to true>>
<</if>>
/* Start 2-day main wait after forest */
<<if $day6.forestGateDone and not $day6.mainLoreReady>>
<<set $day6.mainWaitSleeps to Number($day6.mainWaitSleeps || 0) + 1>>
<<if $day6.mainWaitSleeps gte 2>>
<<set $day6.mainLoreReady to true>>
<</if>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Morning light. The house smells like coffee and toast. Voices drift up from the kitchen - and one of them is Kelly's.</p>
[[Go downstairs|D6 Kitchen Kelly Morning]]<<set $world.location to "Portugal - Gwen's house">>
<<set $day6.leftHome to true>>
<<if not $day6.gwenHouseInvited or not $day6.gwenVirginPath>>
<<goto "D6 Town Map">>
<</if>>
<<if $day6.gwenHouseDone>>
<p>The door is closed. Gwen already used what she needed from this place tonight.</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<elseif $world.time isnot "Evening" and $world.time isnot "Night">>
<p>Gwen's address sits in Emily's pocket. The sun is still too high. She said evening.</p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<<elseif $day6.gwenBjTier gte 4>>
<<goto "D6 Gwen House Two">>
<<else>>
<<goto "D6 Gwen House One">>
<</if>>
/* ── One man (Jake) — original day7_bj == 3 ── */<<set $world.location to "Portugal - Gwen's house">>
<p>Emily stands nervously before Gwen's door, evening sun casting long shadows on the quiet street. Gwen's note: <em>Come in the evening. I have a surprise for you.</em></p>
<p>Her heart pounds as she rings the bell.</p>
<p>The door opens. Gwen's eyes gleam with mischief.</p>
<p>
<gwen>Emily, welcome. Come, sit down. I have someone I want you to meet.</gwen>
</p>
<p>The living room is luxurious. Gwen gestures to a plush sofa. Emily sits, eyes fixed on Gwen's confident smile.</p>
<p>
<gwen>Relax. I promise you're going to enjoy this.</gwen>
</p>
<p>A door opens. A young man steps in - completely naked, toned, muscular. Emily blushes hard.</p>
<p>
<e>Who is he?</e>
</p>
<p>
<gwen>His name is Jake. And he's all yours tonight.</gwen>
</p>
<p>Gwen leans forward, voice low and seductive.</p>
<p>
<gwen>Emily, I want you to give him a blowjob. Show me what you can do.</gwen>
</p>
<p>
<e>What! But why?</e>
</p>
<p>
<gwen>Do what I say and you will be closer to the treasure. Believe me.</gwen>
</p>
<p>
<e>Ok.</e>
</p>
[[Touch|D6 Gwen House One BJ]]<<set $world.location to "Portugal - Gwen's house">>
<<set $day6.gwenHouseDone to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stands, eyes locked on Jake's growing erection. Gwen's gaze gives her a strange sense of empowerment. She kneels, wraps her fingers around him - warm and hard.</p>
<img src="Images/1.3/8.gif">
<p>She opens her mouth, takes the head inside, swirls her tongue. Jake moans, hand in her hair.</p>
<img src="Images/1.3/9.gif">
<p>
<gwen>Deeper, Emily. Take more of him into your mouth.</gwen>
</p>
<p>Emily slides further, fights the urge to gag, pulls back with a soft pop.</p>
<img src="Images/1.3/10.gif">
<p>Jake tenses. She works faster. He groans - hot liquid fills her mouth. She swallows quickly.</p>
<img src="Images/1.3/11.gif">
<p>
<gwen>You did a great job, Emily. You can leave now. I'll tell you further details... when the forest is ready.</gwen>
</p>
<<toast "Corruption +1 · Gwen house done">>
[[Uncle's house|D6 House Map]]
[[Town map|D6 Town Map]]
/* ── Two men — original day7_bj == 4 ── */<<set $world.location to "Portugal - Gwen's house">>
<p>Emily's heart pounds as the bell chimes. The door opens. Gwen - dark hair over her shoulders, eyes sparkling with mischief.</p>
<p>
<gwen>Emily. Good to see you here.</gwen>
</p>
<p>The foyer smells of jasmine. Gwen leads her to the living room, plush sofa.</p>
<p>
<gwen>Sit.</gwen>
</p>
<p>Emily obeys. Footsteps from the hallway. Two men emerge - both completely naked. She gasps.</p>
<p>
<gwen>I have a little task for you. I want you to give blowjobs to my friends here.</gwen>
</p>
<p>
<e>What! But why?</e>
</p>
<p>
<gwen>Do what I say and you will be closer to the treasure. Believe me.</gwen>
</p>
<p>
<e>Ok.</e>
</p>
<p>
<gwen>Don't be shy. They're here for your pleasure as much as yours for theirs.</gwen>
</p>
[[Begin|D6 Gwen House Two BJ]]<<set $world.location to "Portugal - Gwen's house">>
<p>Emily takes the tip of the first man into her mouth, swirls her tongue, takes more - head bobbing. Then she moves to the second, saliva coating both shafts. Moans and wet sounds fill the room.</p>
<img src="Images/1.3/12.gif">
<img src="Images/1.3/13.gif">
[[Continue|D6 Gwen House Two Finish]]<<set $world.location to "Portugal - Gwen's house">>
<<set $day6.gwenHouseDone to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily increases her pace on both. The men grow harder, breathing ragged.</p>
<p>
<gwen>That's enough. They're ready.</gwen>
</p>
<p>Emily pulls back. They stroke themselves and come almost together - hot cum across her face and chest. She moans softly at the warmth.</p>
<img src="Images/1.3/14.gif">
<p>
<gwen>Clean them up.</gwen>
</p>
<p>Emily leans forward, tongue lapping the rest from their shafts. Submission and pride mixed in her eyes.</p>
<img src="Images/1.3/15.gif">
<p>
<gwen>Good girl. We'll meet again when the forest calls. Don't be late for that either.</gwen>
</p>
<<toast "Corruption +1 · Gwen house done">>
[[Uncle's house|D6 House Map]]
[[Town map|D6 Town Map]]<<set $world.location to "Portugal - gym">>
<<if not $day6.gymUnlocked>>
<<goto "D6 Town Map">>
<</if>>
<<set $day6.gymVisited to true>>
<<run setup.Phone.refreshNotes()>>
<<if not $day6.gymIntroDone>>
<<goto "D6 Gym Intro">>
<</if>>
<<if not $day6.gymMembership>>
<p>The front desk girl gives Emily a friendly nod - no membership on file yet, just a guest pass for today.</p>
<p>
<et>Malik said I could join anytime. Guess it's time to actually do it.</et>
</p>
[[Get a membership|D6 Gym Membership]]
[[Town map|D6 Town Map]]
<<else>>
<p>Mix Iron doesn't look like much from the outside - a steel door, a faded sign, bass leaking through the glass. Inside it opens right up: mirrors on every wall, rows of free weights, the sharp smell of chalk and effort.</p>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Free weights</span><span class="loc-sub">Work the basics</span></span>' "D6 Gym Ex Weights">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Treadmill</span><span class="loc-sub">Cardio</span></span>' "D6 Gym Ex Treadmill">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Bench press</span><span class="loc-sub">Malik spots her</span></span>' "D6 Gym Ex Bench">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Stretching</span><span class="loc-sub">Cool down</span></span>' "D6 Gym Ex Stretch">><</link>>
<span class="loc-locked"><span class="loc-name">More equipment</span><span class="loc-sub">In next version</span></span>
</div>
[[Town map|D6 Town Map]]
<</if>>
/* ── First visit: Leah working out, the gym's "specialty", Malik the trainer ── */<<set $world.location to "Portugal - gym">>
<<run setup.Phone.refreshNotes()>>
<p>Mix Iron doesn't look like much from the outside - a steel door, a faded sign, bass leaking through the glass. Inside it opens right up: mirrors on every wall, rows of free weights, the sharp smell of chalk and effort. The girl at the front desk barely looks up before waving her through the moment Emily mentions Leah's name.</p>
<p>Emily spots her almost immediately - Leah, mid-set on the free-weight floor, ponytail whipping with every rep, muscles cut sharp under the gym lights.</p>
<img src="Images/gym_route/Leah_workout.gif" alt="Leah working out at Mix Iron">
<p>
<et>She really does live here, huh.</et>
</p>
<p>Emily's eyes drift across the rest of the floor while she waits for Leah to notice her - and something about the room slowly clicks into place. Every trainer working the floor is a big, muscular black man. Every client being spotted, corrected, coached - every single one - is a woman, and every one of them is white.</p>
<p>
<et>Okay... that's not a coincidence. Is this place... themed?</et>
</p>
<p>Leah racks her weights and jogs over, grinning at the look on Emily's face.</p>
<p>
<leah>You noticed.</leah>
</p>
<p>
<e>Kind of hard not to. Is this... on purpose?</e>
</p>
<p>Leah laughs, wiping sweat from her collarbone with the back of her wrist.</p>
<p>
<leah>Completely on purpose. Mix Iron's built around it - the trainers, the clientele, all of it. It's kind of the whole appeal. You get used to it fast.</leah>
</p>
<p>Emily doesn't quite know what to say to that, so she just nods slowly, cheeks warming for reasons she'd rather not examine too closely.</p>
<p>
<e>Huh. Okay.</e>
</p>
<p>Leah tips her head toward the far end of the floor, where a wall of a man is racking dumbbells like they weigh nothing - dark skin gleaming under the lights, shoulders and arms built like the equipment around him.</p>
<p>
<leah>Come on, let me introduce you to Malik. He runs the floor.</leah>
</p>
[[Meet Malik|D6 Gym Meet Malik]]<<set $world.location to "Portugal - gym">>
<p>Leah waves him over, and Malik ambles across the floor unhurried, the kind of easy confidence that comes from being the biggest, most solid thing in any room he walks into.</p>
<img src="Images/gym_route/trainer.jpg" alt="Malik, the trainer at Mix Iron">
<p>
<leah>Malik, this is Emily. Friend of mine - just moved here.</leah>
</p>
<p>Malik looks her over, unhurried and openly appreciative, then offers a hand easily twice the size of hers.</p>
<p>
<malik>Emily. Good to meet you. Leah's told me about you already.</malik>
</p>
<p>
<e>All good things, I hope.</e>
</p>
<p>
<malik>All good things.</malik>
</p>
<p>He grins, glancing around the floor before looking back at her.</p>
<p>
<malik>Whenever you're ready, you can join anytime. No pressure - just come by, get a membership, and I'll get you started myself.</malik>
</p>
<p>Emily glances between him and Leah, something unreadable flickering behind her eyes before she covers it with a small smile.</p>
<p>
<e>I might just take you up on that.</e>
</p>
<p>
<malik>I'll hold you to it.</malik>
</p>
<<set $day6.gymIntroDone to true>>
<<toast "Mix Iron — met Malik">>
[[Town map|D6 Town Map]]
/* ── Membership purchase ── */<<set $world.location to "Portugal - gym">>
<<if $day6.gymMembership>>
<<goto "D6 Gym">>
<</if>>
<p>The front desk girl slides a clipboard across the counter.</p>
<p>
<npc>Receptionist:</npc> Monthly membership is $30. Gets you the floor, the equipment, everyone here.
</p>
<<if $player.money gte 30>>
<<link '<span class="story-choice">Pay $30 for membership</span>' "D6 Gym Membership Done">><</link>>
<<else>>
<p class="hub-hint"><em>Not enough money for membership right now ($30 needed).</em></p>
<</if>>
[[Town map|D6 Town Map]]<<set $world.location to "Portugal - gym">>
<<if $day6.gymMembership>>
<<goto "D6 Gym">>
<</if>>
<<if $player.money lt 30>>
<<goto "D6 Gym Membership">>
<</if>>
<<set $player.money to Number($player.money) - 30>>
<<set $day6.gymMembership to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily signs her name at the bottom of the clipboard and hands over the cash. The receptionist slaps a small keytag on the counter - her membership, official now.</p>
<p>
<et>Guess I'm a Mix Iron girl now.</et>
</p>
<<toast "Mix Iron membership — $30">>
[[Town map|D6 Town Map]]
[[Start training|D6 Gym]]
/* ── Exercises (flavor only for now) ── */<<set $world.location to "Portugal - gym">>
<p>Emily works through a set of free weights, Malik correcting her form once with a light touch to her hip that lingers half a second longer than strictly necessary. She doesn't pull away.</p>
<p>
<et>Just form correction. That's all that was.</et>
</p>
[[Gym|D6 Gym]]<<set $world.location to "Portugal - gym">>
<p>Emily settles onto a treadmill near the back, watching the room in the mirror rather than in front of her - the easy confidence of the men, the way the women around her seem to melt a little every time one of the trainers leans in close to correct something.</p>
<p>
<et>This place really does have a type.</et>
</p>
[[Gym|D6 Gym]]<<set $world.location to "Portugal - gym">>
<p>Malik spots her on the bench, his hands hovering close to the bar - close enough that she's more aware of him than of the weight she's pressing.</p>
<p>
<malik>Good. Keep that control. Don't rush it.</malik>
</p>
<p>Emily nods, focusing hard on the bar and not on how steady his voice is right above her.</p>
[[Gym|D6 Gym]]<<set $world.location to "Portugal - gym">>
<p>Emily cools down on the mats at the edge of the floor, catching her breath, watching Leah across the room laughing easily with one of the other trainers like it's the most natural thing in the world.</p>
<p>
<et>Maybe I really am starting to fit in here.</et>
</p>
[[Gym|D6 Gym]]<<set $world.location to "Portugal - mall">>
<<set $day5.mallVisit to true>>
<<if $day5.hornyMode>>
<<goto "D5 Mall Horny Vision">>
<</if>>
<p>A modest indoor mall - tile shine, recycled air, pop music in a language she half-follows. Clothing shops, a phone kiosk, a food court winding down for the evening.</p>
<p>
<et>I could buy something tiny. Or just learn the layout for later.</et>
</p>
[[Browse shops|D5 Mall Browse]]
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]<<set $day5.hornyMallDone to true>>
<<set $world.location to "Portugal - mall">>
<p>The mall's noise fades to a dull hum the moment she steps inside - crowds moving past, shop windows glowing, none of it quite reaching her.</p>
<p>Heat rises anyway. Unwelcome. Her imagination drags her someplace public and reckless - clothes shoved aside right there in the open walkway, bodies moving together in full view, strangers slowing to watch and not looking away.</p>
<img src="Images/Forest/Da1_vial/mall_sex.gif">
<p>
<et>People are right there. Why does that make it worse - or better?</et>
</p>
<p>
<e>Get it together, Emily.</e>
</p>
<p>She presses a hand flat against a shop window, breathing until the image finally lets go of her, cheeks still burning as shoppers drift past none the wiser.</p>
<<toast "That drink is still messing with her head">>
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]<<set $world.location to "Portugal - mall">>
<p>She wanders past windows - dresses she can't justify, chargers she might need. Nothing she has to buy tonight. Tomorrow the shops will still be here.</p>
<p>
<e>Later. When I'm not jet-lagged.</e>
</p>
[[Mall|D5 Mall]]
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]
/* ═══════════════════════════════════════════════════════════
DAY 6+ — Mall (clothes)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - mall">>
<<set $day6.mallVisit to true>>
<<set $day6.leftHome to true>>
<<if ndef $wardrobe>><<set $wardrobe to { casual : true, jogging : false }>><</if>>
<<run setup.Phone.refreshNotes()>>
<p>Indoor mall. Tile shine. Pop music. Clothing racks that actually matter now - she needs options if she wants to jog, not just exist.</p>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Clothes</span><span class="loc-sub">Casual - Jogging</span></span>' "D6 Mall Clothes">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Browse</span><span class="loc-sub">Wander</span></span>' "D6 Mall Browse">><</link>>
<<if $day6.lumaBrandReady and not $day6.lumaBrandDone>>
<<link '<span class="loc-card"><span class="loc-name">Velvet Lane</span><span class="loc-sub">Brand promo</span></span>' "D6 Mall Velvet Lane">><</link>>
<</if>>
<<if $day6.lumaBrand2Ready and not $day6.lumaBrand2Done>>
<<link '<span class="loc-card"><span class="loc-name">Halo Eyewear</span><span class="loc-sub">Brand promo</span></span>' "D6 Mall Halo Eyewear">><</link>>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Town</span><span class="loc-sub">Leave</span></span>' "D6 Town Map">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Home</span><span class="loc-sub">Uncle\'s house</span></span>' "D6 House Map">><</link>>
</div><<set $world.location to "Portugal - mall">>
<p>Windows and price tags. Food court noise. Nothing urgent if she is not shopping clothes.</p>
[[Mall|D6 Mall]]
[[Town map|D6 Town Map]]<<set $world.location to "Portugal - mall clothes">>
<<if ndef $wardrobe>><<set $wardrobe to { casual : true, jogging : false }>><</if>>
<p>Sportswear and casual racks. Soft lighting that makes everything look worth more than the tag.</p>
<p>
<em>Wallet: $<<= $player.money>></em>
</p>
<div class="loc-grid">
/* Casual — already owned */
<<if $wardrobe.casual>>
<span class="loc-locked"><span class="loc-name">Casual set</span><span class="loc-sub">Owned</span></span>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Casual set</span><span class="loc-sub">$25</span></span>' "D6 Mall Buy Casual">><</link>>
<</if>>
/* Jogging */
<<if $wardrobe.jogging>>
<span class="loc-locked"><span class="loc-name">Jogging set</span><span class="loc-sub">Owned</span></span>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Jogging set</span><span class="loc-sub">$35 - unlocks park jog</span></span>' "D6 Mall Buy Jogging">><</link>>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Mall</span><span class="loc-sub">Back</span></span>' "D6 Mall">><</link>>
</div><<set $world.location to "Portugal - mall clothes">>
<<if $wardrobe.casual>>
<<goto "D6 Mall Clothes">>
<</if>>
<<if $player.money gte 25>>
<<set $player.money to Number($player.money) - 25>>
<<set $wardrobe.casual to true>>
<<toast "Bought casual set - -$25">>
<p>Basic top, jeans, clean sneakers energy. She already lived in clothes like this - now she owns a spare set here.</p>
<<else>>
<p>Not enough money for the casual set right now.</p>
<</if>>
[[Clothes shop|D6 Mall Clothes]]
[[Mall|D6 Mall]]<<set $world.location to "Portugal - mall clothes">>
<<if $wardrobe.jogging>>
<<goto "D6 Mall Clothes">>
<</if>>
<<if $player.money gte 35>>
<<set $player.money to Number($player.money) - 35>>
<<set $wardrobe.jogging to true>>
<<run setup.Phone.refreshNotes()>>
<<toast "Bought jogging set - -$35">>
<p>Light top. Proper shorts. Shoes that say track, not lecture. She can jog at the park once she changes at home.</p>
<<else>>
<p>Not enough money for the jogging set ($35).</p>
<</if>>
[[Clothes shop|D6 Mall Clothes]]
[[Mall|D6 Mall]]
/* ═══════════════════════════════════════════════════════════
Velvet Lane — brand promo (Luma 1000-follower milestone)
Reached via D6 Mall hub once $day6.lumaBrandReady is true.
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - mall">>
<<if $day6.lumaBrandDone or not $day6.lumaBrandReady>>
<<goto "D6 Mall">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>The Velvet Lane storefront is smaller than she pictured from the photos on Luma - all soft pink neon and clothes racked by color instead of size. A girl not much older than her looks up from the register and breaks into a grin.</p>
<p>
<npc>Staff:</npc> Oh my god, you're actually here! You're @emily on Luma, right? We've been dying to work with you.
</p>
<p>She waves Emily toward the fitting rooms, already pulling pieces off the nearest rack.</p>
<p>
<e>So... I just try stuff on and post it?</e>
</p>
<p>
<npc>Staff:</npc> Basically! Whatever look feels like <em>you</em>. We just need a few good shots for the tag.
</p>
<p><et>Two racks catch her eye - one soft and put-together, one that leaves a lot less to guess at.</et></p>
<<link "Try the elegant look" "D6 Mall Velvet Lane Fitting">><<set $day6.velvetOutfit to "elegant">><</link>>
<<link "Try the bold look" "D6 Mall Velvet Lane Fitting">><<set $day6.velvetOutfit to "bold">><</link>>
[[Not today|D6 Mall]]<<set $world.location to "Portugal - mall">>
<<if $day6.lumaBrandDone or not $day6.lumaBrandReady>>
<<goto "D6 Mall">>
<</if>>
<<if not $day6.velvetOutfit>>
<<set $day6.velvetOutfit to "elegant">>
<</if>>
<<if $day6.velvetOutfit is "elegant">>
<img src="Images/Mall/elegant_look.jpg" alt="Elegant look">
<p>She steps into a fitted dress the color of champagne, smoothing it down over her hips in the mirror. It is tasteful, expensive-looking - the kind of thing that photographs well without trying too hard.</p>
<p>
<e>Okay... this actually looks really good.</e>
</p>
<<else>>
<img src="Images/Mall/bold_look.jpg" alt="Bold look">
<p>She pulls on a cropped top and a skirt that rides low on her waist, turning in the mirror to check the angle. It is bolder than anything in her own closet - the kind of outfit that makes people look twice.</p>
<p>
<e>...this is a lot. I kind of love it though.</e>
</p>
<</if>>
<p>The staff girl pokes her head in, phone already raised.</p>
<p>
<npc>Staff:</npc> That's the one. Ready for me to grab a few shots?
</p>
<<link "📷 Take the photos" "D6 Mall Velvet Lane Photos">><</link>>
[[Pick a different look|D6 Mall Velvet Lane]]<<set $world.location to "Portugal - mall">>
<<if $day6.lumaBrandDone or not $day6.lumaBrandReady>>
<<goto "D6 Mall">>
<</if>>
<<if not $day6.velvetOutfit>>
<<set $day6.velvetOutfit to "elegant">>
<</if>>
<p><<= $day6.velvetOutfit is "elegant" ? "Soft light through the shop window. Chin up, easy smile - effortless is the whole point." : "Hip cocked, a little smirk for the camera. Confidence sells the outfit.">></p>
<div class="ss-camera-viewfinder" style="max-width:280px;margin:1rem auto;padding:1.25rem;border:1px solid var(--border, #333);border-radius:12px;text-align:center;">
<div class="ss-camera-hint" style="opacity:0.7;font-size:0.85rem;margin-bottom:0.5rem;">Velvet Lane · promo shoot</div>
<div class="ss-camera-mirror" style="min-height:120px;display:flex;align-items:center;justify-content:center;opacity:0.85;">
<<= $day6.velvetOutfit is "elegant" ? "Elegant look · soft frame" : "Bold look · confident frame">>
</div>
</div>
<p>The staff girl fires off a dozen shots, scrolling through them with an approving nod.</p>
<npc>Staff:</npc> These are perfect. Post whenever - tag us and the check clears same day.
<<link "Post the promo" "D6 Mall Velvet Lane Done">><<run setup.Phone.completeVelvetLanePromo(State.variables.day6.velvetOutfit || "elegant")>><</link>>
[[Try a different look|D6 Mall Velvet Lane Fitting]]<<set $world.location to "Portugal - mall">>
/* completeVelvetLanePromo should already have run from the link; heal if skipped */
<<if not $day6.lumaBrandDone>>
<<run setup.Phone.completeVelvetLanePromo(State.variables.day6.velvetOutfit || "elegant")>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>The post goes up before she even leaves the store - Velvet Lane's tag already showing under it. By the time she's back outside, her phone buzzes: payment confirmed, <strong>$100</strong> added to her account.</p>
<p>
<e>Okay... I could get used to that.</e>
</p>
<<toast "Velvet Lane promo posted - +$100">>
[[Mall|D6 Mall]]
[[Town map|D6 Town Map]]
/* ═══════════════════════════════════════════════════════════
Halo Eyewear — brand promo (Luma 2000-follower milestone)
Reached via D6 Mall hub once $day6.lumaBrand2Ready is true.
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - mall">>
<<if $day6.lumaBrand2Done or not $day6.lumaBrand2Ready>>
<<goto "D6 Mall">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Halo Eyewear is tucked between a phone kiosk and a bakery - a clean little storefront, walls lined with frames under warm spotlights. An older man in round glasses of his own looks up and smiles like he's been expecting her.</p>
<p>
<npc>Optician:</npc> You must be Emily - the Luma girl. Halo emailed you, yes? Come, come. Let's find you something that actually fits your face, not just what's trending.
</p>
<p>He waves her toward a mirror flanked by two trays of frames.</p>
<p>
<e>Honestly I've never worn glasses before. I don't even need them.</e>
</p>
<p>
<npc>Optician:</npc> Doesn't matter - these are clear lenses, just for looks. Half our customers don't need them either.
</p>
<p><et>One tray is all clean lines and neutral tones. The other leans sharper - thick frames, a little more attitude.</et></p>
<<link "Try the classic frames" "D6 Mall Halo Eyewear Fitting">><<set $day6.haloStyle to "classic">><</link>>
<<link "Try the trendy frames" "D6 Mall Halo Eyewear Fitting">><<set $day6.haloStyle to "trendy">><</link>>
[[Not today|D6 Mall]]<<set $world.location to "Portugal - mall">>
<<if $day6.lumaBrand2Done or not $day6.lumaBrand2Ready>>
<<goto "D6 Mall">>
<</if>>
<<if not $day6.haloStyle>>
<<set $day6.haloStyle to "classic">>
<</if>>
<<if $day6.haloStyle is "classic">>
<img src="Images/Mall/glasses1.jpg" alt="Classic frames">
<p>She slides on a pair of thin gold-rimmed frames, tilting her head in the mirror. They soften her whole face - a little older, a little smarter, somehow still her.</p>
<p>
<e>Okay, wow. These are actually really flattering.</e>
</p>
<<else>>
<img src="Images/Mall/glasses2.jpg" alt="Trendy frames">
<p>She pulls on a pair of bold black frames, chunky enough to be a statement on their own. In the mirror she looks sharper - almost like a different person, in a good way.</p>
<p>
<e>...I look like I could run a company in these.</e>
</p>
<</if>>
<p>The optician nods approvingly and reaches for his phone.</p>
<p>
<npc>Optician:</npc> That's the one. Ready for a few shots?
</p>
<<link "📷 Take the photos" "D6 Mall Halo Eyewear Photos">><</link>>
[[Pick a different style|D6 Mall Halo Eyewear]]<<set $world.location to "Portugal - mall">>
<<if $day6.lumaBrand2Done or not $day6.lumaBrand2Ready>>
<<goto "D6 Mall">>
<</if>>
<<if not $day6.haloStyle>>
<<set $day6.haloStyle to "classic">>
<</if>>
<p><<= $day6.haloStyle is "classic" ? "Warm light off the display case. Soft smile, chin down slightly - the glasses do the talking." : "Arms crossed, a level stare into the lens. The frames want confidence, not cute.">></p>
<div class="ss-camera-viewfinder" style="max-width:280px;margin:1rem auto;padding:1.25rem;border:1px solid var(--border, #333);border-radius:12px;text-align:center;">
<div class="ss-camera-hint" style="opacity:0.7;font-size:0.85rem;margin-bottom:0.5rem;">Halo Eyewear · promo shoot</div>
<div class="ss-camera-mirror" style="min-height:120px;display:flex;align-items:center;justify-content:center;opacity:0.85;">
<<= $day6.haloStyle is "classic" ? "Classic frames · soft frame" : "Trendy frames · confident frame">>
</div>
</div>
<p>The optician checks the shots on his phone and gives a satisfied nod.</p>
<npc>Optician:</npc> Perfect. Post those and the payment goes out today.
<<link "Post the promo" "D6 Mall Halo Eyewear Done">><<run setup.Phone.completeHaloPromo(State.variables.day6.haloStyle || "classic")>><</link>>
[[Try a different style|D6 Mall Halo Eyewear Fitting]]<<set $world.location to "Portugal - mall">>
/* completeHaloPromo should already have run from the link; heal if skipped */
<<if not $day6.lumaBrand2Done>>
<<run setup.Phone.completeHaloPromo(State.variables.day6.haloStyle || "classic")>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>The post is live before she's even out the door - Halo Eyewear's tag already stacking up likes. Her phone buzzes on the walk back: payment confirmed, <strong>$120</strong> added to her account.</p>
<p>
<e>Free money for wearing glasses I don't need. I'm not complaining.</e>
</p>
<<toast "Halo Eyewear promo posted - +$120">>
[[Mall|D6 Mall]]
[[Town map|D6 Town Map]]<<set $world.location to "Portugal - park">>
<<set $day5.parkVisit to true>>
<<if $day5.hornyMode>>
<<goto "D5 Park Horny Vision">>
<</if>>
<<= setup.locBannerHtml("park", "Park", $world.time + " - Portugal")>>
<p>A small park between apartment blocks - dusty paths, a fountain that mostly works, benches facing nowhere special. Evening light softens the edges of a place that will look harsher in noon heat.</p>
<p>
<et>Not home. Not college. Just air.</et>
</p>
[[Sit a while|D5 Park Sit]]
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]<<set $day5.hornyParkDone to true>>
<<set $world.location to "Portugal - park">>
<<= setup.locBannerHtml("park", "Park", $world.time + " - Portugal")>>
<p>The sun is lower, golden on the grass. Children laugh. The fountain splashes.</p>
<p>Near the trees, a man works out - tall, muscular, skin glistening. Her mind goes somewhere it should not.</p>
<img src="Images/1.2/12.gif">
<p>
<e>Whoa... who even looks like that in real life?</e>
</p>
<img src="Images/1.2/14.gif">
<p>
<e>Okay, no, stop. Focus! It's gotta be that forest drink...</e>
</p>
<p>She hurries down the path, eyes on the ground, cheeks burning.</p>
<<toast "That drink is still messing with her head">>
[[Park|D5 Park]]
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]<<set $world.location to "Portugal - park">>
<<run setup.advanceTime(1)>>
<<if not $day5.forestDone and $world.time is "Night">>
<<set $world.time to "Evening">>
<</if>>
<<if $world.time is "Night" and $day5.forestDone>>
<p>Streetlights blink on. The park empties. Cool air slides under her shirt. Time to go home.</p>
[[Uncle's house|D5 Try Home]]
<<else>>
<p>She sits until her thoughts slow. A dog yanks a leash. Somewhere a scooter coughs. Evening holds - night waits until Mom's trail is done.</p>
[[Park|D5 Park]]
[[Town map|D5 Town Map]]
[[Uncle's house|D5 Try Home]]
<</if>>
/* ═══════════════════════════════════════════════════════════
DAY 6+ — Park
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - park">>
<<set $day6.parkVisit to true>>
<<set $day6.leftHome to true>>
<<if ndef $wardrobe>><<set $wardrobe to { casual : true, jogging : false }>><</if>>
<<if ndef $day6.bsd14Scored>><<set $day6.bsd14Scored to false>><</if>>
<<if ndef $day6.liamDateReady>><<set $day6.liamDateReady to false>><</if>>
<<if ndef $day6.liamDateDone>><<set $day6.liamDateDone to false>><</if>>
<<run setup.Phone.refreshNotes()>>
/* Liam evening park practice (miss path) — highest priority so drink vision / other autos cannot block it */
<<if $day6.liamDateReady and not $day6.liamDateDone and not $day6.bsd14Scored and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<goto "D6 Liam Park Practice">>
<</if>>
/* Kelly park meet (jogging clothes) */
<<set _kellyPark to ($day6.kellyParkQuest and not $day6.kellyParkDone)>>
/* NTR Ryan jog: only if ready + owns jogging set + wearing it */
<<set _ryanJogReady to (($ntr or $ntr_david) and $day6.ryanParkReady and not $day6.ryanParkDone)>>
<<set _canJog to ($wardrobe.jogging and $player.outfit is "jogging")>>
<<if _kellyPark and _canJog>>
<<goto "D6 Park Kelly">>
<</if>>
<<if _ryanJogReady and _canJog and not _kellyPark>>
<<goto "D6 Park Ryan">>
<</if>>
/* Drink residual fallback: only if she never got the vision the evening she drank it (D5 Park) */
<<if $day5.drank and not $day5.hornyParkDone and not _ryanJogReady and not _kellyPark and not ($day6.liamDateReady and not $day6.liamDateDone)>>
<<goto "D6 Park Drink Vision">>
<</if>>
<<= setup.locBannerHtml("park", "Park", $world.time + " - Portugal")>>
<p>Dusty paths. Fountain. Jogging track painted in faded white. Benches that face the trees.</p>
<div class="loc-grid">
<<if $day6.liamDateReady and not $day6.liamDateDone and not $day6.bsd14Scored>>
<<link '<span class="loc-card"><span class="loc-name">Court with Liam</span><span class="loc-sub">Evening practice</span></span>' "D6 Liam Park Practice">><</link>>
<</if>>
<<if _canJog>>
<<if _kellyPark>>
<<link '<span class="loc-card"><span class="loc-name">Meet Kelly</span><span class="loc-sub">Bench under the tree</span></span>' "D6 Park Kelly">><</link>>
<<elseif _ryanJogReady>>
<<link '<span class="loc-card"><span class="loc-name">Jog</span><span class="loc-sub">NTR - Ryan</span></span>' "D6 Park Ryan">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Jog</span><span class="loc-sub">Track - pass time</span></span>' "D6 Park Jog">><</link>>
<</if>>
<<elseif not $wardrobe.jogging>>
<span class="loc-locked"><span class="loc-name">Jog</span><span class="loc-sub">Buy jogging clothes (mall)</span></span>
<<else>>
<span class="loc-locked"><span class="loc-name">Jog</span><span class="loc-sub">Wear jogging clothes first</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Relax</span><span class="loc-sub">Bench - pass time</span></span>' "D6 Park Sit">><</link>>
<<if (_ryanJogReady or _kellyPark) and not $wardrobe.jogging>>
<<link '<span class="loc-card"><span class="loc-name">Mall</span><span class="loc-sub">Buy jogging set</span></span>' "D6 Mall">><</link>>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Town</span><span class="loc-sub">Leave</span></span>' "D6 Town Map">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Home</span><span class="loc-sub">Uncle\'s house</span></span>' "D6 House Map">><</link>>
</div><<set $world.location to "Portugal - park">>
/* One-time random encounter: 30% chance per relax, until it fires once */
<<if not $day6.leahMet and $world.time isnot "Night" and Math.random() < 0.3>>
<<goto "D6 Park Leah Meet">>
<</if>>
<<run setup.advanceTime(1)>>
<<if $world.time is "Night">>
<p>Lights come on. Time to head back.</p>
[[Uncle's house|D6 House Map]]
<<else>>
<p>She sits. Thoughts slow. College, cafe, Mom - they take turns without winning yet.</p>
<<toast "Time passes">>
[[Park|D6 Park]]
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<</if>>
/* First-time park meet: Leah, gym girl — unlocks Mix Iron gym */<<set $world.location to "Portugal - park">>
<<if $day6.leahMet>>
<<goto "D6 Park Sit">>
<</if>>
<<set $day6.leahMet to true>>
<<set $day6.gymUnlocked to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily settles onto her usual bench, ready to let her thoughts go quiet - and then she sees her. A woman is working the open patch of grass by the fountain, dumbbells in hand, ponytail swinging with every rep. Every line of her is cut and toned, sweat catching the light like she was built for exactly this.</p>
<img src="Images/gym_route/Leah_workout_intro/1.jpg" alt="Leah working out in the park">
<p>
<et>Okay... that is not a normal body. How does someone even get like that?</et>
</p>
<p>Emily catches herself staring a beat too long. The woman notices, flashes an easy grin, and jogs over without waiting to be invited.</p>
<p>
<leah>Hey. You're allowed to stare, everyone does.</leah>
</p>
<p>Emily laughs, caught, and pushes past the embarrassment.</p>
<p>
<e>Sorry - I wasn't trying to be weird. I just... how did you build a physique like that?</e>
</p>
<img src="Images/gym_route/Leah_workout_intro/2.jpg" alt="Leah up close, mid-conversation">
<p>
<leah>Gym. A lot of it. Regularly, not just when I feel guilty about pizza.</leah>
</p>
<p>She sets the dumbbells down on the grass and wipes her palm on her shorts before offering it.</p>
<p>
<leah>I'm Leah, by the way.</leah>
</p>
<p>
<e>Emily. I just moved here - still figuring out where anything is.</e>
</p>
<p>They talk for a while - easy, unhurried. Leah asks about Portugal, laughs at the right places, doesn't make Emily feel like an outsider for once. There is a confidence to her that has nothing to do with showing off; she just seems entirely comfortable in her own skin.</p>
<img src="Images/gym_route/Leah_workout_intro/3.jpg" alt="Leah looking directly at Emily">
<p>
<leah>You should come train with me sometime. My gym's called Mix Iron, it's not far from here. I could show you around, get you started.</leah>
</p>
<p>Emily doesn't even have to think about it.</p>
<p>
<e>For sure - I'll visit. I could use something like that right now.</e>
</p>
<p>
<leah>I'll hold you to it.</leah>
</p>
<p>Leah scoops the dumbbells back up, gives a small wave, and turns to jog off down the path. It's only then, as she pivots away, that Emily notices it - a small tattoo low on her hip, half-hidden by the waistband of her shorts. A stylized card symbol, sharp black lines: a spade with a crowned Q worked into the center.</p>
<img src="Images/gym_route/Leah_workout_intro/tattoo.webp" alt="A tattoo on Leah's hip as she walks away">
<p>
<et>Huh. Wonder what that's about... I'll ask her when I see her at the gym.</et>
</p>
<<set $day6.leahTattooNoted to true>>
<<toast "Leah invited you to Mix Iron gym">>
[[Park|D6 Park]]
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
/* Kelly park meet - original PD8 (bench lore / Enisia) */<<set $world.location to "Portugal - park">>
<<if not $day6.kellyParkQuest or $day6.kellyParkDone>>
<<goto "D6 Park">>
<</if>>
<<if $player.outfit isnot "jogging" or not $wardrobe.jogging>>
<<goto "D6 Park">>
<</if>>
<<set $day6.kellyParkDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily enters the park, eyes scanning the benches. She spots Kelly sitting alone beneath a tree, flipping through her phone.</p>
<p>She walks over and sits beside her.</p>
<p>
<e>Hey...</e>
</p>
<p>
<kelly>Hey, Em.</kelly>
</p>
<p>Kelly smiles faintly.</p>
<p>
<kelly>I was waiting for you. We need to talk.</kelly>
</p>
<p>
<e>What's up?</e>
</p>
<p>
<kelly>Soon we go further - no more waiting for Gwen's scraps. But first you need to understand what we're after.</kelly>
</p>
<p>Emily swallows hard.</p>
<p>
<e>And the treasure? You said you'd tell me more.</e>
</p>
<p>Kelly nods and leans back on the bench, staring up at the sky.</p>
<p>
<kelly>We found old scrolls... translations of legends passed down in secret. They tell the story of a queen... Enisia of the Prijak Dynasty. A ruler both feared and worshipped.</kelly>
</p>
<p>Emily listens, heart racing.</p>
<p>
<kelly>It's said Queen Enisia was chosen by the gods not for her strength in battle - but for her unrivaled devotion to pleasure. She ruled an isolated kingdom in the southern lands, and built a temple not of worship... but of surrender.</kelly>
</p>
<p>
<e>Surrender?</e>
</p>
<p>
<kelly>Mmhmm. Men and women traveled from across continents to serve her - offering their bodies to her temple's rituals. Enisia never allowed a lover to touch her directly unless they passed the Five Trials of Flesh - each one more degrading and ecstatic than the last.</kelly>
</p>
<p>
<e>What were the trials?</e>
</p>
<p>Kelly smirks.</p>
<p>
<kelly>No one knows all of them. But the fifth was said to take place under a moonless sky, where the chosen would kneel before Enisia, offer their last breath of restraint, and become one with her spirit... some say she absorbed them completely, others say they were gifted a part of her immortality.</kelly>
</p>
<p>
<e>So the treasure is... what? Her power?</e>
</p>
<p>
<kelly>Some say it's her crown. Others say it's a vial of her final breath, sealed in a vault that only opens for those who can match her legacy. That's why everything is so... sensual. The treasure doesn't want a thief. It wants a successor.</kelly>
</p>
<p>Emily stares at her hands, the forest riddle still in her head.</p>
<p>
<e>She walks untouched through every door...</e>
</p>
<p>
<kelly>...Yet knelt five times upon the floor.</kelly>
</p>
<p>Kelly echoes with a nod.</p>
<p>
<kelly>It's all real. And now you're part of it.</kelly>
</p>
<p>Emily takes a long breath, pulse quickening.</p>
<p>
<et>This isn't just about Mom anymore... it's about me too.</et>
</p>
<p>They talk a while longer. Then Kelly stands, squeezes Emily's shoulder, and leaves toward town.</p>
<<toast "Kelly: Enisia lore">>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]<<set $world.location to "Portugal - park">>
<<if $player.outfit isnot "jogging" or not $wardrobe.jogging>>
<<goto "D6 Park">>
<</if>>
<<if $day6.kellyParkQuest and not $day6.kellyParkDone>>
<<goto "D6 Park Kelly">>
<</if>>
/* If NTR Ryan is waiting, jogging starts that event instead */
<<if ($ntr or $ntr_david) and $day6.ryanParkReady and not $day6.ryanParkDone>>
<<goto "D6 Park Ryan">>
<</if>>
<<run setup.advanceTime(1)>>
<p>Feet on the track. Breath in rhythm. Sweat that feels earned. For a while there is no diary, no strange books - only the next step.</p>
<<toast "Jogged - Time passes">>
<<if $world.time is "Night">>
[[Uncle's house|D6 House Map]]
<<else>>
[[Park|D6 Park]]
[[Town map|D6 Town Map]]
<</if>><<set $day5.hornyParkDone to true>>
<<set $world.location to "Portugal - park">>
<p>The sun is lower, golden on the grass. Children laugh. The fountain splashes.</p>
<p>Near the trees, a man works out - tall, muscular, skin glistening. Her mind goes somewhere it should not.</p>
<img src="Images/1.2/12.gif">
<p>
<e>Whoa... who even looks like that in real life?</e>
</p>
<img src="Images/1.2/14.gif">
<p>
<e>Okay, no, stop. Focus! It's gotta be that forest drink...</e>
</p>
<p>She hurries down the path, eyes on the ground.</p>
[[Park|D6 Park]]
[[Town map|D6 Town Map]]
/* NTR: park with Ryan — requires jogging clothes owned + worn */<<set $world.location to "Portugal - park">>
<<if ndef $wardrobe>><<set $wardrobe to { casual : true, jogging : false }>><</if>>
<<if not $wardrobe.jogging or $player.outfit isnot "jogging">>
<<goto "D6 Park">>
<</if>>
<<if not (($ntr or $ntr_david) and $day6.ryanParkReady and not $day6.ryanParkDone)>>
<<goto "D6 Park Jog">>
<</if>>
<<set $day6.ryanParkDone to true>>
<<set $day6.parkVisit to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped into the park in her new jogging clothes, cool breeze on her skin. Soft gold on the track.</p>
<p>
<e>Feels nice... I needed this.</e>
</p>
<p>Just as she was about to start-</p>
<p>
<ryan>Didn't expect to see you here.</ryan>
</p>
<p>Emily turned. Ryan in a fitted t-shirt and joggers, faint smile.</p>
<p>
<e>Oh... Ryan? You come here too?</e>
</p>
<p>
<ryan>Yeah. Helps clear my head. You?</ryan>
</p>
<p>
<e>Same, I guess. Just needed a break.</e>
</p>
<p>
<ryan>Well... since we're both here, how about a run together?</ryan>
</p>
<p>
<e>Sure, why not?</e>
</p>
<p>They jog side by side. Footsteps. Small talk. Portugal life. She relaxes more than she expected.</p>
<img src="Images/2.3/18.gif">
<p>They slow near a bench.</p>
<p>
<ryan>Not bad... you kept up pretty well.</ryan>
</p>
<p>
<e>Hey, don't underestimate me.</e>
</p>
<p>Ryan chuckles, pulls out his phone.</p>
<p>
<ryan>We should do this again sometime. Give me your number?</ryan>
</p>
<p>
<e>Yeah... sure.</e>
</p>
<p>She recites the digits. He saves them, satisfied.</p>
<p>
<ryan>Cool. I'll text you. See you around, Emily.</ryan>
</p>
<p>She walks away. Ryan glances at his phone, smirk forming.</p>
<p>
<ryan>...This is going to be interesting.</ryan>
</p>
<<toast "NTR: Ryan has your number">>
<<link 'Elsewhere...' "D6 Ryan Jog Photo Anon">><</link>>
/* NTR: after jog - Ryan sends David photos of the run */<<set $day6.ryanJogPhoto to true>>
<<set $world.location to "David's room">>
<<run setup.Phone.refreshNotes()>>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere - Same day</div>
</div>
<p>David's phone buzzed. He glanced down. Same number. His stomach dropped before he even opened it.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">17:42</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">RYAN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
<span class="david-anon-tag">2 new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/19.gif" alt="Emily jogging with Ryan">
</div>
<div class="msg-ts">17:40 - Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Just became friends and already got her number... and now we're jogging together this afternoon</div>
<div class="msg-ts">17:41</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">She looks so fucking good in those tight leggings... her ass bouncing with every step. You should see how her tits jiggle when she runs.</div>
<div class="msg-ts">17:41</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Soon those perfect tits are gonna be wrapped around my cock while she's still sweaty from our jog. Bet you can't wait to hear how she moans my name.</div>
<div class="msg-ts">17:42</div>
</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/20.gif" alt="More from the jog">
</div>
<div class="msg-ts">17:42 - Photo</div>
</div>
</div>
</div>
<p>David stares until the screen dims. Emily is still out there, smiling about a normal run. She has no idea.</p>
</div>
[[Uncle's house|D6 House Map]]
[[Town map|D6 Town Map]]/* Legacy link - always route properly */
<<if not $day5.uncleOk>>
<<goto "D5 Outside Blocked">>
<<elseif $world.time is "Night" and $day5.forestDone>>
<<goto "D5 Outside Night">>
<<else>>
<<if not $day5.forestDone and $world.time is "Night">>
<<set $world.time to "Evening">>
<</if>>
<<goto "D5 Town Map">>
<</if>><<set $world.location to "Portugal - front door">>
<p>
<e>I should ask uncle first about going outside. He's probably in the living room.</e>
</p>
[[House map|D5 House Map]]<<set $world.location to "Portugal - front door">>
<<set $world.time to "Night">>
<p>Streetlights only. The town is quiet. Nothing good is open now - home is the only sensible door.</p>
[[House map|D5 House Map]]<<if not $day5.uncleOk>>
<<goto "D5 Outside Blocked">>
<</if>>
/* Night only after forest quest */
<<if $world.time is "Night" and $day5.forestDone>>
<<goto "D5 Outside Night">>
<<elseif $world.time is "Night" and not $day5.forestDone>>
<<set $world.time to "Evening">>
<</if>>
<<set $world.location to "Portugal - town">>
<<if $day5.napDone and not $day5.forestDone>>
<<set $world.time to "Evening">>
<<elseif $day5.napDone and $world.time isnot "Night">>
<<set $world.time to "Evening">>
<</if>>
<<= setup.locBannerHtml("town", "Town", $world.time + " - Portugal")>>
<p>Warm evening air. Golden buildings. Palm silhouettes. Cafe, park, mall - optional. The forest is not.</p>
<div class="loc-grid">
<span class="loc-locked"><span class="loc-name">College</span><span class="loc-sub">Closed for the night</span></span>
<<link '<span class="loc-card"><span class="loc-name">Cafe</span><span class="loc-sub">Still open?</span></span>' "D5 Cafe">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Walk / air</span></span>' "D5 Park">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Mall</span><span class="loc-sub">Shops</span></span>' "D5 Mall">><</link>>
<<if not $day5.forestDone>>
<<link '<span class="loc-card"><span class="loc-name">Forest edge</span><span class="loc-sub">Mom\'s diary trail</span></span>' "D5 Forest">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Forest edge</span><span class="loc-sub">Already visited</span></span>
<</if>>
/* Cannot return home until forest main quest is finished */
<<if $day5.forestDone>>
<<link '<span class="loc-card"><span class="loc-name">Uncle\'s house</span><span class="loc-sub">Go home</span></span>' "D5 House Map">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Uncle's house</span><span class="loc-sub">Finish forest first</span></span>
<</if>>
</div>/* Gate: cannot return to uncle's house until forest quest done */
<<if $day5.forestDone>>
<<goto "D5 House Map">>
<<else>>
<<goto "D5 Home Locked">>
<</if>><<set $world.location to "Portugal - town">>
<p>Emily turns toward uncle's street - then stops. Mom's page is still burning in her bag.</p>
<p>
<et>Not yet. The forest first. Then home.</et>
</p>
[[Town map|D5 Town Map]]
[[Forest edge|D5 Forest]]
/* -----------------------------------------------------------
DAY 6 - Town map
----------------------------------------------------------- */<<set $world.location to "Portugal - town">>
<<set $day6.girlsMuscleSeen to true>>
<<run setup.Phone.seedGirlsMuscleParty()>>
<p>Emily's phone buzzes again while she's out in town - the College Cumdump group chat lighting up all at once.</p>
<p><strong>Sarah:</strong> We are missing you so much Emily. We had a girls' night yesterday and it was too fun - we invited 2 muscular men over, and none of us made it home before sunrise.</p>
<p>A string of photos follows - the two guys and every girl in the group tangled together on someone's bed, round after round until sunrise, nobody bothering to pretend otherwise. They'd clearly had the two of them all night, and loved every minute of it.</p>
<p>
<et>Trust them to one-up themselves every single time.</et>
</p>
<<run setup.Phone.openChat("girls")>>
[[Continue|D6 Town Map]]<<set $day6.leftHome to true>>
<<set $world.location to "Portugal - town">>
<<if ndef $day6>><<set $day6 to {}>><</if>>
<<if ndef $day6.girlsMuscleWaitSleeps>><<set $day6.girlsMuscleWaitSleeps to 0>><</if>>
<<if ndef $day6.girlsMuscleReady>><<set $day6.girlsMuscleReady to false>><</if>>
<<if ndef $day6.girlsMuscleSeen>><<set $day6.girlsMuscleSeen to false>><</if>>
<<if $day6.girlsMuscleReady and not $day6.girlsMuscleSeen>>
<<goto "D6 Girls Muscle Party Event">>
<</if>>
<<if ndef $day6.bsd14Scored>><<set $day6.bsd14Scored to false>><</if>>
<<if ndef $day6.liamDateReady>><<set $day6.liamDateReady to false>><</if>>
<<if ndef $day6.liamDateDone>><<set $day6.liamDateDone to false>><</if>>
/* Allow town at Night when Liam evening date/practice is waiting */
<<if $world.time is "Night" and not ($day6.liamDateReady and not $day6.liamDateDone)>>
<<goto "D6 Outside Night">>
<</if>>
/* Auto-route Liam evening events from town */
<<if $day6.liamDateReady and not $day6.liamDateDone and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<if $day6.bsd14Scored>>
<<goto "D6 Liam Coffee Date">>
<<else>>
<<goto "D6 Liam Park Practice">>
<</if>>
<</if>>
<<= setup.locBannerHtml("town", "Town", $world.time + " - Portugal")>>
<p>Daylight on golden buildings. Campus in one direction. Coffee in another. Park and shops if she wants noise that is not lecture.</p>
<div class="loc-grid">
/* College: open Morning–Evening (night closed unless coffee date) */
<<if $day6.liamDateReady and not $day6.liamDateDone and $day6.bsd14Scored and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<link '<span class="loc-card"><span class="loc-name">College</span><span class="loc-sub">Coffee date with Liam</span></span>' "D6 Liam Coffee Date">><</link>>
<<elseif $world.time is "Night">>
<span class="loc-locked"><span class="loc-name">College</span><span class="loc-sub">Closed</span></span>
<<elseif $day6.principalGwenReady and not $day6.principalGwenDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">College</span><span class="loc-sub">Classroom — Gwen</span></span>' "D6 Classroom Gwen Day">><</link>>
<<elseif not $day6.metBookGirl>>
<<link '<span class="loc-card"><span class="loc-name">College</span><span class="loc-sub">Main - hallway</span></span>' "D6 College">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">College</span><span class="loc-sub">Campus</span></span>' "D6 College">><</link>>
<</if>>
<<if $world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon">>
<<link '<span class="loc-card"><span class="loc-name">Cafe</span><span class="loc-sub">Job / coffee</span></span>' "D6 Cafe">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Cafe</span><span class="loc-sub">Closed</span></span>
<</if>>
<<if $day6.liamDateReady and not $day6.liamDateDone and not $day6.bsd14Scored and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Practice with Liam</span></span>' "D6 Liam Park Practice">><</link>>
<<elseif $world.time isnot "Night">>
<<if ($ntr or $ntr_david) and $day6.ryanParkReady and not $day6.ryanParkDone>>
<<if $wardrobe.jogging and $player.outfit is "jogging">>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">NTR - Jog with Ryan</span></span>' "D6 Park">><</link>>
<<elseif not $wardrobe.jogging>>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Need jogging clothes</span></span>' "D6 Park">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Wear jogging first</span></span>' "D6 Park">><</link>>
<</if>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Park</span><span class="loc-sub">Walk</span></span>' "D6 Park">><</link>>
<</if>>
<<else>>
<span class="loc-locked"><span class="loc-name">Park</span><span class="loc-sub">Too late</span></span>
<</if>>
<<if $world.time isnot "Night">>
<<link '<span class="loc-card"><span class="loc-name">Mall</span><span class="loc-sub">Shops</span></span>' "D6 Mall">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Mall</span><span class="loc-sub">Closed</span></span>
<</if>>
/* Mix Iron gym — unlocked after meeting Leah in the park */
<<if $day6.gymUnlocked>>
<<if $world.time isnot "Night">>
<<link '<span class="loc-card"><span class="loc-name">Mix Iron</span><span class="loc-sub">Gym - Leah</span></span>' "D6 Gym">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Mix Iron</span><span class="loc-sub">Closed</span></span>
<</if>>
<</if>>
/* Albert route: Ekon job agency / warehouse minigame */
<<if $day6.ekonAgencyUnlocked and not $day6.ekonMet and ($world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon")>>
<<link '<span class="loc-card"><span class="loc-name">Job agency</span><span class="loc-sub">Mr. Ekon</span></span>' "D6 Ekon Agency">><</link>>
<<elseif $day6.ekonWarehouseTalkDone and ($world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon")>>
<<link '<span class="loc-card"><span class="loc-name">Ekon warehouse</span><span class="loc-sub">Helping Ekon</span></span>' "D6 Ekon Warehouse">><</link>>
<<elseif $day6.ekonWarehouseTalkDone>>
<span class="loc-locked"><span class="loc-name">Ekon warehouse</span><span class="loc-sub">Closed now</span></span>
<<elseif ($day6.ekonWarehouse or $day6.ekonMet) and ($world.time is "Morning" or $world.time is "Noon" or $world.time is "Afternoon")>>
<<if $day6.ekonShiftActive>>
<<link '<span class="loc-card"><span class="loc-name">Ekon warehouse</span><span class="loc-sub">Shift in progress</span></span>' "D6 Ekon Shift Next">><</link>>
<<elseif $day6.ekonShiftToday>>
<span class="loc-locked"><span class="loc-name">Ekon warehouse</span><span class="loc-sub">Shift done · +10 XP/day</span></span>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Ekon warehouse</span><span class="loc-sub">Delivery · Lv <<= ($ekonJob && $ekonJob.level) || 1>></span></span>' "D6 Ekon Warehouse">><</link>>
<</if>>
<<elseif $day6.ekonWarehouse or $day6.ekonMet>>
<span class="loc-locked"><span class="loc-name">Ekon warehouse</span><span class="loc-sub">Closed now</span></span>
<</if>>
/* Virgin path: Gwen house evening after washroom invite */
<<if $day6.gwenHouseInvited and not $day6.gwenHouseDone and $day6.gwenVirginPath>>
<<if $world.time is "Evening" or $world.time is "Night">>
<<link '<span class="loc-card"><span class="loc-name">Gwen\'s house</span><span class="loc-sub">Evening</span></span>' "D6 Gwen House">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Gwen\'s house</span><span class="loc-sub">Come evening</span></span>
<</if>>
<</if>>
/* After alley: Kelly house (wait 1 sleep then visit) */
<<if $day6.kellyTalkReady and not $day6.kellyTalkDone>>
<<link '<span class="loc-card"><span class="loc-name">Kelly\'s house</span><span class="loc-sub">Tell her everything</span></span>' "D6 Kelly House Talk">><</link>>
<<elseif $day6.alleyEventDone and not $day6.kellyTalkDone>>
<span class="loc-locked"><span class="loc-name">Kelly\'s house</span><span class="loc-sub">Tomorrow</span></span>
/* After 2-day wait: Kelly call → Evan meeting */
<<elseif $day6.kellyCallReady and not $day6.kellyEvanDone>>
<<link '<span class="loc-card"><span class="loc-name">Kelly\'s house</span><span class="loc-sub">She called</span></span>' "D6 Kelly Call">><</link>>
<<elseif $day6.kellyDiaryReady and not $day6.kellyDiaryDone>>
<<link '<span class="loc-card"><span class="loc-name">Kelly\'s house</span><span class="loc-sub">She called</span></span>' "D6 Kelly Diary Call">><</link>>
<</if>>
/* Forest main quests */
<<if $day6.kellyForestMsgSeen and not $day6.pondVisionDone>>
<<link '<span class="loc-card"><span class="loc-name">Forest</span><span class="loc-sub">Kelly · next gate</span></span>' "D6 Forest Pond Meet">><</link>>
<<elseif $day6.secondGateReady and not $day6.secondGateDone>>
<<link '<span class="loc-card"><span class="loc-name">Forest</span><span class="loc-sub">Kelly · 2nd gate</span></span>' "D6 Second Gate Meet">><</link>>
<<elseif $day6.forestGateReady and not $day6.forestGateDone>>
<<if $day6.gwenVirginPath and not $day6.gwenHouseDone>>
<span class="loc-locked"><span class="loc-name">Forest</span><span class="loc-sub">Gwen's house first</span></span>
<<elseif $world.time is "Evening" or $world.time is "Night">>
<<link '<span class="loc-card"><span class="loc-name">Forest</span><span class="loc-sub">Main quest</span></span>' "D6 Forest Gate">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Forest</span><span class="loc-sub">Come in the evening</span></span>
<</if>>
<<elseif $day6.gwenWashroom and not $day6.forestGateReady>>
<span class="loc-locked"><span class="loc-name">Forest</span><span class="loc-sub">Not yet</span></span>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Forest</span><span class="loc-sub">Edge</span></span>' "D6 Forest Quiet">><</link>>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Uncle\'s house</span><span class="loc-sub">Go home</span></span>' "D6 House Map">><</link>>
</div><<set $world.time to "Night">>
<<set $world.location to "Portugal - town">>
<<set $day6.homeEve to true>>
<p>Night. Streetlights. Home is the only door that still makes sense.</p>
[[Uncle's house|D6 House Map]]
/* ═══════════════════════════════════════════════════════════
Kelly house after alley (original KD10 / ND10)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - Kelly's house">>
<<set $day6.kellyTalkDone to true>>
<<set $day6.kellyTalkReady to false>>
<<set $day6.hasVial to true>>
<<set $day6.vialTestReady to false>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<<= setup.locBannerHtml("kelly_house", "Kelly's House", $world.time)>>
<p>Kelly's house had always felt cozy and safe - a contrast to the cold tension still clinging to Emily after that alley encounter.</p>
<img src="Images/1.5/9.jpg">
<p>Emily rang the bell with urgency, and within seconds, Kelly opened the door.</p>
<p>
<kelly>Em? You look like you've seen a ghost.</kelly>
</p>
<p>Emily pushed inside without a word and sat down heavily on the couch, still trying to catch her breath.</p>
<p>
<e>Someone followed me. From college.</e>
</p>
<p>Kelly's expression turned serious as she sat beside her.</p>
<p>
<kelly>What? Who?</kelly>
</p>
<p>Emily pulled the crumpled note from her pocket and handed it over. Kelly took it and read silently:</p>
<p><em>"Only message if it's urgent. They're watching."</em></p>
<p>
<kelly>This... this is insane. What did he say to you?</kelly>
</p>
<p>
<e>He said I shouldn't have asked about the Prijak Dynasty. That "they" are watching. And... he said he knows me.</e>
</p>
<p>Kelly's eyes widened.</p>
<p>
<kelly>Wait - he knows you? What did he look like?</kelly>
</p>
<p>
<e>Shady. Covered up. Nervous. But serious.</e>
</p>
<p>A heavy silence filled the room.</p>
<p>Kelly set the note down gently.</p>
<p>
<kelly>Emily, I think... we need to talk. About the forest. About the gate. And why that... thing happened.</kelly>
</p>
<p>Emily blinked at her, confused.</p>
<p>
<e>You know something?</e>
</p>
<p>Kelly nodded slowly, her face turning pale.</p>
<p>
<kelly>Yeah. I didn't tell you everything. But I will. Right now.</kelly>
</p>
[[Next|D6 Kelly Sample Talk]]<<set $world.location to "Portugal - Kelly's house">>
<p>Kelly took a deep breath and stood up, walking over to her desk where a sealed glass vial sat inside a small metal box. She picked it up and returned to Emily, holding it like it was a fragile secret.</p>
<p>
<kelly>You remember what happened near that gate, right?</kelly>
</p>
<p>Emily nodded slowly, blushing faintly as the memory flickered back.</p>
<p>
<e>Yeah... it felt like something possessed us. Like being... controlled.</e>
</p>
<p>
<kelly>Exactly. I went back there. I collected some of the... substance. It was on the ground near that pot outside the door. Sticky, thick. I thought it was just normal stuff, but...</kelly>
</p>
<p>She tapped the vial.</p>
<p>
<kelly>It's not human.</kelly>
</p>
<p>Emily looked at her, confused.</p>
<p>
<e>Not human? What do you mean?</e>
</p>
<p>
<kelly>I ran some tests in the lab. It reacts violently with human cells. Not in a harmful way... but in a pleasure-inducing way. That's why we lost control. That liquid is some sort of biological aphrodisiac - possibly from another species.</kelly>
</p>
<p>
<e>...From inside the cave?</e>
</p>
<p>
<kelly>I think so. And remember that pot? It wasn't decorative. It was like a container. Meant to release that stuff. I think it's guarding the door somehow... maybe testing us.</kelly>
</p>
<p>Emily stared at the vial, disturbed but fascinated.</p>
<p>
<e>So what do we do now?</e>
</p>
<p>Kelly smiled slightly, her expression mixed with excitement and dread.</p>
<p>
<kelly>I want to run a few more tests. I've already collected more of this... fluid. Then I say we go back. Open the next door.</kelly>
</p>
<p>
<e>Back into the cave?</e>
</p>
<p>
<kelly>Yes. Whatever's inside - whoever built that place - they're still affecting us. And I want to know why.</kelly>
</p>
<p>Emily hesitated, then slowly nodded.</p>
[[Next|D6 Kelly Sample Talk 2]]<<set $world.location to "Portugal - Kelly's house">>
<<run setup.Phone.refreshNotes()>>
<p>Emily glanced again at the glowing vial in Kelly's hand, biting her lip in thought.</p>
<p>
<e>Hey... um, can I maybe... borrow a little of that stuff?</e>
</p>
<p>Kelly raised an eyebrow, smirking instantly.</p>
<p>
<kelly>Wow. You want to get all freaky by yourself again?</kelly>
</p>
<p>She gave a playful nudge to Emily's shoulder.</p>
<p>
<e>No! Not on me, idiot. On a boy.</e>
</p>
<p>Kelly blinked in surprise, then grinned wickedly.</p>
<p>
<kelly>Ohhh... now this just got interesting. Who's the lucky guy?</kelly>
</p>
<p>Emily looked away for a second before answering, her voice soft.</p>
<p>
<e>He's in our college. Plays basketball. I've seen him a few times...</e>
</p>
<p>She trailed off, cheeks burning.</p>
<p>
<kelly>So that's what this is about! You're trying to trap your crush with alien cum juice?</kelly>
</p>
<p>
<e>It's not like that! I just... I wanna see what it does to him. For science. I mean, kinda.</e>
</p>
<p>
<kelly>Yeah yeah, for science...</kelly>
</p>
<p>She tossed the vial gently into Emily's hands.</p>
<p>
<kelly>Just don't overdose him, love doctor. A drop in a drink is enough.</kelly>
</p>
<p>Emily nodded, tucking it carefully into her bag, her heart beating fast.</p>
<p>
<e>Thanks, Kelly. I'll... let you know how the experiment goes.</e>
</p>
<<set $day6.hasVial to true>>
<<toast "Sample secured">>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
/* ═══════════════════════════════════════════════════════════
Main: Kelly call + Evan / Daisy (original LD211 → KDS11 → NDS311)
Unlocks after spill trio + 2 sleeps (independent of Jack)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - street">>
<<if $day6.kellyEvanDone>>
<<goto "D6 House Map">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily is halfway through her morning when her phone suddenly buzzes hard in her pocket.</p>
<img src="Images/1.5/phone.gif">
<p>Kelly's name flashes on the screen. She answers quickly.</p>
<p>Before she can even say hello, Kelly's urgent voice comes through.</p>
<p>
<kelly>Emily, you need to come to my place right now. I have something to tell you. It's important.</kelly>
</p>
<p>Emily blinks.</p>
<p>
<et>Right now...? What could be so urgent?</et>
</p>
<p>
<e>What's going on?</e>
</p>
<p>
<kelly>I'll explain when you get here. Just... hurry, okay?</kelly>
</p>
<p>The line goes dead.</p>
<p>Emily stares at her phone for a moment, the unease in Kelly's tone stirring something in her gut. She exhales sharply, slips the phone back into her pocket, and heads for Kelly's street.</p>
[[Kelly's house|D6 Kelly Evan Meet]]<<set $world.location to "Portugal - Kelly's house">>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped up to Kelly's door and rang the bell. It swung open almost immediately, Kelly's face appearing - a little flushed, eyes flicking behind her as if she was in the middle of something.</p>
<p>
<kelly>You made it. Come in, quick.</kelly>
</p>
<p>Emily slipped inside, the faint smell of coffee and something warm lingering in the air. As she walked into the living room, she stopped short.</p>
<p>A young man - mid-twenties, sharp eyes, a confident posture - was sitting on the couch. He looked up from his mug, studying her with quiet interest.</p>
<p>
<kelly>Emily, this is Evan.</kelly>
</p>
<p>Evan stood and extended his hand. Emily hesitated for a second before shaking it.</p>
<p>
<kelly>He has something to tell you.</kelly>
</p>
<p>
<evan>It's about... Daisy.</evan>
</p>
<p>Emily's pulse jumped.</p>
<p>
<et>My mother...?</et>
</p>
<p>
<e>What about her?</e>
</p>
<p>
<evan>I know you're here looking for the treasure... but what you might not know is that your mother came here exactly twenty-two years ago.</evan>
</p>
<p>Emily frowned.</p>
<p>
<e>That's impossible. I'm only twenty-one. She died giving birth to me.</e>
</p>
<p>Evan shook his head slowly.</p>
<p>
<evan>Then someone lied to you. My records show she was here a full year before you were born. And... she was closer to finding the treasure than anyone else has ever been.</evan>
</p>
<p>Emily's breath caught. She had read about Daisy's adventures in the diary, but there had been no mention of this.</p>
<p>
<e>Closer? What do you mean?</e>
</p>
<p>
<evan>I mean she found something - a clue, maybe even a part of the treasure itself. But she disappeared before anyone could learn the truth.</evan>
</p>
<p>Emily's mind raced, the diary entries flashing in her memory.</p>
<p>
<et>If that's true... then there's more to my mother's story than she ever wrote down.</et>
</p>
[[Next|D6 Kelly Evan Lore]]<<set $world.location to "Portugal - Kelly's house">>
<<set $day6.kellyEvanDone to true>>
<<set $day6.kellyCallReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily narrowed her eyes slightly.</p>
<p>
<e>How do you even know all this?</e>
</p>
<p>Evan leaned back, setting his mug down on the coffee table.</p>
<p>
<evan>Because I used to work for Jayden. I found all of this in his personal records.</evan>
</p>
<p>Emily's stomach tightened at the name.</p>
<p>
<et>Jayden...?</et>
</p>
<p>She straightened in her seat.</p>
<p>
<e>Wait... Jayden? That's the guy who came to my college as a guest. And—</e>
</p>
<p>Her mind flashed to the shadowy figure in the alley, the warning whispered in her ear - stay away from him.</p>
<p>
<e>Someone warned me about him too.</e>
</p>
<p>Evan nodded slowly, reading her expression.</p>
<p>
<evan>Then you understand why this matters.</evan>
</p>
<p>Emily swallowed, her voice quieter now.</p>
<p>
<e>Then... where is my mother?</e>
</p>
<p>Evan's gaze dropped for a moment before meeting hers again.</p>
<p>
<evan>According to Jayden's files... she died while trying to find the treasure. No one ever found her body. Jayden... he's still searching for it.</evan>
</p>
<p>Emily's fingers curled tightly in her lap, her thoughts racing.</p>
<p>
<e>And you? Why aren't you with him anymore?</e>
</p>
<p>Evan's jaw tightened.</p>
<p>
<evan>Because I realized he isn't looking for the treasure to preserve it or protect its history... he wants it for himself. And he's willing to let anyone - or everyone - die in the process. I saw what happened to the last person who got too close, and I wasn't going to end up the same way.</evan>
</p>
<p>Emily felt a chill run down her spine.</p>
<p>
<et>So... Jayden knew my mother. He might even know exactly what happened to her...</et>
</p>
<p>Kelly rested a hand on Emily's shoulder.</p>
<p>
<kelly>We'll figure this out together. Go home. Process. I'll stay in touch with Evan.</kelly>
</p>
<<toast "Main: Daisy / Jayden truth">>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
/* ═══════════════════════════════════════════════════════════
Main: Kelly diary / pond talk (original LD214 → Daisy's memory → ED34 → HD1324)
Unlocks after Albert-route unlock + 3 sleeps (independent of Jack/NTR/etc.)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - uncle's house">>
<<if $day6.kellyDiaryDone>>
<<goto "D6 House Map">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily's phone buzzes hard in her pocket.</p>
<img src="Images/1.5/phone.gif">
<p>Kelly's name flashes on the screen. She answers quickly.</p>
<p>
<kelly>Emily, you need to come to my place right now. I have something to tell you. It's important.</kelly>
</p>
<p>Emily blinks.</p>
<p>
<et>Right now...? What could be so urgent?</et>
</p>
<p>
<e>What's going on?</e>
</p>
<p>
<kelly>I'll explain when you get here. Just... hurry, okay?</kelly>
</p>
<p>The line goes dead.</p>
<p>Emily stares at her phone for a moment, the unease in Kelly's tone stirring something in her gut. She exhales sharply, slips the phone back into her pocket, and heads for Kelly's street.</p>
[[Kelly's house|D6 Kelly Diary Meet]]<<set $world.location to "Portugal - Kelly's house">>
<<run setup.Phone.refreshNotes()>>
<p>Once inside, the familiar comfort of Kelly's room wrapped around her. Emily dropped onto the bed while Kelly sat across from her, her expression more serious than usual.</p>
<p>For a moment, neither of them spoke.</p>
<p>Then Emily broke the silence.</p>
<p>
<e>I keep thinking about the pond. The way it felt... unreal. Like it wasn't supposed to exist.</e>
</p>
<p>Kelly nodded slowly.</p>
<p>
<kelly>You're not imagining it. I've been researching ever since that night.</kelly>
</p>
<p>Emily sat up a little.</p>
<p>
<e>Researching... how?</e>
</p>
<p>Kelly reached into her drawer and pulled out an old notebook - worn, familiar.</p>
<p>
<kelly>Your mom's diary. I remembered you telling me about it... so I looked into the pages you showed me before.</kelly>
</p>
<p>Emily's breath caught.</p>
<p>
<e>She wrote about the pond?</e>
</p>
<p>Kelly nodded.</p>
<p>
<kelly>Yes. Not directly at first... but there's an entry.</kelly>
</p>
<p>She flipped a few pages, stopping carefully.</p>
<p>
<kelly>She mentioned a magical pond. The same illusions. The same feeling of reality bending.</kelly>
</p>
<p>Emily stared at the diary, her pulse quickening.</p>
<p>
<e>What happened to her there? Tell me... what happened with her?</e>
</p>
[[Next|D6 Daisy Memory]]<<set $world.location to "Portugal - Kelly's house">>
<<run setup.Phone.refreshNotes()>>
<p>The penthouse throbbed with filthy bass, sweat-slick bodies grinding under strobing lights, champagne dripping from bare breasts and open mouths.</p>
<p>Daisy leaned against the bar, black dress molded to her like liquid sin, nipples already stiff against the thin fabric. Every stare in the room felt like a tongue dragging across her skin.</p>
<p>Then the host emerged from the crowd, shirt unbuttoned, eyes predatory.</p>
<p>
<npc>Host:</npc> I've been waiting for you, Daisy. All fucking night.
</p>
<p>His hands were on her instantly - fingers hooking under the straps, yanking the dress down in one savage pull. Cool air hit her bare breasts; her nipples tightened to aching points as the fabric slithered over her hips and collapsed at her heels.</p>
<img src="Images/1.7/11.gif">
[[Next|D6 Daisy Memory 2]]<<set $world.location to "Portugal - Kelly's house">>
<p>The room hushed, then exploded - whistles, low moans, phones raised to capture every second.</p>
<p>Daisy stood in nothing but soaked lace panties and heels, thighs already trembling.</p>
<p>
<daisy>Then take what you waited for.</daisy>
</p>
<p>She breathed, voice dripping need.</p>
<p>He stepped back, raking his gaze over her, then gave a single sharp nod.</p>
<p>Men swarmed - seven of them - belts clinking, zippers rasping. Thick cocks sprang free, heavy and veined, tips glistening with pre-cum in the low light.</p>
<p>Daisy dropped to her knees, mouth watering. She took the first deep, lips stretching wide, tongue flattening against the underside as he thrust into her throat. Salty heat flooded her mouth; she moaned around him, eyes watering.</p>
<img src="Images/1.7/12.gif">
<p>
<daisy>Fuck my face...</daisy>
</p>
<p>One after another she devoured them - sucking hard, cheeks hollowing, drool spilling down her chin onto her heaving breasts. Hands fisted her hair, guiding her rhythm, using her mouth like a toy.</p>
<img src="Images/1.7/13.gif">
[[Next|D6 Daisy Memory Rope]]<<set $world.location to "Portugal - Kelly's house">>
<p>A dark chuckle sounded behind her.</p>
<p>
<npc>Host:</npc> Let's tie the pretty slut up.
</p>
<p>Soft black rope bit into her skin. Wrists wrenched behind her back, elbows cinched tight until her tits jutted obscenely forward. Ankles bound, knees forced wide - her dripping pussy exposed to the hungry crowd. A final loop settled around her throat, a silken noose that made every breath a reminder of surrender.</p>
<p>Daisy writhed in the ropes, cunt clenching on nothing, slick trailing down her inner thighs. The host knelt, ripped her panties apart with a single tear, and buried himself balls-deep in one brutal thrust.</p>
<img src="Images/1.7/14.gif">
<p>
<daisy>Oh god - yes - harder -</daisy>
</p>
<p>He fucked her mercilessly, hips slamming, cock dragging over every sensitive spot inside her. Her bound body rocked with each impact, breasts bouncing, ropes creaking.</p>
<p>They took turns after that - relentless.</p>
<img src="Images/1.7/15.gif">
<p>One pounding her soaked cunt while another forced his cock between her lips, gagging her on his length. Another slapped her ass until it burned crimson, then spread her cheeks and drove into her tight hole.</p>
<p>She came screaming, again and again - shuddering, squirting around the cocks inside her, vision blurring with raw pleasure.</p>
<p>Then they lifted her like a doll.</p>
[[Next|D6 Daisy Memory Climax]]<<set $world.location to "Portugal - Kelly's house">>
<p>One lay beneath her, impaling her pussy. Another pressed against her ass, pushing past the tight ring until she was stuffed impossibly full - two thick cocks grinding deep, separated only by a thin wall of flesh.</p>
<p>A third shoved into her mouth, muffling her cries.</p>
<img src="Images/1.7/16.gif">
<p>
<daisy>More - fill me - use me -</daisy>
</p>
<p>Hands everywhere - bruising her hips, twisting her nipples, holding her bound body steady as they rutted into her in perfect, filthy unison.</p>
<p>Her final orgasm hit like a storm - body convulsing, holes spasming around them, milking every inch. They broke with her. Hot, thick ropes of cum erupted inside her - one flooding her womb, another painting her ass, a third pumping down her throat until she swallowed greedily, excess spilling from her swollen lips.</p>
<img src="Images/1.7/17.jpg">
<p>Spurt after spurt until she overflowed - cum leaking from her stretched pussy and ass in slow, obscene rivulets down her bound thighs.</p>
<img src="Images/1.7/18.gif">
<p>When they finally pulled free, Daisy stayed on her knees - ropes biting, body trembling, every hole dripping with their seed. The room thundered with applause and filthy cheers.</p>
<p>The host crouched, thumb smearing cum across her bottom lip, then pushing it into her mouth. She sucked it clean, eyes glazed.</p>
<p>
<npc>Host:</npc> Worth the wait, little whore?
</p>
<p>Daisy smiled slow and wicked, voice raw.</p>
<p>
<daisy>Every. Filthy. Second.</daisy>
</p>
[[End of memory|D6 Kelly Diary Reveal]]<<set $world.location to "Portugal - Kelly's house">>
<<run setup.Phone.refreshNotes()>>
<p>Kelly continued, her voice steady but low, as if the walls themselves were listening.</p>
<p>
<kelly>Your mom didn't stop after that first encounter. She went back the next day.</kelly>
</p>
<p>Emily leaned forward, completely focused.</p>
<p>
<kelly>That's when she discovered something important. The diary says there was a way to block the illusions... a pair of magical glasses.</kelly>
</p>
<p>Emily frowned slightly.</p>
<p>
<e>Glasses?</e>
</p>
<p>Kelly nodded.</p>
<p>
<kelly>Yeah. When worn, they prevent the mind from being affected. No visions. No tricks. With them, she was able to explore deeper into the cave... safely.</kelly>
</p>
<p>Emily swallowed.</p>
<p>
<e>So we just need those glasses. Where do we get them?</e>
</p>
<p>Kelly hesitated, then shook her head slowly.</p>
<p>
<kelly>That's the problem. The diary doesn't say. No material, no location - it just mentions the glasses exist and then stops, like whoever wrote it got interrupted.</kelly>
</p>
<p>Emily's shoulders sagged.</p>
<p>
<e>So we've got nothing.</e>
</p>
<p>
<kelly>Not nothing. We just have to actually work for it. I'll dig around online tonight, see what I can find. And you - I remember someone mentioning the college library has some old book on this stuff. Alchemy, old stones, that kind of thing. Worth checking.</kelly>
</p>
<p>
<e>You want us to split up and research this like it's a school project.</e>
</p>
<p>
<kelly>Kind of exactly like that, yeah. Two heads, twice the chance we find something useful.</kelly>
</p>
<p>Emily let out a slow breath, the weight of it all settling in.</p>
<p>
<e>Alright. I'll see what the library's got.</e>
</p>
<p>Kelly nodded, a mix of worry and excitement in her eyes.</p>
<<set $day6.libraryUnlocked to true>>
<<run setup.Phone.refreshNotes()>>
<p>Later that evening, Emily stepped out into the night and headed for home, her thoughts racing - about the cave, the illusions, her mother... and what the library might turn up.</p>
[[Home|D6 Kelly Diary Walk Home]]<<set $world.location to "Portugal - uncle's house">>
<<run setup.Phone.refreshNotes()>>
<p>Emily trudged through the front door, the weight of the day clinging to her like damp clothes. The house was quiet, dimly lit by the hallway light Albert always left on. No sign of him - probably still out. She kicked off her shoes, sighing deeply.</p>
<p>
<e>Finally. Just need sleep.</e>
</p>
<p>She muttered to herself.</p>
<p>Exhaustion pulled at her limbs as she climbed the stairs, heading straight for her room. Bed. Blankets. Oblivion. That was the plan.</p>
<p>But as she passed Jack's door, a soft sound stopped her - a low, rhythmic moan drifting through the crack. Then another, breathier. A woman's voice.</p>
<p>Emily froze, hand hovering over her own doorknob.</p>
<p>Curiosity tugged at her, sharp and unwelcome. She knew she should keep walking. She really should. Instead, she stepped closer, silent on the carpet, and pressed her eye to the narrow gap in Jack's door.</p>
<p>The room was bathed in the warm glow of his bedside lamp. Jack lay sprawled on his back, shirtless, head tipped back against the pillows, eyes half-lidded with pleasure. A girl Emily didn't recognize - long dark hair, full breasts bouncing with each movement - straddled him, riding him slow and deep.</p>
<p>The girl's hands braced on his chest as she rolled her hips, taking him fully inside her again and again. Her head fell back, lips parted, soft gasps spilling out each time she ground down.</p>
<img src="Images/1.7/19.gif">
<p>
<npc>Girl:</npc> God, you feel so good...
</p>
<p>She whispered, voice husky. Jack's hands gripped her thighs, guiding her rhythm, a low groan escaping him as she clenched around him.</p>
<p>
<et>That's the second one this week.</et>
</p>
<p>A strange mix of irritation and something warmer flickered in Emily's chest. She watched for another moment - the way the girl's back arched, the flex of Jack's abs as he thrust up to meet her, the slick sounds of their bodies moving together.</p>
<p>Heat crept up Emily's neck, uninvited. She pulled away abruptly, cheeks burning.</p>
<p>
<et>Not my business. He can do whatever - whoever - he wants.</et>
</p>
<p>Quietly, she turned the handle to her own room, slipped inside, and closed the door with a soft click.</p>
<p>She didn't bother turning on the light. Just peeled off her clothes, crawled under the cool sheets, and buried her face in the pillow.</p>
<p>The faint sounds from down the hall followed her into the dark - rhythmic creaks, muffled moans - but she squeezed her eyes shut and forced her breathing to slow.</p>
<p>
<et>Sleep. Just sleep.</et>
</p>
<p>And eventually, she did.</p>
<<set $day6.kellyDiaryDone to true>>
<<toast "Mom's story — research the glasses">>
[[Room|D6 Room]]
[[House map|D6 House Map]]<<set $world.location to "Portugal - uncle's house">>
/* Stay Evening until forest quest done - no Night early */
<<if $day5.napDone and not $day5.forestDone>>
<<set $world.time to "Evening">>
<<elseif $day5.napDone and $day5.forestDone and $world.time isnot "Night">>
<<set $world.time to "Evening">>
<</if>>
<<= setup.locBannerHtml("house", "Uncle's House", $world.time + " - Portugal")>>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Emily\'s Room</span><span class="loc-sub">Upstairs</span></span>' "D5 Room">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Jack\'s Room</span><span class="loc-sub">Upstairs</span></span>' "D5 Jack Room">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Living Room</span><span class="loc-sub">Main floor</span></span>' "D5 Living">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Main floor</span></span>' "D5 Kitchen">><</link>>
<<link '<span class="loc-card"><span class="loc-name">Bathroom</span><span class="loc-sub">Upstairs</span></span>' "D5 Bathroom">><</link>>
<<if $world.time is "Night">>
<span class="loc-locked"><span class="loc-name">Outside</span><span class="loc-sub">Too late</span></span>
<<elseif $day5.uncleOk>>
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town map</span></span>' "D5 Town Map">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Outside</span><span class="loc-sub">Ask uncle first</span></span>
<</if>>
</div>
/* '' EMILY'S ROOM (location) '''''''''''''''''''''''''''''' */<<set $world.location to "Portugal - Emily's room">>
<<= setup.locBannerHtml("emily_room", "Emily's Room", $world.time)>>
<<if $day5.dayDone>>
<p>Morning light will come when she lets it. She already closed this day once.</p>
[[...|Day 6 Morning]]
<<else>>
<p>Small bed. Soft lamp. Bag half-open on the chair. Through the window: warm Portugal air and a street she is still learning.</p>
<<if $day5.forestDone>>
<p>
<et>The forest is done. Sleep is earned. Tomorrow is another country entirely.</et>
</p>
[[Go to bed|D5 Sleep]]
<<else>>
<p>
<et>Mom's trail first. I can't crawl into bed while that page is still open.</et>
</p>
<span class="loc-locked"><span class="loc-name">Go to bed</span><span class="loc-sub">Forest quest incomplete</span></span>
<</if>>
[[House map|D5 House Map]]
<</if>>
/* '' JACK'S ROOM (location) ''''''''''''''''''''''''''''''' */<<set $world.location to "Portugal - Jack's room">>
<<= setup.locBannerHtml("jack_room", "Jack's Room", $world.time)>>
<p>Jack's door is half open. The room smells faintly of cheap cologne and laundry that never quite finished drying.</p>
<p>Bed unmade. A gaming headset on the chair. A closed laptop. No Jack - only the echo of someone who lives here and is somewhere else right now.</p>
<p>
<et>Empty. Good. I wasn't looking for a conversation.</et>
</p>
[[House map|D5 House Map]]
/* '' LIVING ROOM (location) ''''''''''''''''''''''''''''''' */<<set $world.location to "Portugal - living room">>
<<= setup.locBannerHtml("living", "Living Room", $world.time)>>
<<if not $day5.uncleOk>>
<p>Emily steps into the living room. Her uncle sips tea, phone in hand. He looks up as she enters.</p>
<img src="Images/Day 5/8.jpg">
<p>
<uncle>Going out somewhere?</uncle>
</p>
<p>
<e>Yeah... just thought I'd explore a bit. Get a feel for the place.</e>
</p>
<p>
<uncle>Good idea. But you should take Jack - he knows the area. Safer that way.</uncle>
</p>
<p>Emily nods politely. Inside she hesitates. Jack means questions. Jack means no quiet diary trail.</p>
<<set $day5.uncleOk to true>>
<<run setup.Phone.refreshNotes()>>
<<link 'Go alone (town map)' "D5 Town Map">><</link>>
[[House map|D5 House Map]]
<<elseif $day5.drank and $day5.forestDone and not $flags.d5_mag>>
<p>A porn magazine lies on the side table - the same glossy shame from Jack's car, or its twin. Heat crawls up her neck. The forest drink still hums under her skin.</p>
<img src="Images/Day 5/porn magazine.jpg">
[[Look closer...|D5 Living Mag Look]]
[[House map|D5 House Map]]
<<elseif $day5.drank and $day5.forestDone and $flags.d5_mag>>
<p>Empty living room again. The magazine is still there. She already looked. Enough.</p>
[[House map|D5 House Map]]
<<else>>
<p>Tea cup abandoned. TV dark. Evening settles into the corners. Uncle is not holding court right now.</p>
<<if $world.time isnot "Night">>
[[Town map|D5 Town Map]]
<</if>>
[[House map|D5 House Map]]
<</if>><<set $world.location to "Portugal - living room">>
<<set $flags.d5_mag to true>>
<img src="Images/Day 5/9.gif">
<p>
<et>What is wrong with me...</et>
</p>
[[Living room|D5 Living]]
[[House map|D5 House Map]]
/* '' KITCHEN (location) — never auto-sleep ''''''''''''''''' */<<set $world.location to "Portugal - kitchen">>
<<= setup.locBannerHtml("kitchen", "Kitchen", $world.time)>>
<<if $day5.kitchenDone>>
<p>The kitchen is quiet. Plates stacked by the sink. Leftover spice in the air. Dinner already happened.</p>
[[House map|D5 House Map]]
<<else>>
<p>Warm tile. A pot on the stove cooling down. Fridge hum. The table is set for a family meal that is waiting - not dragging her into it.</p>
<p>
<et>I can eat when I want. Or just leave.</et>
</p>
<<if $day5.napDone>>
[[Have dinner with family|D5 Kitchen Dinner]]
<</if>>
[[House map|D5 House Map]]
<</if>>
/* Dinner is an optional event - player must choose it from Kitchen */<<if $day5.kitchenDone>>
<<goto "D5 Kitchen">>
<</if>>
<<set $day5.kitchenDone to true>>
<<set $world.location to "Portugal - kitchen">>
<<run setup.Phone.refreshNotes()>>
<<if $day5.drank and $day5.bathPeek>>
<<goto "D5 Kitchen Dinner Vision Both">>
<<elseif $day5.drank>>
<<goto "D5 Kitchen Dinner Vision Uncle">>
<<else>>
<<goto "D5 Kitchen Dinner Normal">>
<</if>><<set $world.location to "Portugal - kitchen">>
<p>Uncle and Jack are at the table. Soft clinking. Low voices. They make room for her without drama.</p>
<p>
<uncle>There you are. Come, sit and eat.</uncle>
</p>
<p>
<jack>We saved you a plate.</jack>
</p>
<p>
<e>Thanks. I didn't realize how hungry I was.</e>
</p>
<p>Warm food. Talk about the city, the weather, her flight. When plates empty, the evening still belongs to her.</p>
<p>
<uncle>Your room's ready upstairs whenever you want it.</uncle>
</p>
<p>
<jack>Night, Emily - if I don't see you later.</jack>
</p>
[[House map|D5 House Map]]
[[Emily's room|D5 Room]]<<set $world.location to "Portugal - kitchen">>
<<set $flags.d5_kitchen_vision to true>>
<p>Uncle is at the table. Jack is not. Soft clinking. A plate waiting.</p>
<p>
<uncle>There you are. Come, sit and eat.</uncle>
</p>
<p>
<e>Thanks. I didn't realize how hungry I was.</e>
</p>
<p>Her thoughts blur - a flash of her uncle that makes her choke on her water. She forces her eyes to her plate.</p>
<img src="Images/Day 5/11.gif">
<p>
<e>What the fuck... What's happening with my mind.</e>
</p>
<p>She finishes what she can and stands when it is polite.</p>
<p>
<uncle>Rest when you need it. Long day.</uncle>
</p>
[[House map|D5 House Map]]
[[Emily's room|D5 Room]]<<set $world.location to "Portugal - kitchen">>
<<set $flags.d5_kitchen_vision to true>>
<p>Uncle and Jack at the table. Soft clinking. A plate waiting.</p>
<p>
<uncle>There you are. Come, sit and eat.</uncle>
</p>
<p>
<jack>We saved you a plate.</jack>
</p>
<p>
<e>Thanks. I didn't realize how hungry I was.</e>
</p>
<p>Her thoughts blur - unwanted images of both of them, heat that doesn't belong at a family table.</p>
<img src="Images/Day 5/12.gif">
<p>
<e>What the fuck... What's happening with my mind.</e>
</p>
<p>She finishes what she can. Stands. Leaves when she can breathe again.</p>
[[House map|D5 House Map]]
[[Emily's room|D5 Room]]
/* '' BATHROOM (location) '''''''''''''''''''''''''''''''''' */<<set $world.location to "Portugal - bathroom">>
<<= setup.locBannerHtml("bathroom", "Bathroom", $world.time)>>
<<if $day5.drank and $day5.forestDone and not $day5.bathPeek>>
<p>Emily enters - and freezes. Jack is in the shower. Steam. Glass fogged. She cannot look away; whether curiosity or the drink, something pulls her closer.</p>
<p>Thoughts she does not want. Heat she does not trust.</p>
<img src="Images/Day 5/13.gif">
<p>
<et>What's wrong with me... I really want to-</et>
</p>
<img src="Images/Day 5/14.gif">
<p>
<e>Please- no. Why am I thinking this. I should leave.</e>
</p>
<<set $day5.bathPeek to true>>
[[House map|D5 House Map]]
<<elseif $day5.bathPeek>>
<p>
<e>I don't have anything to do here. I should leave.</e>
</p>
[[House map|D5 House Map]]
<<else>>
<p>Tile. Mirror. The shower she already used after the flight. Nothing urgent here.</p>
[[House map|D5 House Map]]
<</if>>
/* '' SLEEP '''''''''''''''''''''''''''''''''''''''''''''''' *//* Hard gate: forest main quest required to end the day */
<<if not $day5.forestDone>>
<<goto "D5 Room">>
<</if>>
<<set $day5.dayDone to true>>
<<set $day5.kitchenDone to true>>
<<set $day5.hornyMode to false>>
<<set $world.time to "Night">>
<<set $world.location to "Portugal - Emily's room">>
<<set $flags.day5_done to true>>
<<run setup.Phone.refreshNotes()>>
<p>Upstairs. Soft steps on wood. Comfortable clothes. Bed.</p>
<<if $day5.drank>>
<p>Thoughts of the stone plate and the drink swirl behind her eyes. Sleep still takes her quickly.</p>
<<else>>
<p>Thoughts of the stone plate, the town, and whatever she left unfinished swirl behind her eyes. Sleep still takes her quickly.</p>
<</if>>
<p>Outside, Portugal night hums. Tomorrow will want college, more clues, and whatever Mom left unfinished.</p>
[[...|Day 6 Morning]]
/* -----------------------------------------------------------
DAY 6+ - Uncle's House (fixed rooms)
Emily Room | Jack Room | Albert Room | Bathroom |
Living | Kitchen | Outside ? Town
----------------------------------------------------------- */<<set $world.location to "Portugal - uncle's house">>
<<if ndef $wardrobe>><<set $wardrobe to { casual : true, jogging : false }>><</if>>
<<if ndef $player.outfit>><<set $player.outfit to "sleep">><</if>>
/* Heal: main wait done but Kelly gate text not sent yet */
<<if $day6.mainLoreReady and not $day6.kellyGateMsg and $day6.kellyPhone>>
<<run setup.Phone.seedKellyGateMessage()>>
<<set $day6.kellyGateMsg to true>>
<<set $day6.secondGateReady to true>>
<<run setup.Phone.refreshNotes()>>
<</if>>
/* Heal vial flags (stuck saves / missed hasVial) — morning after Kelly talk */
<<if $day6.kellyTalkDone and not $day6.jackVialDrop>>
<<set $day6.hasVial to true>>
<<if $world.time is "Morning" or $world.time is "Noon">>
<<set $day6.vialTestReady to true>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<</if>>
/* NTR cheat message when arriving home */
<<if ($ntr or $ntr_david) and $day6.ryanCheatReady and not $day6.ryanCheatMsg>>
<<goto "D6 Ryan Cheat Message">>
<</if>>
/* NTR: David "not cheated / AI" morning after wait sleep */
<<if ($ntr or $ntr_david) and $day6.davidCounterReady and not $day6.davidCounterDone>>
<<goto "D6 David Cheat Counter">>
<</if>>
/* Main: Kelly call after 2-day wait (Evan / Daisy lore) */
<<if $day6.kellyCallReady and not $day6.kellyEvanDone>>
<<goto "D6 Kelly Call">>
<</if>>
/* Main: Kelly forest phone after 5-day wait */
<<if $day6.kellyForestReady and not $day6.kellyForestMsgSeen>>
<<goto "D6 Phone Notify B2">>
<</if>>
/* Main: Kelly diary message after Albert-route + 3-day wait (LD214) */
<<if $day6.kellyDiaryReady and not $day6.kellyDiaryDone>>
<<goto "D6 Kelly Diary Call">>
<</if>>
/* Liam story photo after 3-day wait (ED1234 Hot/Cute) */
<<if $day6.liamFollowReady and not $day6.liamFollowDone>>
<<goto "D6 Liam Story Choice">>
<</if>>
/* NTR: David phone blink after Jack vial (night) */
<<if ($ntr or $ntr_david) and $day6.jackVialDrop and not $day6.davidBlinkDone and $world.time is "Night">>
<<goto "D6 David Phone Blink">>
<</if>>
/* Vial morning: go straight to kitchen event */
<<if $day6.vialTestReady and not $day6.jackVialDrop and ($world.time is "Morning" or $world.time is "Noon")>>
<<goto "D6 Kitchen Jack Vial">>
<</if>>
/* Jack morning jog invite (KD12) after full massage + 2 days */
<<if $day6.jackJogReady and not $day6.jackJogDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<goto "D6 Kitchen Jack Jog">>
<</if>>
/* Jack date night (evening after Albert job talk) */
<<if $day6.albertJobTalkDone and not $day6.jackDateNightDone and $world.time is "Evening">>
<<goto "D6 Jack Date Night">>
<</if>>
/* Jack brings girl home (night) */
<<if $day6.jackDateNightDone and not $day6.jackGirlNightDone and $world.time is "Night">>
<<goto "D6 Jack Girl Night">>
<</if>>
/* Albert: morning after Jack girl night (original Day 15) */
<<if $day6.jackGirlNightDone and not $day6.albertDay15Done and ($world.time is "Morning" or $world.time is "Noon")>>
<<goto "D6 Albert Day15 Knock">>
<</if>>
/* Morning after Kelly stay */
<<if $day6.metKelly and not $day6.kellyKitchenDone and $world.time is "Morning">>
<<goto "D6 Kitchen Kelly Morning">>
<</if>>
<<= setup.locBannerHtml("house", "Uncle's House", $world.time + " - Outfit: " + $player.outfit)>>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Emily\'s Room</span><span class="loc-sub">Sleep - Mirror - PC</span></span>' "D6 Room">><</link>>
<<if $day6.jackFullMassageReady and not $day6.jackFullMassageDone and ($world.time is "Evening" or $world.time is "Night") and Number($player.corruption) gte 20>>
<<link '<span class="loc-card"><span class="loc-name">Jack\'s Room</span><span class="loc-sub">Massage</span></span>' "D6 Jack Full Massage">><</link>>
<<elseif $day6.jackJogDone and not $day6.jackTeaseDone>>
<<link '<span class="loc-card"><span class="loc-name">Jack\'s Room</span><span class="loc-sub">Check on him</span></span>' "D6 Jack Tease Choice">><</link>>
<<elseif $day6.albertJobTalkDone and not $day6.jackDateNightDone and $world.time is "Evening">>
<<link '<span class="loc-card"><span class="loc-name">Living Room</span><span class="loc-sub">Jack is getting ready</span></span>' "D6 Jack Date Night">><</link>>
<<elseif $day6.jackDateNightDone and not $day6.jackGirlNightDone and $world.time is "Night">>
<<link '<span class="loc-card"><span class="loc-name">Emily\'s Room</span><span class="loc-sub">Knock at the door</span></span>' "D6 Jack Girl Night">><</link>>
<<elseif ($ntr or $ntr_david) and $day6.jackDatingReady and not $day6.jackDatingDone>>
<<link '<span class="loc-card"><span class="loc-name">Jack\'s Room</span><span class="loc-sub">He\'s home</span></span>' "D6 Jack Room">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Jack\'s Room</span><span class="loc-sub">Talk / events</span></span>' "D6 Jack Room">><</link>>
<</if>>
<<if $day6.albertJobReady and not $day6.albertJobTalkDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">Albert\'s Room</span><span class="loc-sub">He wants to talk</span></span>' "D6 Albert Job Talk">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Albert\'s Room</span><span class="loc-sub">Talk / events</span></span>' "D6 Albert Room">><</link>>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Bathroom</span><span class="loc-sub">Shower - Private</span></span>' "D6 Bathroom">><</link>>
<<if ($world.time is "Evening" or $world.time is "Night") and not $day6.jackMovie>>
<<link '<span class="loc-card"><span class="loc-name">Living Room</span><span class="loc-sub">Jack - TV</span></span>' "D6 Living">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Living Room</span><span class="loc-sub">TV - pass time</span></span>' "D6 Living">><</link>>
<</if>>
<<if $day6.vialTestReady and not $day6.jackVialDrop and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Breakfast — sample</span></span>' "D6 Kitchen Jack Vial">><</link>>
<<elseif $day6.jackJogReady and not $day6.jackJogDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Jack — jog?</span></span>' "D6 Kitchen Jack Jog">><</link>>
<<elseif $day6.jackShoulderReady and not $day6.jackShoulderDone and ($world.time is "Evening" or $world.time is "Night")>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Jack is there</span></span>' "D6 Jack Shoulder Massage">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Kitchen</span><span class="loc-sub">Eat - Drink</span></span>' "D6 Kitchen">><</link>>
<</if>>
/* Liam evening date/practice can leave home even at Night */
<<if $day6.liamDateReady and not $day6.liamDateDone and ($world.time is "Afternoon" or $world.time is "Evening" or $world.time is "Night")>>
<<if $day6.bsd14Scored>>
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Coffee date with Liam</span></span>' "D6 Liam Coffee Date">><</link>>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Park — practice with Liam</span></span>' "D6 Liam Park Practice">><</link>>
<</if>>
<<elseif $world.time is "Night">>
<span class="loc-locked"><span class="loc-name">Outside</span><span class="loc-sub">Too late</span></span>
<<else>>
<<link '<span class="loc-card"><span class="loc-name">Outside</span><span class="loc-sub">Town</span></span>' "D6 Town Map">><</link>>
<</if>>
</div>
/* -- Emily's Room: sleep, mirror, PC, change clothes -- */<<set $world.location to "Portugal - Emily's room">>
/* NTR: Ryan "David cheating" message when home after 2 days */
<<if ($ntr or $ntr_david) and $day6.ryanCheatReady and not $day6.ryanCheatMsg>>
<<goto "D6 Ryan Cheat Message">>
<</if>>
/* NTR: David counter morning */
<<if ($ntr or $ntr_david) and $day6.davidCounterReady and not $day6.davidCounterDone>>
<<goto "D6 David Cheat Counter">>
<</if>>
/* Main: Kelly forest phone (Emily's room) */
<<if $day6.kellyForestReady and not $day6.kellyForestMsgSeen>>
<<goto "D6 Phone Notify B2">>
<</if>>
/* Liam story photo (independent) */
<<if $day6.liamFollowReady and not $day6.liamFollowDone>>
<<goto "D6 Liam Story Choice">>
<</if>>
/* NTR: Ryan night walk invite (original BLD10) — Night only */
<<if ($ntr or $ntr_david) and $day6.nightWalkReady and not $day6.nightWalkDone and $world.time is "Night">>
<<goto "D6 Ryan Night Walk Msg">>
<</if>>
/* NTR: second night walk + Jack peek (3 days after first walk) */
<<if ($ntr or $ntr_david) and $day6.jackPeekReady and not $day6.jackPeek and $world.time is "Night">>
<<goto "D6 Ryan Night Walk 2 Msg">>
<</if>>
/* NTR: David blink after vial (Night) */
<<if ($ntr or $ntr_david) and $day6.jackVialDrop and not $day6.davidBlinkDone and $world.time is "Night">>
<<goto "D6 David Phone Blink">>
<</if>>
/* Jack girl night: date girl knocks — sleep in Emily's room + vial (original D23) */
<<if $day6.jackDateNightDone and not $day6.jackGirlNightDone and $world.time is "Night">>
<<goto "D6 Jack Girl Night">>
<</if>>
<<= setup.locBannerHtml("emily_room", "Emily's Room", $world.time)>>
<p>Small bed. Soft lamp. A tall mirror on the wardrobe. A laptop on the desk that still smells a little like airport dust. Passport in the bag's side pocket.</p>
<<if $day6.ryanCheatMsg and not $day6.ryanCheatPhoto>>
<p>
<et>If this is a game... I'm not losing.</et>
</p>
[[Bathroom|D6 Bathroom]]
<</if>>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Mirror</span><span class="loc-sub">Change clothes</span></span>' "D6 Room Mirror">><</link>>
<<link '<span class="loc-card"><span class="loc-name">PC</span><span class="loc-sub">Laptop</span></span>' "D6 Room PC">><</link>>
<<if $day6.libraryBookGotten and not $day6.libraryReadAtHome>>
<<link '<span class="loc-card"><span class="loc-name">Read the book</span><span class="loc-sub">The Alchemist\'s Almanac</span></span>' "D6 Room Read Book">><</link>>
<</if>>
<<if $world.time is "Evening" or $world.time is "Night" or $day6.collegeDone or $day6.leftHome>>
<<link '<span class="loc-card"><span class="loc-name">Sleep</span><span class="loc-sub">End the day</span></span>' "D6 Room Sleep Check">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Sleep</span><span class="loc-sub">Too early</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">House map</span><span class="loc-sub">Leave room</span></span>' "D6 House Map">><</link>>
</div><<set $world.location to "Portugal - Emily's room">>
<<if ndef $wardrobe>><<set $wardrobe to { casual : true, jogging : false }>><</if>>
<p>Emily stands in front of the mirror. Same face. Different day. The wardrobe holds what she owns.</p>
<p>
<em>Currently wearing: <<= $player.outfit>></em>
</p>
<<if $wardrobe.casual>>
<<if $player.outfit is "casual">>
<span class="loc-locked">Casual - wearing now</span>
<<else>>
[[Wear casual|D6 Wear Casual]]
<</if>>
<<else>>
<span class="loc-locked">Casual - not owned</span>
<</if>>
<<if $wardrobe.jogging>>
<<if $player.outfit is "jogging">>
<span class="loc-locked">Jogging - wearing now</span>
<<else>>
[[Wear jogging clothes|D6 Wear Jogging]]
<</if>>
<<else>>
<span class="loc-locked">Jogging clothes - buy at mall</span>
<</if>>
[[Stay in sleepwear|D6 Wear Sleep]]
[[Emily's room|D6 Room]]<<set $player.outfit to "casual">>
<<set $day6.dressed to true>>
/* Principal independent: 5 days after first meet → rushed morning, no bra */
<<if $day6.noBraEventReady and not $day6.principalPunishDone>>
<<set $day6.noBraDay to true>>
<<set $day6.wearingBra to false>>
<<set $day6.noBraTaped to false>>
<<goto "D6 Dress No Bra">>
<</if>>
<<set $day6.wearingBra to true>>
<<toast "Wearing casual">>
<img src="Images/Emily's Room/casual_dress.gif">
<p>Simple top. Jeans. She looks like a student again - not a forest ghost in pajamas.</p>
[[Emily's room|D6 Room]]
[[House map|D6 House Map]]<<set $world.location to "Portugal - Emily's room">>
<<set $player.outfit to "casual">>
<<set $day6.dressed to true>>
<<set $day6.wearingBra to false>>
<<set $day6.noBraDay to true>>
<<run setup.Phone.refreshNotes()>>
<p>She's running late. Jeans, thin top - she slings the bag over her shoulder and freezes.</p>
<p>
<e>Wait... where's my bra?</e>
</p>
<p>She looks under the pillow, the floor, the laundry. Nothing she can grab in time.</p>
<p>
<e>No time...</e>
</p>
<p>She sighs and tugs the shirt down. Her nipples press subtly against the thin fabric.</p>
<img src="Images/1.4/1.jpg">
<p>
<et>It'll be fine... just don't draw attention.</et>
</p>
<<toast "Dressed · no bra">>
[[House map|D6 House Map]]
[[Town map|D6 Town Map]]<<if not $wardrobe.jogging>>
<<goto "D6 Room Mirror">>
<</if>>
<<set $player.outfit to "jogging">>
<<set $day6.dressed to true>>
<<run setup.Phone.refreshNotes()>>
<<toast "Wearing jogging clothes">>
<img src="Images/Emily's Room/park_dress.webp">
<p>Light top. Shorts that actually mean business. Ready for the track - or at least to pretend she is.</p>
[[Park|D6 Park]]
[[Emily's room|D6 Room]]
[[House map|D6 House Map]]<<set $player.outfit to "sleep">>
<<set $day6.dressed to false>>
<<toast "Sleepwear">>
<p>Back to soft cotton. Fine for the house. Not fine for campus.</p>
[[Emily's room|D6 Room]]<<set $world.location to "Portugal - Emily's room">>
<p>Laptop boots with a soft chime. Browser tabs, a half-finished note about Portugal, and the feeling that the real answers are still offline - in forests and strange books.</p>
<<if $day6.libraryReadAtHome and not $day6.libraryResearchDone>>
<p>
<et>The book mentioned some old archive site. Worth a search.</et>
</p>
<<else>>
<p>
<et>Phone is faster for messages. This is for thinking. And stalling.</et>
</p>
<</if>>
<div class="loc-grid">
<<link '<span class="loc-card"><span class="loc-name">Open browser</span><span class="loc-sub">Laptop</span></span>'>><<run setup.PC.open()>><</link>>
</div>
[[Emily's room|D6 Room]]
[[House map|D6 House Map]]<<set $world.location to "Portugal - Emily's room">>
<<set $day6.libraryReadAtHome to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily locks her door, kicks off her shoes, and settles cross-legged on the bed with the book propped against her knees. The lamp throws a warm, narrow circle of light over the cracked leather cover.</p>
<p>The book is dense, the old-fashioned kind of dense that assumes you already know half of what it's talking about. She pushes through anyway, finger tracing lines of cramped print.</p>
<p>Most of it is useless - old superstitions, recipes for dyes, a rambling chapter on gemstones that means nothing to her. But near the back, one page has been read so many times the corner is soft as cloth.</p>
<p>
<et>"...the lenses require a stone untouched by fire, found only where the old paths cross." Cryptic. Great. Exactly what I needed - more riddles.</et>
</p>
<p>A footnote, almost an afterthought, catches her eye: a reference to an online archive where "enthusiasts of the old craft" apparently still trade theories.</p>
<p>
<et>Worth a look. The laptop's right there.</et>
</p>
<<toast "Book read — an old archive site is mentioned">>
[[Emily's room|D6 Room]]<<set $world.location to "Portugal - Emily's room">>
<<set $day6.libraryResearchDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily screenshots the thread before it can vanish into the site's ancient server, then calls Kelly, phone pressed tight to her ear.</p>
<p>
<e>Kelly. I think I found something.</e>
</p>
<p>
<kelly>Already? Okay, talk.</kelly>
</p>
<p>
<e>The library had a book - useless mostly, but it pointed me to some old forum. There's a post saying the alchemist isn't near the mountains at all. It says he's in the forest. Our forest.</e>
</p>
<p>
<kelly>Wait, seriously? That's-</kelly>
</p>
<p>
<e>I know. And I know it's just some forum post, not a fact. Could be nothing. But it's the only lead either of us has found.</e>
</p>
<p>
<kelly>It's more than nothing. It's a place to actually look.</kelly>
</p>
<p>Emily hangs up a few minutes later, the screenshot still open on her phone, equal parts hopeful and unsure.</p>
<p>
<et>A rumor on an old forum. That's what we're building this on. But it's better than a diary that just... stops.</et>
</p>
<<toast "Told Kelly — the alchemist may be in the forest">>
[[Emily's room|D6 Room]]
[[House map|D6 House Map]]
/* -- Jack's Room: talk / future events -- */<<set $world.location to "Portugal - Jack's room">>
/* NTR: after revenge photo (1 sleep later, so it doesn't happen the same night) — Jack helps make dating app */
<<if ($ntr or $ntr_david) and $day6.jackDatingReady and not $day6.jackDatingDone>>
<<goto "D6 Jack Dating App">>
<</if>>
/* Full massage: evening, 3-day wait done, Corruption >= 20 */
<<if $day6.jackFullMassageReady and not $day6.jackFullMassageDone and ($world.time is "Evening" or $world.time is "Night") and Number($player.corruption) gte 20>>
<<goto "D6 Jack Full Massage">>
<</if>>
/* After park jog: mood/tease choice (JD12) */
<<if $day6.jackJogDone and not $day6.jackTeaseDone>>
<<goto "D6 Jack Tease Choice">>
<</if>>
/* After Albert job talk: evening Jack date night (Home.txt day 13) */
<<if $day6.albertJobTalkDone and not $day6.jackDateNightDone and ($world.time is "Evening")>>
<<goto "D6 Jack Date Night">>
<</if>>
<<= setup.locBannerHtml("jack_room", "Jack's Room", $world.time)>>
<<if ($world.time is "Evening" or $world.time is "Night") and not $day6.jackMovie>>
<p>Jack's door is half open. Headset on the chair. Bed unmade. No Jack - music drifts faintly from downstairs.</p>
<p>
<et>He's probably in the living room...</et>
</p>
[[Living room|D6 Living]]
<<elseif $world.time is "Morning">>
<p>Jack's room. Empty bed. He's either still asleep elsewhere or already gone. Nothing eventful here right now.</p>
[[Chat if he's around later|D6 Jack Talk Empty]]
<<else>>
<p>Jack is on his bed, scrolling his phone. He looks up and grins when he sees her in the doorway.</p>
[[Talk with Jack|D6 Jack Talk]]
<</if>>
[[House map|D6 House Map]]<p>
<em>Nobody answers. Just the quiet of an empty room.</em>
</p>
[[Jack's room|D6 Jack Room]]
[[House map|D6 House Map]]<<set $world.location to "Portugal - Jack's room">>
<<if ndef $relations.Jack>><<set $relations.Jack to 40>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 1, 0, 100)>>
<p>
<jack>Hey. Settling in okay?</jack>
</p>
<p>
<e>Getting there. College is... a lot. Same as home, different walls.</e>
</p>
<p>
<jack>Yeah. If you need anything - food, directions, someone to complain to - I'm around.</jack>
</p>
<p>Easy talk. Nothing heavy. She leaves feeling a little less like a guest.</p>
<<toast "Talked with Jack">>
[[House map|D6 House Map]]
/* NTR: Jack helps create HeartSpark dating profile (original L3D8) */<<set $world.location to "Portugal - Jack's room">>
<<set $day6.jackDatingDone to true>>
<<set $day6.datingApp to true>>
<<if ndef $relations.Jack>><<set $relations.Jack to 40>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 5, 0, 100)>>
<<run setup.Phone.unlockDatingApp()>>
<<run setup.Phone.refreshNotes()>>
<p>Emily walks into Jack's room, heart heavy. He notices immediately and sets his phone down.</p>
<p>
<jack>Hey, you look upset. What's wrong?</jack>
</p>
<p>She sits on the edge of his bed, barely holding it together.</p>
<p>
<e>I just found out... David cheated on me. Someone sent me proof. It's real. I don't even know what to feel...</e>
</p>
<p>Jack is quiet for a second, then leans forward with a small encouraging smile.</p>
<p>
<jack>Listen, he clearly didn't deserve you. But you know what we should do? Make a dating profile for you. Seriously. Put you back out there. Someone better.</jack>
</p>
<p>
<e>Are you serious?</e>
</p>
<p>
<jack>Dead serious. We'll call it HeartSpark. Best photos. Show the world how amazing you are.</jack>
</p>
<p>He grabs his laptop. Together they pick three photos from her gallery:</p>
<p>Laughing under the sun at the beach,</p>
<img src="Images/1.3/beach.jpg">
<p>Cozy in a cafe, coffee in hand,</p>
<img src="Images/1.3/cafe.jpg">
<p>And dressed up from a family wedding - looking stunning.</p>
<img src="Images/1.3/cute.jpg">
<p>Bio:</p>
<p><em>"New in Portugal. Loves adventure, coffee, books, and maybe meeting someone worth smiling about."</em></p>
<p>After setup, Jack hands her the phone with a grin.</p>
<p>
<jack>Now the best part - we swipe. Later. App's on your home screen.</jack>
</p>
<p>She laughs for real for the first time today. The weight eases a little. And somewhere under it, a small flutter when Jack smiles at her.</p>
<p>
<et>Maybe I'll be okay.</et>
</p>
<<toast "HeartSpark unlocked">>
[[House map|D6 House Map]]
/* -- Albert's Room: talk / route events -- */<<set $world.location to "Portugal - Albert's room">>
<<if $day6.albertJobReady and not $day6.albertJobTalkDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<goto "D6 Albert Job Talk">>
<</if>>
<<if $world.time is "Night" and not $day6.albertRoute>>
<p>Albert's door is closed. Soft snoring - or the house settling. Not the time.</p>
[[House map|D6 House Map]]
<<elseif $day6.albertJobReady and not $day6.albertJobTalkDone>>
<p>Albert is waiting. He looks serious.</p>
[[Talk — he needs something|D6 Albert Job Talk]]
[[House map|D6 House Map]]
<<elseif $day6.albertRoute>>
<p>Albert's room is tidy. Reading glasses on a book. A photo of family on the dresser. After everything Jack said, the air feels different in here.</p>
<<if $day6.albertJobTalkDone and not $day6.ekonMet>>
<p>
<et>Job agency. Mr. Ekon. Albert was clear.</et>
</p>
<</if>>
[[Talk with Albert|D6 Albert Talk]]
[[Look around carefully|D6 Albert Watch]]
[[House map|D6 House Map]]
<<else>>
<p>Albert's room is tidy. Reading glasses on a book. A photo of family on the dresser. He looks up from his chair when she knocks.</p>
[[Talk with Albert|D6 Albert Talk]]
[[House map|D6 House Map]]
<</if>><<set $world.location to "Portugal - Albert's room">>
<p>
<uncle>Emily. Everything alright?</uncle>
</p>
<p>
<e>Just saying hi. Thanks again for letting me stay.</e>
</p>
<<if $day6.albertRoute>>
<p>His eyes linger a second too long. Then he looks away, as if nothing happened.</p>
<p>
<uncle>Don't stay out overnight again. I mean it.</uncle>
</p>
<<else>>
<p>
<uncle>You're family. College, work, whatever you choose - this house is open. Don't stay out too late.</uncle>
</p>
<</if>>
<p>Warm. Brief. The kind of talk that steadies the day without solving mysteries.</p>
<<toast "Talked with Albert">>
[[House map|D6 House Map]]<<set $world.location to "Portugal - Albert's room">>
<<if not $day6.albertRoute>>
<<goto "D6 Albert Room">>
<</if>>
<p>She pretends to admire the photo on the dresser. The book is face-down. A tablet peeks from under a folded sweater - screen dark, but recently used.</p>
<p>
<et>Jack was right. Something is off. Not yet. Not here.</et>
</p>
[[Albert's room|D6 Albert Room]]
[[House map|D6 House Map]]
/* Albert morning job talk (original ED13 — next day after punish) */<<set $world.location to "Portugal - Albert's room">>
<<if $day6.albertJobTalkDone>>
<<goto "D6 Albert Room">>
<</if>>
<<set $day6.albertJobTalkDone to true>>
<<set $day6.albertJobReady to false>>
<<set $day6.ekonAgencyUnlocked to true>>
<<run setup.Phone.refreshNotes()>>
<p>Morning light cuts across Albert's desk. He is already dressed, expression serious - not angry like yesterday. Practical.</p>
<p>
<uncle>Emily... we need to talk.</uncle>
</p>
<p>Emily sits, curiosity and a hint of apprehension creeping in.</p>
<p>
<e>Yes... what is it?</e>
</p>
<p>Albert's voice is firm.</p>
<p>
<uncle>You can't keep living like this, Emily. I can't support you forever. You need to start earning your own money.</uncle>
</p>
<p>Emily blinks, a little startled by his directness.</p>
<p>
<e>I... I understand.</e>
</p>
<p>
<uncle>Good. I know a friend who works at a job agency - Mr. Ekon. You should meet him. He can help you find something suitable. Start working, and make sure you take it seriously.</uncle>
</p>
<p>Emily nods, determination settling in her chest.</p>
<p>
<e>Alright... I'll go. I'll meet him.</e>
</p>
<p>She stands, brushing her hair back. Town map - job agency. First step toward her own money.</p>
<<toast "Job agency unlocked — Mr. Ekon">>
[[House map|D6 House Map]]
[[Town map|D6 Town Map]]
/* ═══════════════════════════════════════════════════════════
After pond: late home — Albert punishment (HD13 → ND13 → RD13)
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - uncle's house">>
<<set $world.time to "Morning">>
<<set $day6.leftHome to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily slipped quietly into the house, hoping to avoid attention - but Albert was waiting. His arms were crossed, his expression dark.</p>
<p>
<uncle>Where the hell were you, Emily?</uncle>
</p>
<p>Emily froze, guilt flickering across her face. Behind him, Jack stood silently, watching the exchange.</p>
<p>
<e>I... I just went out for some air...</e>
</p>
<p>Albert stepped closer, his voice sharper.</p>
<p>
<uncle>Don't lie to me. You disappeared for an entire night. Do you realize what that means?</uncle>
</p>
<p>Emily's lips parted, but no words came out. Her stomach tightened.</p>
<p>Albert's eyes narrowed, then he spoke coldly.</p>
<p>
<uncle>You want to play reckless? Fine. But there will be consequences. Drop your pants and bend over.</uncle>
</p>
<p>Emily's eyes widened, her breath catching.</p>
<p>Jack immediately stepped forward.</p>
<p>
<jack>Dad, that's too much. We can punish her some other way - this isn't right.</jack>
</p>
<p>But Albert didn't even glance at him. His gaze stayed locked on Emily, hard and unyielding.</p>
<p>
<uncle>This is the punishment. She disobeyed, she'll learn. Do it, Emily.</uncle>
</p>
<p>Emily's heart raced. She felt Jack's concerned eyes on her, urging her silently not to go through with it - but Albert's commanding tone pressed down on her, leaving little room to breathe.</p>
<p>Her hands trembled slightly as she reached for the waistband of her pants...</p>
[[Next|D6 Albert Spank]]<<set $world.location to "Portugal - living room">>
<<set $day6.albertPunishDone to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily's fingers fumbled at her waistband, shame burning her cheeks as she slid her pants down. The cool air brushed her thighs, making her tremble as she bent forward, exposing herself.</p>
<p>Jack hesitated, his hand tightening into a fist before slowly relaxing. He moved behind her, his voice low.</p>
<p>
<jack>Emily... I'm sorry. But... this is what he wants.</jack>
</p>
<p>She bit her lip, bracing herself.</p>
<p>The first crack echoed through the room as Jack's palm landed firmly on her.</p>
<p>
<e>Ah—!</e>
</p>
<p>Her body jolted, her hands gripping her knees for balance.</p>
<img src="Images/28.gif">
<p>A second, harder strike followed, the sting spreading across her skin.</p>
<p>
<e>Nngh—!</e>
</p>
<p>
<uncle>Remove her panties.</uncle>
</p>
<p>By the third, her legs were trembling. Jack's face showed regret with each strike, but Albert's cold gaze pinned him in place.</p>
<img src="Images/25.gif">
<p>The fourth spank rang out, Emily gasping, her breath quickening.</p>
<p>The fifth landed with finality, her whole body flinching.</p>
<p>
<e>Ahhh—please...</e>
</p>
<p>She whispered, her voice breaking.</p>
<img src="Images/26.gif">
<p>Albert finally spoke, his tone sharp and final.</p>
<p>
<uncle>Enough. She's learned her lesson. Pull yourself together, Emily - and go to your room.</uncle>
</p>
<p>Emily quickly yanked her pants back up, not daring to meet either of their eyes. She hurried away, her cheeks wet with shame, retreating to her room and closing the door behind her.</p>
<<toast "Corruption +1">>
[[Room|D6 Room After Albert]]<<set $world.location to "Portugal - Emily's room">>
<<run setup.Phone.refreshNotes()>>
<p>Emily shut her door softly, her chest still tight after the punishment. She glanced down at her dirty, crumpled clothes - grass stains and dust smeared across her skirt and blouse from the night near the pond.</p>
<p>
<e>Ugh... I can't stay like this.</e>
</p>
<p>She muttered, pulling her bag closer and fishing out a fresh set of clothes.</p>
<p>She placed them neatly on the bed, then turned toward the door. Her hand lingered on the handle.</p>
<p>For a moment, she hesitated. Should she close it... or leave it open?</p>
[[Emily closes the door|D6 Room Door Closed]]
[[Emily leaves it open|D6 Room Door Open]]<<set $world.location to "Portugal - Emily's room">>
<<set $day6.albertRoomDoorOpen to false>>
<p>Emily exhaled softly and pressed the door shut until the latch clicked.</p>
<p>
<e>Better safe than sorry...</e>
</p>
<p>She whispered to herself.</p>
<p>She peeled off her blouse, letting it fall to the floor, then slid her skirt down her legs. The quiet of the room wrapped around her like a blanket as she reached for her fresh clothes.</p>
<p>Just as she was pulling her new top over her head-</p>
<p><em>Knock, knock.</em></p>
<p>The sound jolted her. Her heart skipped.</p>
<p>
<e>...Come in.</e>
</p>
<p>She asked nervously, clutching the hem of her half-worn shirt.</p>
[[Next|D6 Jack After Albert]]<<set $world.location to "Portugal - Emily's room">>
<<set $day6.albertRoomDoorOpen to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<p>Emily lingered on the door handle, then released it with a sigh.</p>
<p>
<e>I'll just... leave it open. What's the harm?</e>
</p>
<p>She pulled off her blouse first, folding it clumsily before tossing it onto the chair. As she slid her skirt down her thighs, the cool air brushed over her bare skin.</p>
<img src="Images/29.gif">
<p>That was when footsteps echoed in the hall.</p>
<p>Suddenly, the door creaked wider. Jack appeared in the frame, eyes widening as he froze in shock.</p>
<p>
<e>Ahhh!</e>
</p>
<p>Emily shrieked, clutching her half-removed skirt to her chest.</p>
<p>
<jack>Shit—! I—I didn't know—sorry!</jack>
</p>
<p>They both shouted at once, the air crackling with embarrassment. Jack turned on his heel so fast he nearly slammed the door into the wall as he stumbled back.</p>
<p>Emily's heart pounded. She yanked on her clean clothes as quickly as she could, cheeks burning.</p>
<p>When she was finally dressed, she peeked toward the door.</p>
<p>
<e>...Jack... you can come in now.</e>
</p>
<<toast "Corruption +1">>
[[Next|D6 Jack After Albert]]<<set $world.location to "Portugal - Emily's room">>
<<set $day6.albertRoute to true>>
<<if ndef $relations>><<set $relations to {}>><</if>>
<<if ndef $relations.Jack>><<set $relations.Jack to 0>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 2, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>
<jack>Emily... we need to talk.</jack>
</p>
<p>She turned, surprised by the serious look on his face.</p>
<p>
<e>What is it? Did Albert send you?</e>
</p>
<p>Jack shook his head.</p>
<p>
<jack>No. This is about him. He's... acting strange.</jack>
</p>
<p>Emily frowned, tension curling in her chest.</p>
<p>
<e>Strange? How?</e>
</p>
<p>Jack leaned against the doorframe, lowering his voice.</p>
<p>
<jack>Earlier, I caught him in the living room... watching porn. And not just once. He was... glued to it, like obsessed. He's never been like that before.</jack>
</p>
<p>Emily's eyes widened, her heartbeat quickening.</p>
<p>
<e>...Albert?</e>
</p>
<p>She whispered.</p>
<p>Jack nodded grimly.</p>
<p>
<jack>Something's not right with him. I don't know if it's stress, or something else... but I think we should find out what's going on. Before it gets worse.</jack>
</p>
<p>Emily swallowed hard, her mind racing.</p>
<p>
<e>Hm, that's strange. We will surely try to fix it.</e>
</p>
<p>
<jack>Yeah. We have to.</jack>
</p>
<p>Jack gave her a reassuring nod and left the room.</p>
<<toast "Albert route unlocked">>
[[House map|D6 House Map]]
[[Emily's room|D6 Room]]
/* -- Living room: TV pass time / Jack movie event -- */<<set $world.location to "Portugal - living room">>
/* Story event: Jack movie (evening, once) */
<<if ($world.time is "Evening" or $world.time is "Night") and not $day6.jackMovie>>
<<goto "D6 Living Jack Movie">>
<</if>>
<<= setup.locBannerHtml("living", "Living Room", $world.time)>>
<p>Couch. Remote. TV that still has last night's streaming app open on the home screen.</p>
[[Watch TV (pass time)|D6 Living TV]]
[[House map|D6 House Map]]<<set $world.location to "Portugal - living room">>
<<run setup.advanceTime(1)>>
<<if $world.time is "Night">>
<p>She sinks into a show she barely follows. Outside goes dark. Time to head to her room soon.</p>
<<else>>
<p>Something light on the screen. Commercials. A laugh track. An hour thins out without asking permission.</p>
<</if>>
<<toast "Time passes">>
[[Living room|D6 Living]]
[[House map|D6 House Map]]
/* Jack path: watch a movie together */<<set $world.location to "Portugal - living room">>
<<set $day6.jackMovie to true>>
<<run setup.Phone.refreshNotes()>>
<p>Later that evening, Emily walks into the cozy living room, stretching her arms after a long day.
To her surprise, she spots Jack already sitting on the couch, flipping through movie options on the TV.</p>
<p>
<jack>Hey, Emily. Wanna watch something together?</jack>
</p>
<p>Jack glances over his shoulder and smiles casually, but there's a small nervousness in his voice Emily can't help but notice.
She feels a tiny flutter in her chest but pushes it down with a quick nod.</p>
<p>
<e>Sure! Sounds fun.</e>
</p>
<p>She plops down next to him, close enough that their arms almost touch.
After a few minutes of debating, they finally settle on a light-hearted action movie.</p>
<img src="Images/1.2/2.png">
<p>As the film plays, Emily sneaks a few glances at Jack.
He's laughing at the silly scenes, totally relaxed, and for a second, Emily feels herself smiling without even realizing it.</p>
<p>By the time the credits roll, the room is comfortably quiet.
Jack looks over at her, his eyes lingering a little longer than before.</p>
<p>
<jack>That was fun. We should do this more often.</jack>
</p>
<p>
<e>Yeah... we should.</e>
</p>
<p>As Jack gets up to grab some water from the kitchen, Emily stays behind on the couch, hugging a pillow to her chest.</p>
<p>
<et>I think... Jack might actually like me more than just a friend.</et>
</p>
<<if ndef $relations.Jack>><<set $relations.Jack to 40>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 5, 0, 100)>>
<<run setup.advanceTime(1)>>
<<toast "Jack path: movie night - Jack likes her more">>
[[House map|D6 House Map]]
/* -- Kitchen: eat / drink water -- */<<set $world.location to "Portugal - kitchen">>
<<if $day6.metKelly and not $day6.kellyKitchenDone and $world.time is "Morning">>
<<goto "D6 Kitchen Kelly Morning">>
<</if>>
/* Heal + vial test (original KD11) */
<<if $day6.kellyTalkDone and not $day6.jackVialDrop>>
<<set $day6.hasVial to true>>
<<if $world.time is "Morning" or $world.time is "Noon">>
<<set $day6.vialTestReady to true>>
<</if>>
<</if>>
<<if $day6.vialTestReady and not $day6.jackVialDrop and ($world.time is "Morning" or $world.time is "Noon")>>
<<goto "D6 Kitchen Jack Vial">>
<</if>>
/* KD12: morning jog invite after full massage + 2 days */
<<if $day6.jackJogReady and not $day6.jackJogDone and ($world.time is "Morning" or $world.time is "Noon")>>
<<goto "D6 Kitchen Jack Jog">>
<</if>>
/* Jack shoulder massage offer (original K2D10) — evening after movie + 1 day */
<<if $day6.jackShoulderReady and not $day6.jackShoulderDone and ($world.time is "Evening" or $world.time is "Night")>>
<<goto "D6 Jack Shoulder Massage">>
<</if>>
<<= setup.locBannerHtml("kitchen", "Kitchen", $world.time)>>
<p>Warm tile. Fridge hum. A pot that might be soup later. Jack's mug in the sink more often than not.</p>
<div class="loc-grid">
<<if not $day6.ateToday>>
<<link '<span class="loc-card"><span class="loc-name">Eat</span><span class="loc-sub">Quick meal</span></span>' "D6 Kitchen Eat">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Eat</span><span class="loc-sub">Already ate</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">Drink water</span><span class="loc-sub">Quick sip</span></span>' "D6 Kitchen Water">><</link>>
<<link '<span class="loc-card"><span class="loc-name">House map</span><span class="loc-sub">Leave</span></span>' "D6 House Map">><</link>>
</div>
/* Vial: drop in Jack's drink (original KD11) */<<set $world.location to "Portugal - kitchen">>
/* Safety: only after Kelly sample + morning, once */
<<if $day6.jackVialDrop>>
<<goto "D6 Kitchen">>
<</if>>
<<if not $day6.kellyTalkDone and not $day6.hasVial and not $day6.vialTestReady>>
<<goto "D6 Kitchen">>
<</if>>
<<set $day6.hasVial to true>>
<<set $day6.vialTestReady to true>>
<<set $day6.ateToday to true>>
<<set $day6.breakfast to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily entered the kitchen, still towel-drying her damp hair, and found both Albert and Jack already seated at the table, chatting and finishing up breakfast.</p>
<p>
<uncle>Look who finally decided to wake up.</uncle>
</p>
<p>
<jack>We almost ate your share, Em.</jack>
</p>
<p>Emily laughed and took a seat, grabbing some toast. The warm energy in the kitchen made her smile - normal, relaxed, like nothing strange was going on outside these walls.</p>
<p>As they joked and talked about random college gossip, Emily's gaze drifted to the little vial Kelly had given her. That strange liquid... potent, addictive, arousing. She had planned to use it on the basketball guy, but now another thought slipped into her mind.</p>
<p>
<et>What if... just a little drop... would it even affect them the same way?</et>
</p>
<p>She stared at Jack's mug. She reached into her pocket slowly, fingers brushing against the vial.</p>
[[She adds a drop in Jack's drink|D6 Jack Vial Drop]]<<set $world.location to "Portugal - kitchen">>
<<set $day6.jackVialDrop to true>>
<<set $day6.vialTestReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily pretends to yawn and leans forward, subtly opening the vial under the table and letting a single drop fall into Jack's tea while he's busy talking to Albert.</p>
<img src="Images/1.5/12.jpg">
<p>A few seconds later, Jack pauses, his expression changing ever so slightly.</p>
<p>
<jack>...is it hot in here or is it just me?</jack>
</p>
<p>He chuckles awkwardly, tugging at his collar.</p>
<p>Emily watches carefully, curious - and a little excited - about what might unfold. But she is getting late for college...</p>
[[Follow Jack|D6 Jack Vial Aftermath]]<<set $world.location to "Portugal - hallway">>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>After about five minutes, Emily noticed a clear bulge forming in Jack's pants. It was obvious the vial drop was working - his body was reacting strongly.</p>
<p>
<et>Wow... it's actually happening. He's getting hard just from that tiny drop?</et>
</p>
<p>She stepped closer. Jack's eyes were completely locked onto her cleavage, staring without any shame. Emily had never seen him look at her like this before.</p>
<img src="Images/2.4/1.jpg">
<p>
<jack>Sorry... I, uh... I'm not focusing properly right now.</jack>
</p>
<p>He muttered the apology quickly and turned away, clearly embarrassed but unable to control himself. He hurried toward the bathroom.</p>
<p>Emily waited a few seconds, then quietly followed. She peeked through the slightly open bathroom door and froze.</p>
<p>Jack was already in the shower, water running over his body, one hand wrapped around his hard cock as he stroked himself furiously. On his phone, propped on the shelf, a porn video was playing - loud moans filling the small space.</p>
<p>
<et>Oh my god... he's actually jerking off because of me? The vial really worked... this is insane.</et>
</p>
<p>Emily stood there shocked, her cheeks burning. She quickly pulled back before he could notice her.</p>
<p>Without saying anything, she grabbed her bag and headed out for college, her mind spinning with what she had just witnessed - and what might happen once she got there.</p>
<<toast "The vial works...">>
[[College|D6 College]]
[[Town map|D6 Town Map]]
/* Jack shoulder massage offer (original K2D10) */<<set $world.location to "Portugal - kitchen">>
<<if $day6.jackShoulderDone>>
<<goto "D6 Kitchen">>
<</if>>
<<set $day6.jackShoulderDone to true>>
<<set $day6.jackShoulderReady to false>>
<<set $day6.jackFullMassageWaitSleeps to 0>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily entered the kitchen and found only Jack sitting at the table, casually finishing his dinner. The soft clink of cutlery echoed in the quiet room. She looked around.</p>
<img src="Images/1.5/10.jpg">
<p>
<e>Where's Albert?</e>
</p>
<p>
<jack>He said he'll be late again. Work stuff.</jack>
</p>
<p>Emily gave a small nod and sat down across from him, stretching her arms above her head with a tired sigh. The motion made her shirt ride up just a little, exposing a sliver of skin at her waist. Jack's eyes flicked there for half a second before he looked back at her face.</p>
<p>
<jack>Rough day?</jack>
</p>
<p>
<e>Kinda... just a lot happened.</e>
</p>
<p>Jack chuckled lightly and stood up, walking around the table until he was behind her. His hands gently landed on her shoulders, thumbs pressing into the tight muscles.</p>
<p>
<jack>You look tense as hell. Want a little massage?</jack>
</p>
<p>Emily gave a tired but genuine smile and leaned forward slightly, resting her forearms on the table.</p>
<p>
<e>Please... that would be amazing right now.</e>
</p>
<p>His fingers started working into her shoulders - firm, slow, and surprisingly skilled. Warmth spread through her muscles as the knots began to loosen. She let out a soft, involuntary hum of relief and closed her eyes for a moment.</p>
<p>
<jack>Better?</jack>
</p>
<p>
<e>Mmhmm... yeah, thanks Jack. You're really good at this.</e>
</p>
<p>The moment felt strangely intimate in the quiet kitchen. His hands moved lower, thumbs gliding along the edges of her shoulder blades, then back up to her neck. Emily's breathing slowed as she relaxed more into his touch.</p>
<p>After almost a minute, Jack's hands paused. Instead of pulling away immediately, he leaned down slightly, his breath brushing near her ear as he spoke softly.</p>
<p>
<jack>You know... if you ever want a proper back massage, I give really good ones. Full back, not just shoulders.</jack>
</p>
<p>He said it casually, but there was a teasing edge in his voice.</p>
<p>Emily's eyes opened. She turned her head just enough to look up at him with a small, knowing smirk.</p>
<p>
<e>Oh? Is that your way of trying to get me to take my shirt off, Jack?</e>
</p>
<p>Jack laughed quietly, but didn't deny it. His hands gave her shoulders one last gentle squeeze before he finally stepped back and returned to his chair, though his eyes lingered on her a little longer than usual.</p>
<p>
<jack>Hey, I'm just saying... I'm here if you need it. No pressure.</jack>
</p>
<p>Emily felt a small flutter in her stomach at his bold comeback. She bit her lip, trying not to smile too obviously, and playfully kicked his leg under the table.</p>
<p>
<e>You wish.</e>
</p>
<p>She paused for a second, then added in a lighter, almost challenging tone:</p>
<p>
<e>Maybe... if you behave yourself, I'll think about letting you prove how good those "full back massages" are.</e>
</p>
<p>Jack raised an eyebrow, clearly surprised but pleased by her response.</p>
<<if ndef $relations>><<set $relations to {}>><</if>>
<<if ndef $relations.Jack>><<set $relations.Jack to 0>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 3, 0, 100)>>
<<toast "Jack — massage offered">>
[[House map|D6 House Map]]
/* Gate: does going to sleep in Emily's room trigger the Jack peek loop first? */<<if $day6.jackShoulderDone and not $day6.jackRoomPeekDone>>
<<goto "D6 Jack Room Peek Night">>
<<else>>
<<goto "D6 Sleep">>
<</if>>
/* ===========================================================
Jack room peek — recurring night event after shoulder massage.
Night 1/2: hears it, ignores it. Night 3+: goes to look, sees a
scene, choice to open the door (needs Corruption >= 17) or leave.
Loops (re-peek, new scene) every night until she opens the door.
=========================================================== */<<set $world.location to "Portugal - Emily's room">>
<<if $day6.jackRoomPeekDone>>
<<goto "D6 Room">>
<</if>>
<<set $day6.jackRoomPeekNights to Number($day6.jackRoomPeekNights || 0) + 1>>
<<if $day6.jackRoomPeekNights is 1>>
<p>Emily settles into bed, the sheets cool and slightly rough against her bare thighs and the soft underside of her breasts. She shifts, the fabric whispering over her nipples, and lets her eyes drift shut.</p>
<p>Just as sleep begins to pull at her, a sound slides through the wall — low, wet, rhythmic. A moan. Then another, deeper, broken by a quiet, choked gasp.</p>
<p>Her eyes snap open.</p>
<p>
<et>Is that… Jack?</et>
</p>
<p>Heat floods her face and drops straight between her legs. She can hear him clearly now: the soft, filthy rhythm of skin on skin, the way his breath hitches every few strokes, the low, almost reluctant groan that vibrates through the plaster. Her thighs press together without permission. The blanket suddenly feels too heavy and not nearly enough.</p>
<p>She bites her lip hard, trying to think about the flight, the forest, tomorrow’s classes — anything — but the sounds keep coming. Wet. Steady. Intimate. Her hand has already slipped under the waistband of her panties before she fully admits what she’s doing. Fingers glide through slick heat; she’s soaked just from listening. She matches his pace without meaning to, two fingers circling her clit in time with every muffled thrust from the other side of the wall.</p>
<p>Jack’s next moan is louder, rougher, almost a curse. Emily’s hips jerk. She buries her face in the pillow to keep quiet as she works herself faster, chasing the same edge he’s clearly approaching. When his rhythm stutters and a long, broken sound of release bleeds through the wall, her own orgasm hits hard — silent, shaking, thighs clamped around her hand as she comes to the thought of him spilling just a few feet away.</p>
<p>Afterward she lies still, breathing hard, cheeks burning, fingers sticky. Sleep finally takes her, but it is restless and thick with the memory of his voice.</p>
[[Sleep|D6 Sleep]]
<<elseif $day6.jackRoomPeekNights is 2>>
<p>The same sound again, the second night in a row - muffled voices, a girl's laugh, then that same rhythm through the wall.</p>
<p>
<et>Seriously? Again?</et>
</p>
<p>
<e>What a playboy... bringing some random girl over like clockwork.</e>
</p>
<p>She rolls her eyes at the ceiling, half annoyed, half something she does not want to name, and pulls a pillow over her head until the noise fades into sleep.</p>
[[Sleep|D6 Sleep]]
<<else>>
<<goto "D6 Jack Room Peek Door">>
<</if>><<set $world.location to "Portugal - hallway outside Jack's room">>
<p>Third night in a row. The sound starts again, low and wet, and this time Emily does not just lie there — she sits up, quiet, curiosity burning hotter than sense.</p>
<p>She creeps to the door, easing it open a crack. Jack's door down the hall is not quite shut either — just enough of a gap to see by the warm lamp light inside.</p>
<<set _peekRoll to Math.floor(Math.random() * 3)>>
<<if _peekRoll is 0>>
<<set $day6.jackRoomPeekVariant to "threesome">>
<<elseif _peekRoll is 1>>
<<set $day6.jackRoomPeekVariant to "vanilla">>
<<else>>
<<set $day6.jackRoomPeekVariant to "man">>
<</if>>
<<if $day6.jackRoomPeekVariant is "threesome">>
<p>Two girls are on the bed with him, bodies tangled and glistening, laughing softly between deep, open-mouthed kisses as Jack moves between them — hands roaming, cock sliding from one slick heat to the other like he cannot decide who to bury himself in first.</p>
<img src="Images/Jack/Room_peek/threesome_2_female.gif">
<<elseif $day6.jackRoomPeekVariant is "vanilla">>
<p>Just one girl this time — straddling him slow and unhurried, her wet cunt sliding down his thick length, hands braced on his chest, his fingers digging hard into the soft flesh of her hips as he guides every deep, rolling thrust.</p>
<img src="Images/Jack/Room_peek/vanilla.gif">
<<else>>
<p>Not just girls tonight — another guy is there too, and Jack does not seem to mind sharing at all, the three of them a sweat-slick mess of hands, mouths, and hard cocks moving together on the sheets.</p>
<img src="Images/Jack/Room_peek/threesome_2male.gif">
<</if>>
<p>Emily's breath catches. Heat crawls up her neck and pools low between her thighs, and for a moment she just watches — unable to look away.</p>
<p>
<et>What is wrong with me... I should not be watching this.</et>
</p>
<<if not $day6.jackRoomPeekCorGiven>>
<<set $day6.jackRoomPeekCorGiven to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
<<if Number($player.corruption) gte 17>>
[[Open the door|D6 Jack Room Peek Open]]
<<else>>
<span class="loc-locked"><span class="loc-name">Open the door</span><span class="loc-sub">Corruption 17 needed</span></span>
<</if>>
[[Leave quietly|D6 Jack Room Peek Leave]]<<set $world.location to "Portugal - Emily's room">>
<p>Emily eases the door shut and hurries back to bed, pulse still racing, telling herself she imagined how long she stood there.</p>
<p>
<et>Tomorrow. I'll just... pretend I didn't see anything.</et>
</p>
[[Sleep|D6 Sleep]]<<set $world.location to "Portugal - Jack's room">>
<<set $day6.jackRoomPeekDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily's hand moves before her better judgment can stop it. The door creaks open.</p>
<p>Everyone freezes. Jack's head turns first, eyes going wide in the lamp light.</p>
<p>
<jack>Emily?! Shit - I- this isn't-</jack>
</p>
<p>She should look away. She does not.</p>
<p>
<e>...Don't stop on my account.</e>
</p>
<p>The words are out before she can take them back - and the shock on Jack's face slowly melts into something else entirely.</p>
<p>
<jack>Careful what you ask for.</jack>
</p>
<p>Emily steps inside and pulls the door shut behind her, heart hammering, unwilling to be the one who backs out now.</p>
<<toast "Jack — caught looking">>
[[House map|D6 House Map]]
/* Full massage (original Jack_massage) — after 3-day wait */<<set $world.location to "Portugal - Jack's room">>
<<if $day6.jackFullMassageDone>>
<<goto "D6 House Map">>
<</if>>
<<if Number($player.corruption) lt 20>>
<<goto "D6 Jack Room">>
<</if>>
<<set $day6.jackFullMassageDone to true>>
<<set $day6.jackFullMassageReady to false>>
<<set $day6.jackJogWaitSleeps to 0>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<if ndef $relations>><<set $relations to {}>><</if>>
<<if ndef $relations.Jack>><<set $relations.Jack to 0>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 5, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>
<e>Finally back home...</e>
</p>
<<if $day6.jackVialDrop>>
<p>As soon as Emily entered the house, her eyes went straight to Jack. The bulge in his pants was still very obvious - even bigger than before. His cock was clearly rock hard under the fabric.</p>
<p>
<et>Oh my god... it's still hard? Just from one tiny drop? This vial is actually insane...</et>
</p>
<p>She bit her lip, feeling a rush of excitement. A naughty idea popped into her head.</p>
<<else>>
<p>Jack is in his room. She remembers his offer from the kitchen - the full-back one.</p>
<</if>>
<p>
<e>Hey Jack... remember that massage you promised me the other day?</e>
</p>
<p>
<jack>Uh... yeah?</jack>
</p>
<p>
<e>Can you give it to me now? My shoulders are really tight after college.</e>
</p>
<p>
<jack>...Sure. Okay.</jack>
</p>
<p>Emily smiled to herself and slowly pulled her top off, revealing her lacy bra. Her breasts looked full and soft, barely contained by the thin fabric.</p>
<p>Jack's eyes immediately locked onto her chest, unable to look away.</p>
<img src="Images/2.4/4.gif">
<p>
<et>He's staring so hard... this is actually fun.</et>
</p>
<p>She lay down on the bed on her stomach, her bra still on.</p>
<p>Jack sat beside her and started massaging her shoulders and back with shaky hands. His touch was warm. After a few minutes, his hands slowly moved lower... until he accidentally grabbed a handful of her soft butt.</p>
<img src="Images/2.4/5.gif">
<p>
<jack>S-Sorry!</jack>
</p>
<p>
<e>It's okay... you can continue.</e>
</p>
<p>Jack's heart was pounding. He kept massaging her, trying not to lose control<<if $day6.jackVialDrop>>, his cock still painfully hard the entire time<</if>>.</p>
<p>After some time the massage ended. Emily stood up, still in just her bra, and gave him a small smile.</p>
<p>
<e>Goodnight, Jack.</e>
</p>
<p>She climbed into bed and turned off the lights, leaving Jack sitting there, extremely turned on and frustrated.</p>
<<if $day6.jackVialDrop>>
<p>
<et>This vial is really working... I wonder how far I can push him tomorrow.</et>
</p>
<<else>>
<p>
<et>That was... a lot. For both of us.</et>
</p>
<</if>>
<<toast "Corruption +1">>
[[Sleep|D6 Sleep]]
[[House map|D6 House Map]]
/* KD12 morning kitchen → park jog chain */<<set $world.location to "Portugal - kitchen">>
<<if $day6.jackJogDone>>
<<goto "D6 Kitchen">>
<</if>>
<<set $day6.jackJogDone to true>>
<<set $day6.jackJogReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped out of the bathroom, towel wrapped snugly around her. After drying her hair and slipping into some casual clothes, she padded barefoot toward the kitchen, stomach growling softly.</p>
<p>The faint sound of shoes squeaking on tile made her pause.</p>
<p>Jack was there - dressed in a tight sports shirt and shorts, lacing up his sneakers. A water bottle sat on the counter beside him. His body glistened faintly with a pre-jog energy, veins showing lightly along his arms.</p>
<p>
<e>Jack? Where are you going this early?</e>
</p>
<p>She tilted her head curiously.</p>
<p>He glanced up at her, flashing a half-smile as he tightened his laces.</p>
<p>
<jack>Going for a jog. Gotta keep in shape, you know?</jack>
</p>
<p>He stood, stretching his arms overhead, the fabric of his shirt pulling tight against his chest. Then he looked at her, grin widening.</p>
<p>
<jack>Wanna come?</jack>
</p>
<p>Emily hesitated for a second, but the thought of fresh air - and maybe spending some time with him - made her answer almost instantly.</p>
<p>
<e>Yes... sure, I'll come.</e>
</p>
<p>Jack chuckled, tossing her a playful nod.</p>
<p>
<jack>Better keep up, Em. I don't slow down.</jack>
</p>
<p>Her cheeks warmed at the way he said it, but she only smiled back.</p>
[[Park|D6 Jack Jog Park]]<<set $world.location to "Portugal - park">>
<<run setup.advanceTime(1)>>
<p>The morning air was fresh as they reached the park. Dew still clung to the grass, and a handful of people were scattered around the jogging track.</p>
<p>Jack stopped near a bench and set his water bottle down.</p>
<p>
<jack>Stretch first. Don't want you pulling something.</jack>
</p>
<p>He bent forward to touch his toes. Emily nodded, following his lead. They moved through a few stretches together - arms over heads, twists, light squats - and Emily couldn't help but notice how easily Jack's body moved, muscles flexing beneath his shirt.</p>
<p>After a few minutes, Jack grinned and jogged ahead lightly.</p>
<p>
<jack>Come on, Em. Let's go.</jack>
</p>
<p>Emily started after him, her footsteps falling into rhythm beside his. The park was alive now with chatter, the patter of shoes, and the occasional bark of a dog.</p>
<p>But soon, she noticed something. Jack's gaze kept flicking ahead - not at the track, but at a girl running a few paces in front of them.</p>
<img src="Images/4.jpg">
<p>The girl's ponytail bounced with each step, her tight sports leggings clinging to her curves. Jack's eyes lingered a little too long.</p>
<p>Emily's chest tightened. She tried to focus on her own pace, but curiosity made her glance at him again - and yes, he was definitely watching her.</p>
<p>
<e>...So that's what caught your eye...</e>
</p>
<p>She muttered under her breath, half amused, half stung by a feeling she couldn't name.</p>
<p>Jack didn't notice. He just kept jogging, a faint smirk tugging at his lips as if caught in his own thoughts.</p>
<p>Emily's heart pounded harder, though she wasn't sure if it was from the jog or the sudden rush of emotion.</p>
[[Next|D6 Jack Jog Talk]]<<set $world.location to "Portugal - park">>
<p>Emily jogged a little closer to Jack, narrowing her eyes.</p>
<p>
<e>Jack... are you even paying attention to the run? You keep staring at that girl.</e>
</p>
<p>He blinked, caught off guard, then scratched the back of his neck with a sheepish grin.</p>
<p>
<jack>Heh... you noticed, huh?</jack>
</p>
<p>
<e>Obviously. You weren't even subtle.</e>
</p>
<p>Jack chuckled, slowing his pace just a little.</p>
<p>
<jack>Alright, fine. Truth is... I kinda like her. I'm not even into all this fitness stuff. I only come here every Saturday to see her.</jack>
</p>
<p>Emily's eyes widened slightly.</p>
<p>
<e>Wait - you mean you've been jogging just to chase your crush around the track?</e>
</p>
<p>
<jack>Pretty much.</jack>
</p>
<p>He admitted, laughing at himself. Emily smirked, shaking her head.</p>
<p>
<e>Wow, Jack. That's both cute... and kinda pathetic.</e>
</p>
<p>She teased, giving him a playful nudge with her elbow.</p>
<p>
<jack>Hey, don't make fun of me. At least I'm consistent.</jack>
</p>
<p>
<e>Mhm, sure. Mr. "I Only Exercise for Love."</e>
</p>
<p>She giggled. Jack laughed, his cheeks faintly red, but he didn't deny it.</p>
[[Next|D6 Jack Jog Bush]]<<set $world.location to "Portugal - park">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<if ndef $relations>><<set $relations to {}>><</if>>
<<if ndef $relations.Jack>><<set $relations.Jack to 0>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 3, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>They slowed down after a few laps, both panting lightly.</p>
<p>
<e>I'm gonna grab some water.</e>
</p>
<p>
<jack>I'll come too.</jack>
</p>
<p>Emily bent forward, letting the cool stream wash over her lips. Jack leaned against the side, catching his breath. But then his eyes flickered - something in the distance caught his attention.</p>
<p>Emily followed his gaze.</p>
<p>There, just a little off the trail where some bushes hid the spot from most joggers, the girl Jack had been watching was kneeling down. Her ponytail bobbed, her lips wrapped around the length of another guy's cock while his hand gripped the back of her head.</p>
<img src="Images/5.gif">
<p>Jack froze. Emily's breath hitched.</p>
<p>
<e>...Jack... is that-?</e>
</p>
<p>She whispered, her voice tight with shock. Jack's throat went dry, unable to answer.</p>
<p>Emily quickly turned her head away, her cheeks heating up, unsure if it was embarrassment, disgust... or something else entirely.</p>
[[Next|D6 Jack Jog Laugh]]<<set $world.location to "Portugal - park">>
<<run setup.Phone.refreshNotes()>>
<p>Emily bit her lip, trying to hold it in, her shoulders trembling.</p>
<p>
<jack>You can laugh, Emily... it's okay.</jack>
</p>
<p>He said softly, his own lips twitching.</p>
<img src="Images/6.jpg">
<p>That was all it took - she burst out into giggles, covering her mouth with her hand.</p>
<p>
<e>Oh my god, Jack... I'm sorry... but this is just too much!</e>
</p>
<p>She laughed, struggling to catch her breath. Jack shook his head with a grin, finally letting himself chuckle.</p>
<p>
<jack>Yeah, yeah, go ahead and laugh at my crush. Guess she wasn't exactly the angel I thought.</jack>
</p>
<p>Emily wiped a tear from the corner of her eye, still giggling.</p>
<p>
<e>Don't worry, buddy... I'll find a girl for you. Someone way better.</e>
</p>
<p>
<jack>Deal. But she better not be sneaking off into bushes.</jack>
</p>
<p>Still laughing together, the two of them walked away from the park and headed back home, the earlier awkwardness now replaced with a warm, easy bond.</p>
<<toast "Jack path: park jog">>
[[Uncle's house|D6 House Map]]
/* JD12 — after jog, check on Jack */<<set $world.location to "Portugal - Jack's room">>
<<if $day6.jackTeaseDone>>
<<goto "D6 Jack Room">>
<</if>>
<p>Emily passed by Jack's room and noticed the door half-open. He was sitting on the edge of his bed, still in his sports clothes, staring down at the floor. His expression carried that little shadow - clearly the incident in the park had gotten to him more than he let on.</p>
<p>Emily lingered at the door, thinking to herself.</p>
<p>Should she go in and try to lift his mood... or give him space?</p>
[[Tease him|D6 Jack Tease Him]]
[[Leave him be|D6 Jack Leave Him]]<<set $world.location to "Portugal - Jack's room">>
<<set $day6.jackTeaseDone to true>>
<<if ndef $relations>><<set $relations to {}>><</if>>
<<if ndef $relations.Jack>><<set $relations.Jack to 0>><</if>>
<<set $relations.Jack to Math.clamp(Number($relations.Jack) + 1, 0, 100)>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped inside with a soft smile.</p>
<p>
<e>Hey, don't tell me you're still sulking. She's not worth it, Jack.</e>
</p>
<p>He gave a faint shrug, eyes still down.</p>
<p>Emily tilted her head, then decided to play a little trick. She walked closer, pretending to check something on his desk. As she bent forward, her shorts tightened over her curves, giving Jack the perfect view.</p>
<img src="Images/7.gif">
<p>She glanced back briefly, biting her lip to hide her smirk.</p>
<p>
<e>Oops... sorry, didn't mean to get in your way.</e>
</p>
<p>She said it innocently, as if it were nothing.</p>
<p>Jack's eyes widened before he quickly turned his head, trying to act as if he hadn't seen anything. A faint blush crept over his face.</p>
<p>
<jack>...It's fine.</jack>
</p>
<p>He muttered, but a small, reluctant smile tugged at his lips.</p>
<p>Emily straightened up, pretending not to notice.</p>
<p>
<e>See? You're already smiling. Mood fixed.</e>
</p>
<p>She teased lightly, then walked out of the room, leaving Jack flustered and confused.</p>
<<toast "Jack +1 · Corruption +1">>
[[House map|D6 House Map]]
[[Emily's room|D6 Room]]
/* After Albert job talk — evening Home.txt: Jack date prep */<<set $world.location to "Portugal - living room">>
<<if $day6.jackDateNightDone>>
<<goto "D6 House Map">>
<</if>>
<<set $day6.jackDateNightDone to true>>
<<run setup.advanceTime(1)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily reaches home just as the sun dips below the rooftops, painting the hallway in a warm orange glow. She slips off her shoes and notices Jack in the living room, fixing his hair in the reflection of the TV screen.</p>
<img src="Images/1.7/1.jpg">
<p>
<e>Well, someone looks extra sharp today.</e>
</p>
<p>She says it teasingly, setting her bag on the table.</p>
<p>Jack turns, straightening his shirt collar with a grin.</p>
<p>
<jack>I've got a date. Met her on a dating app - she seems nice.</jack>
</p>
<p>
<e>A date, huh?</e>
</p>
<p>Emily raises a brow, smirking.</p>
<p>
<e>So this is why you spent half an hour in the bathroom.</e>
</p>
<p>Jack laughs, rubbing the back of his neck.</p>
<p>
<jack>Hey, first impressions matter.</jack>
</p>
<p>Emily leans against the doorway, folding her arms playfully.</p>
<p>
<e>Well, I hope she likes cologne. You might've used half the bottle.</e>
</p>
<p>Jack chuckles and grabs his jacket.</p>
<p>
<jack>Wish me luck, then.</jack>
</p>
<p>Emily smiles warmly.</p>
<p>
<e>Good luck, lover boy. Try not to get dumped before dessert.</e>
</p>
<p>Jack laughs as he leaves, the door clicking softly behind him. Emily stands there a moment, smiling to herself, before heading toward her room.</p>
<p>
<e>He actually looked kind of nervous...</e>
</p>
<p>She whispers, amused, then settles in for the evening - wondering how the date will go.</p>
<<toast "Jack is out on a date">>
[[Emily's room|D6 Room]]
[[House map|D6 House Map]]
/* ===========================================================
Night — Jack returns with drunk date girl (original D23 / ND324 / UOKI)
Girl sleeps in Emily's room → drinks vial residual → gets horny
=========================================================== */<<set $world.location to "Portugal - Emily's room">>
<<if $day6.jackGirlNightDone>>
<<goto "D6 House Map">>
<</if>>
<<set $world.time to "Night">>
<<run setup.Phone.refreshNotes()>>
<p>Emily places her phone on the bed. A soft knock comes again - a little louder this time. She walks over and opens the door.</p>
<img src="Images/1.7/3.jpg">
<p>A girl, completely drunk and swaying, stands there. Behind her is Jack, trying his best to keep her steady.</p>
<p>
<e>Jack? What's going on? Who is she?</e>
</p>
<p>
<jack>Long story... she's the girl from that dating app. We went out, but she drank way too much. I couldn't just leave her like this.</jack>
</p>
<p>
<e>Oh god... okay. Bring her in.</e>
</p>
<p>Jack nods and carefully helps the girl inside. Emily moves a chair out of the way as they bring her toward the couch.</p>
<p>
<e>You should've called me earlier.</e>
</p>
<p>
<jack>Yeah, I didn't want to bother you... it got messy really fast.</jack>
</p>
<p>Emily crosses her arms, watching him tuck a blanket around the girl.</p>
<p>
<e>So much for your big date night, huh?</e>
</p>
<p>
<jack>Yeah... not exactly how I pictured it.</jack>
</p>
<p>Emily smiles a little and shakes her head as the room falls quiet except for the faint sound of the girl snoring.</p>
[[Next|D6 Jack Girl Drink]]<<set $world.location to "Portugal - Emily's room">>
<p>The girl suddenly stirs and mumbles incoherently. Before Emily or Jack can react, she staggers toward Emily's desk.</p>
<p>
<e>Hey—wait, what are you—</e>
</p>
<p>Before Emily can stop her, the girl picks up a glass filled with a white liquid - the residual sample from the forest vial - and gulps it down.</p>
<p>
<e>No! Don't—</e>
</p>
<p>But it is too late. The glass is empty. Emily freezes, eyes widening as the girl wipes her mouth and giggles drunkenly.</p>
<p>
<jack>What the hell was that? What did she just drink?</jack>
</p>
<p>
<e>Nothing... just... some vodka.</e>
</p>
<p>Jack frowns, glancing at the glass and then back at her.</p>
<p>
<jack>White vodka? Never heard of that one.</jack>
</p>
<p>
<e>Yeah... it's, uh, special.</e>
</p>
<p>Jack doesn't seem convinced, but he is too tired to argue. Emily looks back at the girl, who has already flopped back onto the couch, mumbling softly.</p>
[[Next|D6 Jack Girl Horny]]<<set $world.location to "Portugal - Emily's room">>
<<set $day6.jackGirlNightDone to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>A few minutes later, the sample hits. The girl's breathing changes. Her eyes open - glassy, hungry. She sits up on the couch, then moves to the bed with a slow, deliberate sway.</p>
<p>Her fingers graze the waistband of her panties, sliding them down slowly. She leans back against the bed, letting herself indulge. Jack watches, his breath catching, every movement deliberate and teasing.</p>
<img src="Images/1.7/4.gif">
<p>
<e>Looks like that drink made you bold...</e>
</p>
<p>
<jack>WHAT?!</jack>
</p>
<p>
<e>Yeah... it seems to have made her a little... frisky. And don't even ask me why it's here - we should just leave her. She'll be fine by tomorrow.</e>
</p>
<p>
<jack>So... you're going to sleep with me?</jack>
</p>
<p>
<e>No! I'm sleeping in your room, and you're crashing on the sofa, idiot. Remember, you brought her here.</e>
</p>
<p>
<jack>Ugh... fine.</jack>
</p>
<p>Emily grabs a pillow and heads for Jack's room. Behind them, soft moans already start to fill her own bedroom. Jack sits on the living-room sofa, face in his hands - and tries very hard not to think about what is happening down the hall.</p>
<p>
<et>She drank it. The whole glass. What if it works the same way it did on Jack...?</et>
</p>
<<toast "Jack's date slept in your room · Corruption +1">>
[[Sleep|D6 Sleep]]<<set $world.location to "Portugal - hallway">>
<<set $day6.jackTeaseDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily paused at the doorway, watching Jack sitting there quietly. His shoulders looked heavy, his eyes still distant.</p>
<p>She thought about stepping in, maybe teasing him like always... but something in her gut told her to let him have his space this time.</p>
<p>With a soft sigh, she gently pulled the door closed.</p>
<p>
<e>He'll be fine... he just needs time.</e>
</p>
<p>She whispered to herself as she walked back toward her own room.</p>
<p>The house fell quiet again, each of them left with their own thoughts.</p>
[[House map|D6 House Map]]
[[Emily's room|D6 Room]]
/* ===========================================================
Liam story photo (original ED1234 → Hot / Cute)
Click shutter → post → Liam messages open on phone sidebar
=========================================================== */<<set $world.location to "Portugal - Emily's room">>
<<if $day6.liamFollowDone or $day6.liamStoryPosted>>
<<goto "D6 Room">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily dropped onto her bed, the soft sheets cool against her skin. She stretched with a sigh, staring at the ceiling for a moment before rolling onto her side and picking up her phone.</p>
<p>
<e>Hmm... I wonder if Liam even remembers me...</e>
</p>
<p>She murmured, scrolling through her messages - still no reply.</p>
<p>She bit her lip thoughtfully.</p>
<p>
<e>Maybe I should post something... just a little reminder.</e>
</p>
<p>Opening her social app, Emily hovered over the Add Story button. Two ideas flashed in her mind:</p>
<<link "Hot photo" "D6 Liam Camera">><<set $day6.liamStoryType to "hot">><</link>>
<<link "Cute photo" "D6 Liam Camera">><<set $day6.liamStoryType to "cute">><</link>><<set $world.location to "Portugal - Emily's room">>
<<if $day6.liamFollowDone or $day6.liamStoryPosted>>
<<goto "D6 Room">>
<</if>>
<<if not $day6.liamStoryType>>
<<set $day6.liamStoryType to "hot">>
<</if>>
<<set $day6.liamCameraMode to true>>
<<run setup.Phone.refreshNotes()>>
<p><<= $day6.liamStoryType is "cute" ? "Soft light. History book. That aesthetic vibe." : "Something confident — just enough to make him look twice.">></p>
<p>
<et>Frame the shot. Tap the shutter.</et>
</p>
<div class="ss-camera-viewfinder" style="max-width:280px;margin:1rem auto;padding:1.25rem;border:1px solid var(--border, #333);border-radius:12px;text-align:center;">
<div class="ss-camera-hint" style="opacity:0.7;font-size:0.85rem;margin-bottom:0.5rem;">Front camera · story</div>
<div class="ss-camera-mirror" style="min-height:120px;display:flex;align-items:center;justify-content:center;opacity:0.85;">
<<= $day6.liamStoryType is "cute" ? "Cute look · soft frame" : "Hot look · confident frame">>
</div>
</div>
<<link "📷 Take photo" "D6 Liam Photo Preview">><</link>>
[[Back|D6 Liam Story Choice]]<<set $world.location to "Portugal - Emily's room">>
<<if $day6.liamFollowDone or $day6.liamStoryPosted>>
<<goto "D6 Room">>
<</if>>
<<if not $day6.liamStoryType>>
<<set $day6.liamStoryType to "hot">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<<if $day6.liamStoryType is "cute">>
<img src="Images/1.7/cute.png" alt="Cute story photo" style="max-width:280px;width:100%;border-radius:12px;display:block;margin:0.75rem auto;">
<p>Ten minutes later, he might notice...</p>
<<else>>
<img src="Images/1.7/hot.png" alt="Hot story photo" style="max-width:280px;width:100%;border-radius:12px;display:block;margin:0.75rem auto;">
<p>Emily smirked at the picture — casual enough to seem innocent, with just enough confidence to catch attention. Caption ready: <em>Study grind never ends 😌📚</em></p>
<</if>>
<<link "Post to story" "D6 Liam Story Posted">><<run setup.Phone.completeLiamStory(State.variables.day6.liamStoryType || "hot")>><</link>>
[[Retake|D6 Liam Camera]]<<set $world.location to "Portugal - Emily's room">>
/* completeLiamStory should already have run from the link; heal if skipped */
<<if not $day6.liamStoryPosted>>
<<run setup.Phone.completeLiamStory(State.variables.day6.liamStoryType || "hot")>>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Story posted. Her phone buzzes almost immediately — <strong>Liam</strong>.</p>
<p>The chat is open on your phone. You can also reopen it anytime with the <strong>Phone</strong> icon on the sidebar → Messages → Liam.</p>
<<toast "Liam messaged you">>
<<link "Open Liam chat">><<run setup.Phone.openChat("liam")>><</link>>
[[Emily's room|D6 Room]]
[[House map|D6 House Map]]
/* Legacy aliases */<<goto "D6 Liam Story Choice">><<set $day6.liamStoryType to "hot">>
<<goto "D6 Liam Camera">><<set $day6.liamStoryType to "cute">>
<<goto "D6 Liam Camera">><<if $day6.liamStoryPosted or $day6.liamFollowDone>>
<<goto "D6 Liam Story Posted">>
<<else>>
<<goto "D6 Liam Camera">>
<</if>>
/* ===========================================================
Albert Day 15 — morning after Jack girl night (original Day 15 / ND15 / SD15 / KD15)
=========================================================== */<<set $world.location to "Portugal - Emily's room">>
<<if $day6.albertDay15Done>>
<<goto "D6 House Map">>
<</if>>
<<if not ($world.time is "Morning" or $world.time is "Noon")>>
<<goto "D6 House Map">>
<</if>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stirred in the dark, dragged from sleep by sharp, insistent knocks on her bedroom door.</p>
<p>Bang. Bang. Bang.</p>
<img src="Images/1.8/1.jpg">
<p>
<et>What the hell...</et>
</p>
<p>She blinked groggily, pushing hair from her face. The house was silent except for that pounding. She glanced at the clock - 7:17 a.m.</p>
<p>The knocks came again, harder.</p>
<p>
<e>Coming...</e>
</p>
<p>She swung her legs out of bed and padded to the door in the oversized t-shirt she'd fallen asleep in. No bra, no shorts - just the thin cotton shirt that barely skimmed her thighs. In her exhaustion, she hadn't thought twice about it.</p>
<p>She opened the door a crack.</p>
<p>Albert stood there, eyes dark, jaw tight. He was holding something in his fist.</p>
<p>
<e>Albert? What's wrong?</e>
</p>
<p>He pushed the door wider without asking and stepped inside, forcing her back a step. His gaze flicked down - quick, involuntary - then snapped back to her face. The hallway light behind him outlined the shape of her breasts through the shirt, nipples stiff from the cool air and clearly visible against the fabric.</p>
<img src="Images/1.8/2.jpg">
<p>Albert's throat worked. He lifted his hand.</p>
<p>Three used condoms dangled from his fingers, knotted and heavy, still glistening.</p>
<img src="Images/1.8/3.jpg">
<p>
<uncle>Found these right outside your door. Care to explain?</uncle>
</p>
<p>Emily's eyes widened. She stared at the condoms, then at him.</p>
<p>
<e>I—I don't know. They're not mine. I've been asleep.</e>
</p>
<p>Albert's gaze didn't soften. He stepped closer, crowding her space, the faint scent of alcohol on his breath.</p>
<p>
<uncle>Asleep, huh?</uncle>
</p>
<p>His eyes dropped again, lingering on the way her nipples pressed against the thin shirt before meeting hers again.</p>
<p>
<uncle>Second girl this week coming out of Jack's room. And now these - right in front of your door.</uncle>
</p>
<p>
<e>Albert, I swear—</e>
</p>
<p>He cut her off, voice dropping dangerously quiet.</p>
<p>
<uncle>I'm not convinced.</uncle>
</p>
<p>He let the condoms fall into the trash bin by her desk with a wet slap. Then he looked at her - really looked - taking in the flush on her cheeks, the way she hugged herself, the bare legs beneath the shirt.</p>
<p>
<uncle>You know what this means, Emily.</uncle>
</p>
<p>She swallowed.</p>
<p>
<e>What?</e>
</p>
<p>His hand rose slowly, thumb brushing the edge of her jaw, tilting her face up to his.</p>
<p>
<uncle>You deserve a punishment.</uncle>
</p>
<p>The words hung heavy in the air between them. Emily's breath caught. She didn't move away.</p>
[[Next|D6 Albert Day15 Punish]]<<set $world.location to "Portugal - Emily's room">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily's pulse hammered in her throat. The room felt too small with Albert standing so close, his eyes fixed on her.</p>
<p>
<e>What... what punishment?</e>
</p>
<p>Albert's gaze dropped to the trash bin where the three used condoms lay, then dragged slowly back up her body - lingering on the thin shirt clinging to her bare breasts, her nipples still hard and visible through the fabric.</p>
<p>
<uncle>You're going to put them on your face. All three. Right now.</uncle>
</p>
<p>Emily's breath caught. Heat flooded her cheeks.</p>
<p>
<e>Albert, I—</e>
</p>
<p>
<uncle>No excuses. You want me to believe you had nothing to do with this? Then take your punishment like a good girl.</uncle>
</p>
<p>Silence stretched between them, thick and electric.</p>
<p>Emily's hands trembled as they fell from her chest. She glanced at the bin, stomach twisting with a strange mix of shame and something darker, hotter.</p>
<p>She hesitated one more heartbeat. Then she reached in.</p>
<p>The first condom was still warm, heavy with cum. She lifted it carefully, the latex slick against her fingers. Swallowing hard, she pressed it to her cheek - letting the knotted end rest against her skin, the wet contents shifting slightly.</p>
<img src="Images/1.8/5.jpg">
<p>The second went across her forehead, dangling just above her brows.</p>
<img src="Images/1.8/4.gif">
<p>The third she placed over her lips, the tip brushing her mouth, the faint salty scent filling her nose.</p>
<img src="Images/1.8/6.jpg">
<p>She stood there like that - face marked with the evidence, heart pounding, thighs pressing together beneath the shirt.</p>
<p>Albert watched every second, eyes dark, breathing shallow. He didn't touch her. He didn't speak.</p>
<p>After a long moment, he simply nodded once.</p>
<p>
<uncle>Good.</uncle>
</p>
<p>Then he turned, walked to the door, and pulled it open.</p>
<p>
<uncle>Don't let me find anything like this again.</uncle>
</p>
<p>The door closed softly behind him. Emily stayed frozen in place. Only when his footsteps faded down the hall did she finally reach up - slowly - and peel them away.</p>
<<toast "Corruption +1">>
[[Bathroom|D6 Albert Day15 Shower]]<<set $world.location to "Portugal - bathroom">>
<p>She pushed off the door and padded barefoot to the bathroom, flicking on the light and locking the door behind her even though the house was silent now.</p>
<p>The mirror showed her flushed cheeks, lips slightly swollen from nervous biting, nipples still peaked beneath the thin shirt. She stripped it off quickly and stepped into the shower. Hot water hit her skin like a slap.</p>
<img src="Images/1.8/7.jpg">
<p>
<et>What the hell was that?</et>
</p>
<p>She tilted her face into the spray, trying to wash away the memory of Albert's dark stare, the weight of those used condoms, the way he'd called her a good girl.</p>
<p>
<et>He's never acted like that before. Never.</et>
</p>
<img src="Images/1.8/8.jpg">
[[Kitchen|D6 Albert Day15 Kitchen]]<<set $world.location to "Portugal - kitchen">>
<<set $day6.albertDay15Done to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily padded down the stairs still half-asleep, wearing loose sleep shorts and a thin white tank top - no bra again. The smell of coffee led her to the kitchen.</p>
<p>Jack was already there, leaning against the counter in sweatpants, sipping from a mug. He looked up as she entered, and his expression shifted to immediate guilt.</p>
<p>
<jack>Hey... morning. Listen, Em - I'm really sorry about last night.</jack>
</p>
<p>Emily paused in the doorway, arms folding across her chest.</p>
<p>
<e>You should be.</e>
</p>
<p>
<jack>Those condoms Albert found? They were mine. From... yesterday. With the girl. I told her to throw them away, but she must've just tossed them in the hall. Right outside your door.</jack>
</p>
<p>
<e>You told her to throw them away - and she dumped them in front of my room?!</e>
</p>
<p>
<jack>I didn't tell her whose room it was! I swear—</jack>
</p>
<p>
<e>You absolute idiot!</e>
</p>
<p>Anger flared. Emily lunged forward. Jack yelped and bolted around the kitchen island. She chased after him - and as she passed the pantry door, the thin strap of her tank top snagged on a protruding nail head.</p>
<p>Riiip.</p>
<p>The fabric tore cleanly down the side seam. The front panel flopped forward, exposing her entirely.</p>
<img src="Images/1.8/9.gif">
<p>Emily skidded to a halt, gasping. Jack's gaze dropped involuntarily, locked on her exposed chest. Time froze for a second.</p>
<p>
<et>Oh god—</et>
</p>
<p>
<e>Don't look!</e>
</p>
<p>Jack snapped his eyes up, face bright red.</p>
<p>
<jack>Shit—sorry—I didn't—</jack>
</p>
<p>Emily spun on her heel, arms crossed tight over her chest, and bolted upstairs. Her bedroom door slammed hard enough to rattle the frame.</p>
<p>
<jack>...Fuck.</jack>
</p>
<<toast "Albert Day 15 done · Corruption +1">>
[[Room|D6 Albert Day15 Ready]]<<set $world.location to "Portugal - Emily's room">>
<<run setup.Phone.refreshNotes()>>
<p>Emily slammed her bedroom door and leaned against it, chest heaving. She changed fast - bra, jeans, fitted top - hair in a high ponytail.</p>
<p>
<et>College first. Classes. Act normal. But after...</et>
</p>
<p>
<e>Not now. College. Survive the day.</e>
</p>
<p>She grabbed her bag. Morning light was already at the windows - and the basketball court would be open if she wanted to blow off steam.</p>
[[College|D6 College Map]]
[[House map|D6 House Map]]
/* Main: Kelly forest message only (B2D12 Kelly half) — independent of Liam */<<set $world.location to "Portugal - Emily's room">>
<<run setup.Phone.seedKellyForestMessage()>>
<<set $day6.phoneNotif to true>>
<<run setup.Phone.refreshNotes()>>
<p>Emily flopped onto her bed and unlocked her phone. Another notification buzzed in hard - Kelly.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">19:42</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#2dd4bf;color:#2dd4bf;">K
<div class="terminal-avatar-dot" style="background:#2dd4bf;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Kelly</div>
<div class="terminal-header-status" style="color:#2dd4bf;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label" style="color:#2dd4bf;">KELLY</div>
<div class="bubble only">Hey Em! Come to the forest with me. We've gotta explore the next gate — don't be late.</div>
<div class="msg-ts">19:41</div>
</div>
</div>
</div>
</div>
<p>Emily blinked, sitting up straighter.</p>
<p>
<e>The... next gate? Already?</e>
</p>
<p>Excitement mixed with nerves. The sidebar Phone icon pulsed - Kelly's chat was saved in Messages too.</p>
[[Continue|D6 Phone Notify B2 Done]]<<set $day6.kellyForestMsgSeen to true>>
<<set $day6.phoneNotif to false>>
<<run setup.Phone.markKellyForestSeen()>>
<<run setup.Phone.refreshNotes()>>
<<toast "Forest unlocked — Kelly">>
<p>Emily locked her phone, heart still racing. Kelly was waiting. The forest wouldn't wait forever.</p>
[[House map|D6 House Map]]
[[Forest|D6 Forest Pond Meet]]
[[Town map|D6 Town Map]]
/* NTR: David's phone blink again (original) — after Jack vial, night */<<set $world.location to "David's room">>
<<set $day6.davidBlinkDone to true>>
<<run setup.Phone.refreshNotes()>>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere · Night</div>
</div>
<p>David was still staring at the ceiling when it buzzed again.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">23:18</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
<span class="david-anon-tag">1 new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.4/6.gif" alt="Photo">
</div>
<div class="msg-ts">23:17 - Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Lol. This time even the face is visible. Look how wet she is... she's going out of your hands, bro.</div>
<div class="msg-ts">23:17</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">You bastard. It's obvious you took this yourself. Emily would never send you anything.</div>
<div class="msg-ts right">23:18</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Stop this pathetic game. You're not getting to me.</div>
<div class="msg-ts right">23:18</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Just think David... why is your girlfriend at college with her legs spread, fingers buried deep in her dripping pussy, moaning like a slut? Haha. Loser.</div>
<div class="msg-ts">23:19</div>
</div>
</div>
</div>
<p style="text-align:center;font-style:italic;color:#71717a;margin:1rem 0;">…</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">Why the fuck is she doing this?</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">He talks like it's inevitable...</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">Like she's already slipping out of my hands.</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">Is he actually right?</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">No. Shut up.</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">She's just in a new city. New environment. New temptations.</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">She's young and horny... she probably just needed to cum.</p>
<p style="text-align:center;font-style:italic;color:#a1a1aa;">That doesn't make her his.</p>
<p style="text-align:center;font-style:italic;color:#22d3ee;">Emily is still mine.</p>
<p style="text-align:center;font-style:italic;color:#22d3ee;">She's always been mine.</p>
<p style="text-align:center;font-style:italic;color:#22d3ee;">And I'll be damned if I let him steal her from me.</p>
</div>
<p>Emily never sees this exchange. Somewhere across the ocean, David clenches his phone until the screen goes dark.</p>
<<toast "Elsewhere: David">>
[[Uncle's house|D6 House Map]]
/* Morning after Kelly stays over (original KD8 non-virgin branch) */<<set $world.location to "Portugal - kitchen">>
<<set $day6.kellyKitchenDone to true>>
<<set $day6.kellyPhone to true>>
<<set $day6.kellyParkQuest to true>>
<<set $day6.ateToday to true>>
<<set $day6.breakfast to true>>
<<run setup.Phone.unlockKelly()>>
<<run setup.Phone.refreshNotes()>>
<p>Emily steps into the kitchen, still a little groggy, and is greeted by the sound of laughter.</p>
<p>At the table sit Jack, Albert, and Kelly - plates already half-full, orange juice glasses in hand. Kelly is in the middle of a story, gesturing animatedly while the two boys laugh.</p>
<p>Jack looks up first.</p>
<p>
<jack>Well look who finally woke up.</jack>
</p>
<p>Albert grins.</p>
<p>
<uncle>Your friend is super cool, Emily. She's funny as hell.</uncle>
</p>
<p>Kelly gives Emily a playful smirk.</p>
<p>
<kelly>Just trying to keep them entertained while you snoozed through half the morning.</kelly>
</p>
<p>Emily chuckles and sits down as Jack passes her a plate of food.</p>
<p>
<e>Glad someone's keeping things lively.</e>
</p>
<p>The four of them eat together - warmth, jokes, the occasional clatter of forks.</p>
<p>After breakfast Kelly stands, bag over one shoulder.</p>
<p>
<kelly>I should go before Albert adopts me. Check your phone later, Em - I'll text you.</kelly>
</p>
<p>She leaves with a wave. Emily's phone buzzes a minute later.</p>
<p>
<et>Alright... time to move. Big day ahead.</et>
</p>
<<toast "Kelly on phone · check Messages">>
[[House map|D6 House Map]]<<set $world.location to "Portugal - kitchen">>
<<set $day6.ateToday to true>>
<<set $day6.breakfast to true>>
<p>Toast, leftovers, something simple. Her stomach stops complaining.</p>
<<toast "Ate">>
[[Kitchen|D6 Kitchen]]
[[House map|D6 House Map]]<<set $world.location to "Portugal - kitchen">>
<p>Cold water. Clear head for half a second longer.</p>
[[Kitchen|D6 Kitchen]]
[[House map|D6 House Map]]
/* -- Bathroom: shower, masturbate, NTR camera revenge -- */<<set $world.location to "Portugal - bathroom">>
/* NTR: camera mode for phone Camera app */
<<if $day6.ryanCheatMsg and not $day6.ryanCheatPhoto>>
<<set $day6.cameraMode to true>>
<<run setup.Phone.refreshNotes()>>
<<= setup.locBannerHtml("bathroom", "Bathroom", $world.time)>>
<p>She locks the door. The quiet click echoes in the small space.</p>
<p>Standing in front of the mirror, she looks at herself a long moment. Not hurt. Not broken. Something colder.</p>
<p>She unlocks her phone. The Camera icon waits on the home screen.</p>
[[House map|D6 House Map]]
<<else>>
<<= setup.locBannerHtml("bathroom", "Bathroom", $world.time)>>
<p>Tile. Mirror. Steam ghosts from whoever used it last. Lock on the door that actually works.</p>
<div class="loc-grid">
<<if not $day6.shower>>
<<link '<span class="loc-card"><span class="loc-name">Shower</span><span class="loc-sub">Get clean</span></span>' "D6 Shower">><</link>>
<<else>>
<span class="loc-locked"><span class="loc-name">Shower</span><span class="loc-sub">Already done</span></span>
<</if>>
<<link '<span class="loc-card"><span class="loc-name">House map</span><span class="loc-sub">Leave</span></span>' "D6 House Map">><</link>>
</div>
<</if>><<set $world.location to "Portugal - bathroom">>
<<set $day6.shower to true>>
<img src="Images/shower.gif">
<p>Hot water. Soap. The day starts cleaner - or ends softer - depending on when she chose this.</p>
<<toast "Showered">>
[[Just shower|D6 Bathroom]]
<<link 'Touch herself while she is at it' "D6 Shower Masturbate">><</link>>
[[House map|D6 House Map]]<<set $world.location to "Portugal - bathroom">>
<video src="Images/shower_mast.webm" controls style="width:100%;display:block;"></video>
<p>Warm water runs down her skin as her hand drifts lower, unhurried, water and touch blurring together until her breath goes ragged and she has to brace herself against the tile.</p>
<p>
<et>Just stress. Just a body. Nobody needs to know.</et>
</p>
<<if not $flags.showerMastCorGiven>>
<<set $flags.showerMastCorGiven to true>>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<toast "Corruption +1">>
<</if>>
[[Bathroom|D6 Bathroom]]
[[House map|D6 House Map]]
/* ═══════════════════════════════════════════════════════════
NTR: Ryan claims David is cheating → bathroom camera nude
═══════════════════════════════════════════════════════════ */<<set $world.location to "Portugal - Emily's room">>
<<set $day6.ryanCheatMsg to true>>
<<run setup.Phone.unlockRyan()>>
<<run setup.Phone.seedRyanCheatThread()>>
<<run setup.Phone.refreshNotes()>>
<p>Emily drops her bag by the door and collapses onto her bed, staring at the ceiling.
Her phone buzzes on the pillow. She reaches for it lazily - then freezes when she sees the name.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">20:14</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#7c3aed;color:#7c3aed;">R
<div class="terminal-avatar-dot" style="background:#7c3aed;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Ryan</div>
<div class="terminal-header-status" style="color:#7c3aed;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Hi Emily... I'm really sorry to do this but I found something you need to see.</div>
<div class="msg-ts">20:12</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">What? What did you find?</div>
<div class="msg-ts right">20:13</div>
</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="img-bubble david-anon-photo">
<video src="Images/2.3/21.mp4" controls style="width:100%;display:block;"></video>
</div>
<div class="msg-ts">20:13 - Video</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">I think... David is cheating on you. I'm so sorry Emily.</div>
<div class="msg-ts">20:14</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Wtf. WHAT THE FUCK IS THIS. Is that... is that actually him???</div>
<div class="msg-ts right">20:14</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">I wish I was wrong. I really do.</div>
<div class="msg-ts">20:15</div>
</div>
</div>
</div>
</div>
<p>Emily's breath hitches. The proof looks clear - David cheating.</p>
<p>A bitter laugh escapes her.</p>
<p>
<e>So this is how it is...</e>
</p>
<p>Shock fades, replaced by something colder.</p>
<p>
<e>If this is a game, then I'm not losing.</e>
</p>
<p>She needs the bathroom. Privacy. Her phone.</p>
[[Bathroom|D6 Bathroom]]
/* ===========================================================
NTR: David claims the cheat video was AI (original Cheat_counter)
=========================================================== */<<set $world.location to "Portugal - Emily's room">>
<<set $day6.davidCounterDone to true>>
<<set $day6.davidCounterReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>The sunlight crept through the curtains.
Emily stirred, reaching for her phone before she was even fully awake.
The screen was full of notifications.
All from David.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">08:14</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">David</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">many</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">LAST NIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Emily please pick up.</div>
<div class="msg-ts">23:02</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">I've been calling you all night.</div>
<div class="msg-ts">23:18</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">That video is not me. I swear on everything.</div>
<div class="msg-ts">23:41</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Emily that video is made with AI. It's not me. Somebody created that shit to break us apart. Please trust me.</div>
<div class="msg-ts">00:07</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">I would never do that to you. Never.</div>
<div class="msg-ts">00:12</div>
</div>
<div class="day-divider">THIS MORNING</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Emily. You're awake. Please just hear me out.</div>
<div class="msg-ts">08:11</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">I found a way to prove it. Check this.</div>
<div class="msg-ts">08:12</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Deepware - AI Video Detector. Run the video through it. You'll see. It flags it as AI generated. Every frame.</div>
<div class="msg-ts">08:12</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">David... it flagged it. It's AI.</div>
<div class="msg-ts right">08:13</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">I am so sorry babes. I genuinely thought you cheated on me. I should have picked up. I should have trusted you.</div>
<div class="msg-ts right">08:13</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">I'm so sorry. I really am.</div>
<div class="msg-ts right">08:14</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Hey. Stop. It's okay.</div>
<div class="msg-ts">08:14</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">You saw something that looked real. Anyone would have believed it. I'm not angry at you.</div>
<div class="msg-ts">08:15</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">But promise me something. No matter what you see, no matter what anyone sends you - come to me first. Always. Okay?</div>
<div class="msg-ts">08:15</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">I love you. That's the only thing that's real.</div>
<div class="msg-ts">08:16</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">I love you too. I won't ever doubt you again.</div>
<div class="msg-ts right">08:16</div>
</div>
</div>
</div>
</div>
<p>The morning light settled over everything like nothing had happened.
But everything had.</p>
[[Continue|D6 David Cheat Aftermath]]<<set $world.location to "Portugal - Emily's room">>
<<run setup.Phone.refreshNotes()>>
<p>Emily reached for her phone again.
She saw Ryan's message from last night still sitting there unanswered.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">08:22</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#7c3aed;color:#7c3aed;">R
<div class="terminal-avatar-dot" style="background:#7c3aed;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Ryan</div>
<div class="terminal-header-status" style="color:#7c3aed;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">LAST NIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Can I have one with your face this time?</div>
<div class="msg-ts">23:50</div>
</div>
<div class="day-divider">THIS MORNING</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Ryan... that video you sent me about David. It was AI generated.</div>
<div class="msg-ts right">08:20</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Someone made it to mess with us. It wasn't real.</div>
<div class="msg-ts right">08:20</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Wait... what? Are you serious?</div>
<div class="msg-ts">08:21</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Emily I had no idea. I genuinely thought it was real. I am so sorry for putting you through that.</div>
<div class="msg-ts">08:21</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">I should have verified before sending it. That was wrong of me.</div>
<div class="msg-ts">08:22</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">It's okay. No worries. But Ryan... please. Just forget everything that happened between us. All of it. And please don't say a word to David. About any of it.</div>
<div class="msg-ts right">08:22</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Of course Emily. You have my word. Don't worry. It stays between us. All of it.</div>
<div class="msg-ts">08:23</div>
</div>
</div>
</div>
</div>
<p>But the moment Emily's chat closed on his screen - Ryan's expression changed completely.</p>
<p>
<ryan>That bastard actually told her about the AI video.</ryan>
</p>
<p>
<ryan>I was this close to getting a video with her face.</ryan>
</p>
<p>Ryan's phone lit up. David.</p>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Ryan's perspective</div>
</div>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">08:24</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">David</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">ENCRYPTED</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">What happened? You were this close to getting a video with her face.</div>
<div class="msg-ts">08:24</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">I told you she wouldn't send it. Stop wasting my time with random videos. I trust my girl completely.</div>
<div class="msg-ts">08:24</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Cuck.</div>
<div class="msg-ts right">08:25</div>
</div>
</div>
</div>
</div>
<p>Emily never sees that exchange. She only knows David is innocent - and Ryan apologized.</p>
<<toast "David cleared — for now">>
[[Uncle's house|D6 House Map]]
/* ===========================================================
NTR: Ryan night walk (original BLD10 / Night Walk)
=========================================================== */<<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Night">>
<<run setup.Phone.unlockRyan()>>
<<run setup.Phone.refreshNotes()>>
<p>Emily lay on her bed, staring at the ceiling. Sleep wouldn't come.</p>
<p>With a quiet sigh, she reached for her phone.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:41</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#7c3aed;color:#7c3aed;">R
<div class="terminal-avatar-dot" style="background:#7c3aed;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Ryan</div>
<div class="terminal-header-status" style="color:#7c3aed;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Emily... are you awake?</div>
<div class="msg-ts">22:40</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Yeah, I am.</div>
<div class="msg-ts right">22:40</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Wanna go for a night walk?</div>
<div class="msg-ts">22:41</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Hmm... okay. I've had a stressful day. Maybe that'll help.</div>
<div class="msg-ts right">22:41</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Alright. Send me your address, I'll be there in 10 minutes.</div>
<div class="msg-ts">22:42</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Okay.</div>
<div class="msg-ts right">22:42</div>
</div>
</div>
</div>
</div>
<p>Emily stared at the last message for a moment... then slowly got up.</p>
[[Go with Ryan|D6 Ryan Night Walk]]<<set $world.location to "Portugal - street night">>
<<set $day6.nightWalkDone to true>>
<<set $day6.nightWalkReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped outside, the cool night air brushing against her skin like a gentle whisper.
Headlights slowed in front of her.
Ryan's car.</p>
<img src="Images/2.4/7.jpeg">
<p>He parked smoothly to the side and stepped out, his familiar smile lighting up the darkness.</p>
<p>
<ryan>Ready?</ryan>
</p>
<p>
<e>Yeah... let's go.</e>
</p>
<p>They started walking side by side down the quiet street. At first, it was just easy college talk - classes, professors, random jokes that made them both chuckle.</p>
<p>But after a while, Ryan glanced at her, his voice turning softer, more careful.</p>
<p>
<ryan>Hey... you said you were really stressed earlier. What's going on? You can talk to me.</ryan>
</p>
<p>Emily looked straight ahead, biting her lip as the streetlights flickered across her face.</p>
<p>
<e>I... I really shouldn't tell you this.</e>
</p>
<p>
<ryan>Come on, Em... It's me. You know you can trust me, right? Whatever it is, I'm here.</ryan>
</p>
<p>She took a shaky breath, her voice barely above a whisper.</p>
<p>
<e>You know about me and David... don't you? We've been together for six years...</e>
</p>
<p>Her voice cracked slightly.</p>
<p>
<e>And I love him. God, I really do... But after coming here... everything changed. I met someone. Liam. And... I think I'm starting to have real feelings for him too. It's tearing me apart... because I never wanted this to happen.</e>
</p>
<p>
<npc>Ryan (thinking):</npc> There it is.
</p>
[[Continue|D6 Ryan Night Walk 2]]<<set $world.location to "Portugal - street night">>
<p>They kept walking under the quiet street lights.</p>
<p>
<e>Hey Ryan... guess what happened today? I posted a photo on social media and Liam actually reacted to it! We ended up chatting for hours. He was so sweet and funny... I can't believe we talked that long!</e>
</p>
<p>She was smiling brightly, her eyes sparkling as she spoke - then the smile faded.</p>
<p>
<e>Oh no... I shouldn't be this excited. This feels like cheating on David...</e>
</p>
<p>Ryan gently took her hand in his and held it warmly.</p>
<p>
<ryan>It's okay, Emily. You're just talking. There's nothing wrong with making new friends. You don't have to feel guilty for being happy.</ryan>
</p>
<p>He kept holding her hand tightly as they continued walking. His touch was comforting and his thumb lightly stroked the back of her hand.</p>
<img src="Images/2.4/8.jpg">
<p>
<et>His hand feels so warm... I shouldn't be holding it but... it feels nice.</et>
</p>
<p>Just then, Emily's phone vibrated in her pocket. She pulled it out with her free hand and saw a message from David.</p>
<p><em>David: Hi Emily, What are you doing?</em></p>
<p>
<et>Shit... David messaged me right now.</et>
</p>
[[Continue|D6 Ryan Night Walk Lie]]<<set $world.location to "Portugal - street night">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily looked at the message from David, her heart beating faster. She was still holding Ryan's hand.</p>
<p>
<e>Ryan... what should I do? He won't like it if he knows I'm on a night walk with a boy right now.</e>
</p>
<p>Ryan squeezed her hand gently and gave her a calm smile.</p>
<p>
<ryan>Just lie to him. Tell him you're going to sleep. Simple.</ryan>
</p>
<p>Emily hesitated for a second, then nodded. She quickly typed a reply to David while still holding Ryan's hand.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:55</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">David</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Hi Emily, What are you doing?</div>
<div class="msg-ts">22:54</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Just about to sleep. Long day. Love you.</div>
<div class="msg-ts right">22:55</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Okay babes. Sleep well. I love you too.</div>
<div class="msg-ts">22:55</div>
</div>
</div>
</div>
</div>
<p>She locked the phone. Ryan was still holding her hand. The street felt quieter than before.</p>
<p>
<ryan>See? Easy. Come on - a little further, then I'll walk you home.</ryan>
</p>
<p>They walked a while longer under the lights. When he left her at the door, his smile lingered longer than it should have.</p>
<<toast "Corruption +1">>
[[Uncle's house|D6 House Map]]
/* ===========================================================
NTR: Second night walk (3 days after first) — Jack peek + David evidence
Original chain: Jack_peek → Meanwhile, David again get a message again
=========================================================== */<<set $world.location to "Portugal - Emily's room">>
<<set $world.time to "Night">>
<<run setup.Phone.unlockRyan()>>
<<run setup.Phone.refreshNotes()>>
<p>Emily lay in the dark, eyes half closed. The room was quiet. She was almost asleep when her screen lit up.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:48</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#7c3aed;color:#7c3aed;">R
<div class="terminal-avatar-dot" style="background:#7c3aed;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Ryan</div>
<div class="terminal-header-status" style="color:#7c3aed;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
<span class="david-anon-tag">new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Emily... you up?</div>
<div class="msg-ts">22:47</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Barely. What's up?</div>
<div class="msg-ts right">22:47</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#7c3aed;">RYAN</div>
<div class="bubble only">Night walk again? Same as last time. Clear your head.</div>
<div class="msg-ts">22:48</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">...Fine. Give me five.</div>
<div class="msg-ts right">22:48</div>
</div>
</div>
</div>
</div>
<p>She stared at the last message for a long moment. Then she got up.</p>
[[Go with Ryan|D6 Ryan Second Night Walk]]<<set $world.location to "Portugal - street night">>
<<set $day6.jackPeekReady to false>>
<<run setup.Phone.refreshNotes()>>
<p>Emily stepped outside. The cool night air brushed her skin. Ryan was already waiting under a streetlight, hands in his pockets, that familiar smile.</p>
<img src="Images/2.4/7.jpeg">
<p>
<ryan>Ready?</ryan>
</p>
<p>
<e>Yeah... let's go.</e>
</p>
<p>They walked side by side down the quiet street. Easy talk at first - classes, dumb professors - until Ryan gently took her hand again, fingers intertwining like last time.</p>
<img src="Images/2.4/8.jpg">
<p>
<et>His hand again... I shouldn't. But it still feels warm.</et>
</p>
<p>Just then, Emily's phone vibrated in her pocket. She pulled it out with her free hand and saw a message from David.</p>
<p><em>David: Hi Emily, What are you doing?</em></p>
<p>
<et>Shit... David messaged me right now.</et>
</p>
[[Continue|D6 Ryan Second Walk Lie]]<<set $world.location to "Portugal - street night">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>Emily looked at the message from David, her heart beating faster. She was still holding Ryan's hand.</p>
<p>
<e>Ryan... what should I do? He won't like it if he knows I'm on a night walk with a boy right now.</e>
</p>
<p>Ryan squeezed her hand gently and gave her a calm smile.</p>
<p>
<ryan>Just lie to him. Tell him you're going to sleep. Simple.</ryan>
</p>
<p>Emily hesitated for a second, then nodded. She quickly typed a reply to David while still holding Ryan's hand.</p>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">22:55</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">David</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot"></div>
ONLINE
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Hi Emily, What are you doing?</div>
<div class="msg-ts">22:54</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Just about to sleep. Long day. Love you.</div>
<div class="msg-ts right">22:55</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID</div>
<div class="bubble only">Okay babes. Sleep well. I love you too.</div>
<div class="msg-ts">22:55</div>
</div>
</div>
</div>
</div>
<p>
<et>I just lied to him... while holding another guy's hand. This feels so wrong... but why does it feel exciting too?</et>
</p>
<p>
<ryan>See? Easy. No stress.</ryan>
</p>
<p>Emily smiled weakly. Her phone was silent now - but her mind was racing. They kept walking, fingers still intertwined.</p>
<<toast "Corruption +1">>
[[Continue|D6 Jack Peek]]<<set $world.location to "Portugal - house exterior night">>
<<set $player.corruption to Math.clamp(Number($player.corruption) + 1, 0, 100)>>
<<run setup.Phone.refreshNotes()>>
<p>They continued walking, still holding hands. As they passed near the house, a warm lamp glowed behind Jack's half-open blinds - and a soft, rhythmic moan drifted out into the night.</p>
<p>Ryan smirked and leaned closer.</p>
<p>
<ryan>Hey... what if we peek? Just for a second. See what's really going on.</ryan>
</p>
<p>Emily's eyes widened.</p>
<p>
<et>Peek? That's so wrong... but... I'm curious.</et>
</p>
<p>
<e>Umm... I don't know... that feels creepy.</e>
</p>
<p>Ryan gave her hand a gentle squeeze.</p>
<p>
<ryan>Come on, just a quick look. No one will know.</ryan>
</p>
<p>Emily bit her lip, hesitating for a few seconds, then nodded shyly.</p>
<p>
<e>Okay... just for a second.</e>
</p>
<p>They quietly sneaked toward Jack's window. Ryan stood behind her as they both peeked inside.</p>
<p>Inside the dimly lit room, a girl was on all fours on the bed. Jack was behind her, fucking her roughly. The sound of skin slapping and her loud moans could be heard even from outside. He gripped her hips hard, thrusting deep and fast.</p>
<img src="Images/2.4/9.gif">
<p>
<et>Oh fuck... they're really going at it. So rough...</et>
</p>
<p>She watched for a few more seconds, heart racing, before pulling back. She instinctively squeezed Ryan's hand tighter, her fingers digging into his palm.</p>
<p>
<e>I... I should go now.</e>
</p>
<p>Emily quickly let go of Ryan's hand, her face flushed.</p>
<p>
<e>Goodnight, Ryan.</e>
</p>
<p>She hurried back inside without waiting for his reply, slipped in quietly, and went straight to her room. She changed into her night clothes and got into bed, her mind replaying everything she had just seen.</p>
<p>
<et>I can't believe I just watched them fucking... and I held Ryan's hand the whole time... what is happening to me?</et>
</p>
<<toast "Corruption +1">>
[[Sleep|D6 Ryan David Hand Evidence]]<<set $world.location to "David's room">>
<<set $day6.jackPeek to true>>
<<run setup.Phone.refreshNotes()>>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Meanwhile...</div>
</div>
<p>David was lying in bed, still smiling from Emily's goodnight message. Then the notification dropped. Same unknown number. The smile faded.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">23:12</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">UNKNOWN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TONIGHT</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">haha loser. how are you</div>
<div class="msg-ts">23:10</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Stop messaging me.</div>
<div class="msg-ts right">23:10</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">I will. As soon as Emily becomes mine. By the way... see this.</div>
<div class="msg-ts">23:11</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only img-bubble">
<img src="Images/2.4/8.jpg" alt="Emily holding Ryan's hand" style="width:100%;max-width:200px;border-radius:8px;display:block;">
</div>
<div class="msg-ts">23:11</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">You messaged her, right? She told you she was about to sleep.</div>
<div class="msg-ts">23:12</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">She was with me at that time. Walking. Holding my hand. And she lied to you.</div>
<div class="msg-ts">23:12</div>
</div>
<div class="msg-group">
<div class="sender-label">UNKNOWN</div>
<div class="bubble only">Holding hands isn't cheating, right? Just wait a few more days. I'll have a lot more to send you.</div>
<div class="msg-ts">23:13</div>
</div>
</div>
</div>
<p style="text-align:center;font-style:italic;color:var(--text-dim);margin-top:1.25rem;line-height:1.9;">
She said she was about to sleep.<br>
She said she was in bed.<br>
She was with him.<br>
Holding his hand.<br>
<span style="color:#ff0055;">And she lied to me.</span><br>
<span style="color:#ff0055;">Emily actually lied to me.</span><br>
What else has she lied about.<br>
What else don't I know.
</p>
</div>
<<toast "David saw the truth">>
[[Continue|D6 Sleep]]
/* ===========================================================
NTR: David gets Emily's nude from Ryan, then calls her
=========================================================== */<<set $world.location to "David's room">>
<<set $day6.pendingDavidNude to false>>
<<set $day6.davidSawNude to true>>
<div class="david-anon-scene">
<div class="david-anon-frame">
<div class="david-anon-kicker">Elsewhere</div>
</div>
<p>David was staring blankly at his phone when the notification dropped. Same unknown number. His chest tightened before he even tapped it.</p>
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">20:22</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar">?
<div class="terminal-avatar-dot"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">RYAN</div>
<div class="terminal-header-status">
<div class="terminal-enc-dot"></div>
ENCRYPTED
</div>
</div>
<span class="david-anon-tag">1 new</span>
</div>
<div class="terminal-body david-anon-body">
<div class="day-divider">TODAY</div>
<div class="msg-group david-anon-photo-msg">
<div class="sender-label">RYAN</div>
<div class="img-bubble david-anon-photo">
<img src="Images/2.3/22.jpg" alt="Photo of Emily">
</div>
<div class="msg-ts">20:21 - Photo</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Recognize her?</div>
<div class="msg-ts">20:21</div>
</div>
<div class="msg-group">
<div class="sender-label" style="color:#e9d5ff;">ME</div>
<div class="bubble only player">Nice try. That's not Emily.</div>
<div class="msg-ts right">20:22</div>
</div>
<div class="msg-group">
<div class="sender-label">RYAN</div>
<div class="bubble only">Really? Then call her. Go on. I'll wait.</div>
<div class="msg-ts">20:22</div>
</div>
</div>
</div>
<p>David's hands are shaking. He closes the chat and goes straight to Emily's name.</p>
</div>
[[Call Emily|D6 David Calls Emily]]<<set $world.location to "David's room">>
<<set $day6.davidCalledEmily to true>>
<<run setup.Phone.refreshNotes()>>
<div class="david-anon-scene">
<div class="terminal-container david-anon-phone">
<div class="terminal-topbar">
<span class="david-anon-clock">20:23</span>
<div class="terminal-topbar-right">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">E
<div class="terminal-avatar-dot" style="background:#00f2ff;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">Emily</div>
<div class="terminal-header-status" style="color:#00f2ff;">CALLING...</div>
</div>
</div>
<div class="terminal-body david-anon-body" style="text-align:center;">
<p style="color:#22d3ee;font-size:0.85rem;padding:0.5rem 0;">Calling Emily...</p>
<p style="color:#f87171;font-size:0.85rem;padding:0.35rem 0;">Call declined.</p>
<p style="color:#22d3ee;font-size:0.85rem;padding:0.5rem 0;">Calling Emily...</p>
<p style="color:#f87171;font-size:0.85rem;padding:0.35rem 0;">Call declined.</p>
<p style="color:#22d3ee;font-size:0.85rem;padding:0.5rem 0;">Calling Emily...</p>
<p style="color:#f87171;font-size:0.85rem;padding:0.35rem 0;">No answer.</p>
</div>
</div>
<p>
<david>She's not picking up.</david>
</p>
<p>
<david>Is this actually happening? Nah - that bastard is just messing with me.</david>
</p>
<p>
<david>What do I do.</david>
</p>
</div>
<p>Back in Portugal, Emily's phone finally goes quiet. The house feels smaller. Jack's door is ajar down the hall.</p>
[[Uncle's house|D6 House Map]]<<set $world.location to "Portugal - job agency">>
<<set $day6.leftHome to true>>
<<if not $day6.ekonAgencyUnlocked>>
<<goto "D6 Town Map">>
<</if>>
<<if $day6.ekonMet>>
<<goto "D6 Ekon Warehouse">>
<</if>>
<p>Emily approaches the building, its small facade almost hiding it among the other structures on the street. From the outside it looks like a modest, ordinary company - nothing that would hint at the kind of work she might be stepping into.</p>
<img src="Images/30.jpg">
<p>Taking a deep breath, she pushes the glass door open and steps inside. The faint hum of computers and soft chatter greets her. A sleek reception desk stands at the center, behind which a young woman types quietly.</p>
<p>
<e>Hi... I'm here to meet Mr. Ekon.</e>
</p>
<p>The receptionist looks up with a polite smile.</p>
<p>
<npc>Receptionist:</npc> Of course. You can meet him in his office. Go straight down the hall and take the first door on your left.
</p>
<p>Emily nods, her stomach fluttering.</p>
<p>
<e>Alright... here goes nothing.</e>
</p>
[[Ekon's office|D6 Ekon Office]]<<set $world.location to "Portugal - Ekon's office">>
<p>Emily pushes the door open and steps inside.</p>
<p>Mr. Ekon sits behind a sleek desk, shuffling papers. His sharp eyes lift when he notices her.</p>
<p>
<e>Mr. Ekon, Albert sent me here.</e>
</p>
<p>Ekon's lips curl into a small smile.</p>
<p>
<ekon>Ah, I see. Kera, you can leave for now.</ekon>
</p>
<p>Emily blinks, confused. A young woman who has cum on her face - seated near the bottom of the table - quickly stands and walks out, looking flustered.</p>
<img src="Images/cum.jpg">
<p>
<e>What... just now?</e>
</p>
<p>Ekon laughs lightly, leaning back in his chair.</p>
<p>
<ekon>Don't worry, you won't have to do anything like that... at least, not for now. Just come in, sit, and let's discuss the opportunity I have for you.</ekon>
</p>
<p>Emily's mind races. She sinks into the chair opposite him, trying to focus on what kind of work Mr. Ekon has in mind.</p>
[[Next|D6 Ekon Hire]]<<set $world.location to "Portugal - Ekon's office">>
<<set $day6.ekonMet to true>>
<<set $day6.ekonWarehouse to true>>
<<run setup.ekonEnsure()>>
<<run setup.Phone.refreshNotes()>>
<p>
<ekon>Yes, Albert mentioned you. He said you're ready to start working, so we'll begin today.</ekon>
</p>
<p>Emily nods, listening intently.</p>
<p>
<ekon>Delivery job. You pick up sealed parcels here - or at the warehouse after today - and drop them at the addresses I assign. One rule: <strong>don't open the boxes</strong>. Random routes. Random chaos. You get paid per completed shift.</ekon>
</p>
<p>
<ekon>One shift a day. Do it right, and you climb the ranks. Albert will care when you hit level 2.</ekon>
</p>
<p>
<e>Understood. I'll make sure they're delivered.</e>
</p>
<p>
<ekon>Good. Warehouse is on the town map. Clock in when you're ready - I'll load three stops for you.</ekon>
</p>
<<toast "Delivery job · Lv 1 · warehouse unlocked">>
[[Town map|D6 Town Map]]
[[Ekon warehouse|D6 Ekon Warehouse]]
/* ── Warehouse shift minigame hub ── */<<set $world.location to "Portugal - Ekon warehouse">>
<<set $day6.leftHome to true>>
<<run setup.ekonEnsure()>>
<<if not $day6.ekonWarehouse and not $day6.ekonMet>>
<<goto "D6 Town Map">>
<</if>>
<<if Number($ekonJob.level) gte 2 and not $day6.ekonWarehouseTalkDone>>
<<goto "D6 Ekon Warehouse Talk">>
<</if>>
<<if $day6.ekonWarehouseTalkDone>>
<<goto "D6 Ekon Warehouse Helper">>
<</if>>
<<if $world.time is "Night" or $world.time is "Evening">>
<<= setup.locBannerHtml("warehouse", "Warehouse", $world.time)>>
<p>The warehouse is locked. Come back in the morning or afternoon.</p>
[[Town map|D6 Town Map]]
<<elseif $day6.ekonShiftToday>>
<<= setup.locBannerHtml("warehouse", "Warehouse", $world.time)>>
<p>
<e>I already finished today's shift. Only one per day - Ekon's rules.</e>
</p>
<p class="hub-hint"><em>Delivery job · Lv <<= $ekonJob.level>> · XP <<= $ekonJob.xp>>/100 · +10 XP per shift</em></p>
[[Town map|D6 Town Map]]
<<elseif $day6.ekonShiftActive and $day6.ekonQueue>>
<<goto "D6 Ekon Shift Next">>
<<else>>
<<= setup.locBannerHtml("warehouse", "Warehouse", $world.time + " - delivery hub")>>
<div class="cafe-panel" style="margin-bottom:1rem;">
<p style="margin:0 0 0.35rem;"><strong>Ekon Delivery</strong> · Level <<= Number($ekonJob.level) || 1>> / <<= setup.ekonMaxLevel()>></p>
<p style="margin:0 0 0.35rem;color:var(--text-dim);font-size:0.9rem;">XP <<= Number($ekonJob.xp) || 0>> / 100 · Shifts total <<= Number($ekonJob.shiftsTotal) || 0>></p>
<p style="margin:0;color:var(--text-dim);font-size:0.85rem;">Today: 0/1 shift · Pay this level: $<<= setup.ekonPay()>> · XP/shift: <<= setup.ekonXpPerShift()>></p>
</div>
<p>Emily enters the old warehouse. Ekon stands near his desk, half on a call. When he sees her he points at a stack of sealed parcels - today's load.</p>
<p>
<ekon>Three stops. Random route. Don't open the parcels. Cops are sniffing around more than usual.</ekon>
</p>
<p>
<e>Yes, I know. I won't open them.</e>
</p>
<p>
<et>One shift. Ten XP. Random stops. Let's go.</et>
</p>
[[Start shift|D6 Ekon Shift Start]]
[[Town map|D6 Town Map]]
<</if>><<if $day6.ekonShiftToday>>
<<goto "D6 Ekon Warehouse">>
<</if>>
<<run setup.ekonStartShift()>>
<<run setup.Phone.refreshNotes()>>
<<goto "D6 Ekon Shift Next">><<set _ev to setup.ekonCurrentEvent()>>
<<if not _ev>>
<<goto "D6 Ekon Shift Complete">>
<<else>>
<<set _pass to setup.ekonEventPassage(_ev)>>
<<goto _pass>>
<</if>>/* After an event: advance queue or finish */
<<if setup.ekonAdvanceStop()>>
<<goto "D6 Ekon Shift Next">>
<<else>>
<<goto "D6 Ekon Shift Complete">>
<</if>><<set $world.location to "Portugal - Ekon warehouse">>
<<set _result to setup.ekonFinishShift()>>
<<run setup.Phone.refreshNotes()>>
<p>Emily returns with empty hands. Ekon barely looks up.</p>
<p>
<ekon>Done? Good. Here's your cut. Same rule tomorrow - one shift, don't open the boxes.</ekon>
</p>
<p>Cash in her hand. The job board in her head ticks forward.</p>
<p class="hub-hint"><em>+<<= _result.xpGain>> XP · Payday +$<<= _result.pay>> · Lv <<= _result.level>> (<<= _result.xp>>/100 XP)</em></p>
<<if _result.leveled>>
<<toast "Delivery level up! Lv " + _result.level>>
<p>
<ekon>Look at that. You ranked up. Don't let it go to your head.</ekon>
</p>
<<else>>
<<toast "+" + _result.xpGain + " XP · +$" + _result.pay>>
<</if>>
<<if Number($ekonJob.level) gte 2>>
<p>
<et>Level 2. Albert wanted progress... this is it.</et>
</p>
<<else>>
<p>
<et>Need level 2 for Albert's route. <<= 100 - Number($ekonJob.xp)>> XP to the next level if I stay at this pace... about <<= Math.ceil((100 - Number($ekonJob.xp)) / 10)>> more shift(s) this level.</et>
</p>
<</if>>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
/* ── Level 2: Ekon pulls her off delivery, into the warehouse itself ── */<<set $world.location to "Portugal - Ekon warehouse">>
<<set $day6.ekonWarehouseTalkDone to true>>
<<run setup.Phone.refreshNotes()>>
<p>Ekon looks up as Emily walks in, a rare grin spreading across his face.</p>
<p>
<ekon>Emily! Just the girl I wanted to see.</ekon>
</p>
<p>He waves her over, setting down the clipboard he'd been holding.</p>
<p>
<ekon>You did great work as a delivery girl. Better than I expected, honestly.</ekon>
</p>
<p>Emily smiles, a little proud despite the exhaustion.</p>
<p>
<e>Thanks. I tried to keep up.</e>
</p>
<p>
<ekon>You did more than keep up - which is why, for now, I need you to work here in the warehouse.</ekon>
</p>
<p>Emily blinks, surprised.</p>
<p>
<e>The warehouse? Not deliveries anymore?</e>
</p>
<p>
<ekon>Not for now. I need hands here - helping me out, keeping the storage in order. You've earned a spot closer to where the real work happens.</ekon>
</p>
<p>Emily nods slowly, a flicker of curiosity replacing the nerves.</p>
<p>
<e>Alright. I can do that.</e>
</p>
<p>
<ekon>Good. Come by whenever you're free - plenty to sort through in here.</ekon>
</p>
<<toast "No longer a delivery girl — now helping Ekon in the warehouse">>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]<<set $world.location to "Portugal - Ekon warehouse">>
<<run setup.Phone.refreshNotes()>>
<<if $world.time is "Night" or $world.time is "Evening">>
<<= setup.locBannerHtml("warehouse", "Warehouse", $world.time)>>
<p>The warehouse is locked up for the night. Come back in the morning or afternoon.</p>
[[Town map|D6 Town Map]]
<<else>>
<<= setup.locBannerHtml("warehouse", "Warehouse", $world.time + " - helping Ekon")>>
<p>Emily spends some time helping Ekon around the warehouse - sorting crates, logging inventory, carrying boxes between the shelves. Ekon comes and goes, barking the occasional instruction, but nothing out of the ordinary happens today.</p>
<p class="hub-hint"><em>Working in the warehouse now, helping Ekon with storage - more to come here in a future update.</em></p>
[[Town map|D6 Town Map]]
[[Uncle's house|D6 House Map]]
<</if>>
/* ═══════════════════════════════════════════════════════════
Level 1 random events
═══════════════════════════════════════════════════════════ */
/* Event: Downtown Bar — The Golden Bean (original) */<<set $world.location to "Portugal - The Golden Bean">>
<<run setup.advanceTime(1)>>
<p class="hub-hint"><em>Stop <<= (Number($day6.ekonStop) || 0) + 1>> / <<= ($day6.ekonQueue || []).length>> · Golden Bean</em></p>
<p>Emily steps into the bar, dim lights casting a golden glow over polished wood and scattered patrons.</p>
<p>She walks up to the bartender with the sealed parcel.</p>
<p>
<e>Hi... delivery from Mr. Ekon.</e>
</p>
<p>
<npc>Bartender:</npc> Got it. Actually - take this beer to Table No. 5 near the exit?
</p>
<p>
<e>Sure.</e>
</p>
<p>As she moves between tables, a group of boys shifts - one sticks out a leg. She trips, almost losing the glass.</p>
<p>
<e>Whoa—!</e>
</p>
<img src="Images/31.jpg">
<p>In the floor reflection her panty flashes. The boys laugh. Her cheeks burn. She finishes the drop and leaves fast.</p>
<<toast "Stop done · Golden Bean">>
[[Next stop|D6 Ekon Shift Continue]]
/* Event: Riverside Apartment 12B (original) */<<set $world.location to "Portugal - Riverside 12B">>
<<run setup.advanceTime(1)>>
<p class="hub-hint"><em>Stop <<= (Number($day6.ekonStop) || 0) + 1>> / <<= ($day6.ekonQueue || []).length>> · Riverside 12B</em></p>
<p>Apartment 12B. Loud moans from inside. Emily knocks anyway.</p>
<p>
<npc>Man:</npc> Come in. The delivery?
</p>
<p>She steps inside. On the sofa, a couple is mid-sex - perfume, heat, no shame.</p>
<img src="Images/sex.jpg">
<p>
<npc>Man:</npc> Just put the box on the table and leave.
</p>
<p>Emily drops the parcel, eyes averted, and escapes with a flushed face.</p>
<<toast "Stop done · Riverside">>
[[Next stop|D6 Ekon Shift Continue]]
/* Event: Neon Motel 8 (custom Lv1) */<<set $world.location to "Portugal - Neon Motel Rm 8">>
<<run setup.advanceTime(1)>>
<p class="hub-hint"><em>Stop <<= (Number($day6.ekonStop) || 0) + 1>> / <<= ($day6.ekonQueue || []).length>> · Neon Motel</em></p>
<p>The Neon Motel buzzes pink and blue. Room 8's door is ajar. Emily knocks on the frame.</p>
<p>
<npc>Woman:</npc> Leave it on the bed, honey - hands full!
</p>
<p>Emily pushes in. A woman in lingerie straddles a blindfolded man on the sheets, grinding slow, wrists tied to the headboard with silk. Toys glitter on the nightstand. The parcel label matches the room number.</p>
<img src="Images/Ekon/lingerie.jpg">
<p>
<e>I... delivery...</e>
</p>
<p>
<npc>Woman:</npc> Perfect timing. Put it right here - and don't mind him. He's not allowed to look.
</p>
<img src="Images/Ekon/3.gif">
<p>Emily sets the box on the mattress. The man's cock twitches at her voice. The woman laughs and rolls her hips harder, eyes locked on Emily.</p>
<p>
<npc>Woman:</npc> Unless you want to stay and watch the unboxing later...
</p>
<p>Emily flees, pulse hammering, the moan following her down the hall.</p>
<img src="Images/Ekon/2.gif">
<<toast "Stop done · Motel">>
[[Next stop|D6 Ekon Shift Continue]]
/* Event: Police intercept (original Tech Hub flavor) */<<set $world.location to "Portugal - roadside stop">>
<<run setup.ekonMarkPoliceCaught()>>
<<run setup.advanceTime(1)>>
<p class="hub-hint"><em>Stop <<= (Number($day6.ekonStop) || 0) + 1>> / <<= ($day6.ekonQueue || []).length>> · Police intercept</em></p>
<p>Flashing lights. A police jeep cuts her off mid-route.</p>
<p>
<npc>Officer 1:</npc> Miss, stop. We need to inspect that package.
</p>
<p>
<e>I can't open it - delivery rules - Mr. Ekon -</e>
</p>
<p>
<npc>Officer 2:</npc> Protocol. Open it.
</p>
<p>Inside: tech gadgets. Not illegal. Still enough for handcuffs talk.</p>
<img src="Images/handcuff.jpg">
<p>
<e>Call my supervisor! Mr. Ekon!</e>
</p>
<p>One officer steps away to call. When he returns, he shows a video on a small screen - another courier handling a parcel in a filthy, playful way.</p>
<img src="Images/32.gif">
<p>
<npc>Officer 1:</npc> Last girl walked free after something like this.
</p>
<p>Emily's cheeks burn. Heat and panic mix.</p>
<div class="choice-lock-list">
<div class="choice-locked" aria-disabled="true">
<span class="choice-locked-title">Offer a handjob</span>
<span class="choice-locked-req">I can't even think of doing this</span>
</div>
</div>
[[Refuse and call Ekon only|D6 Ekon Ev Police Refuse]]<<set $world.location to "Portugal - police jeep">>
<p>Emily kneels. Two hard cocks. She strokes both, lips brushing, hands slick and steady.</p>
<img src="Images/33.webp">
<p>
<e>Mmm... just like this?</e>
</p>
<p>They finish in her hands - messy, quick, shamefully hot.</p>
<img src="Images/35.jpg">
<p>
<npc>Officer 1:</npc> Get out of here. Hope we don't meet again.
</p>
<p>They wave her on. The parcel still sealed enough for the drop. She completes the stop with shaking legs.</p>
<<toast "Police stop cleared">>
[[Next stop|D6 Ekon Shift Continue]]<<set $world.location to "Portugal - roadside stop">>
<p>Emily shakes her head hard.</p>
<p>
<e>No. Call Ekon. That's it.</e>
</p>
<p>After a tense radio call they let her go. She finishes the drop and puts distance between her and the jeep.</p>
<<toast "Police stop cleared">>
[[Next stop|D6 Ekon Shift Continue]]/* Wiki helpers - logic lives in src/scripts/phone.js */
<<widget "phone">>
<<run setup.Phone.open()>>
<</widget>>
<<widget "phonechat">>
/* Usage: <<phonechat "david">> */
<<run setup.Phone.openChat($args[0])>>
<</widget>><<goto "UI Preview">><<set $world.day to 6>>
<<set $world.time to "Morning">>
<<set $world.location to "Home">>
<div class="scene-art-placeholder">
Apartment - morning
<small>placeholder art</small>
</div>
<p>The sunlight crept through the curtains. Emily stirred, reaching for her phone before she was fully awake.</p>
<p>
<et>Today's the day... college first. Then whatever the diary is trying to tell me.</et>
</p>
<div class="terminal-container">
<div class="terminal-topbar">
<span>07:42</span>
<div style="display:flex;gap:6px;align-items:center;">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;border-color:#0f0f1a;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">David</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot" style="background:#00f2ff;"></div> ONLINE
</div>
</div>
</div>
<div class="terminal-body" style="height:auto;min-height:140px;">
<div class="day-divider">LAST NIGHT</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID:</div>
<div class="bubble only">You up?</div>
<div class="msg-ts">07:40</div>
</div>
<div class="msg-group">
<div class="bubble only">Missed you last night.</div>
<div class="msg-ts">07:41</div>
</div>
</div>
</div>
<p>
<e>Emily:</e> I should answer... or I could face the day first.
</p>
[[Reply to David|Sample - Reply]]
[[Get ready and head out|Sample - Out]]
[[UI Preview|UI Preview]]
[[Title|Title Screen]]<p>
<david>David:</david> There you are. Text me after class?
</p>
<<toast "Message sent" "good">>
[[Back to morning|Sample Morning]]
[[UI Preview|UI Preview]]
[[Title|Title Screen]]<<set $world.location to "Town">>
<<set $world.time to "Late morning">>
<<set $player.energy to Math.clamp($player.energy - 5, 0, 100)>>
<div class="scene-art-placeholder">
Town street
<small>placeholder art</small>
</div>
<p>Emily locks the door behind her. The town is already awake - buses, coffee steam, a green shop sign two blocks down.</p>
<p>
<et>Harris General Store is hiring. Money first. Mysteries after.</et>
</p>
<<toast "Energy -5" "warn">>
[[' Morning|Sample Morning]]
[[UI Preview|UI Preview]]
[[Title|Title Screen]]<img class="title-intro-gif" src="Images/intro.gif" alt="Sultry Secrets">
<div class="dev-note">
<span class="dev-note-label">A note from the developer</span>
<p>This is a remake of Sultry Secrets, and it's still an early build — so please expect a few bugs or rough edges along the way. If you run into anything, I'd really appreciate it if you could report it through the <strong>Feedback form</strong> or <strong>Discord</strong>, both linked in the sidebar menu.</p>
<p>I really hope you enjoy this remake — more content is being added steadily, so there's plenty still on the way.</p>
<p>Want more in the meantime? Try my other games, or play the original Sultry Secrets, over on <a href="https://www.patreon.com/c/LadyDeveloper" target="_blank" rel="noopener">Patreon</a>.</p>
</div>
<p>This game is a mix of linear storytelling and meaningful choices. Please take the time to read the story, not just play for the images, to get the full experience.</p>
<p>The choices you make will affect the story - either later in the game or in future updates. So choose carefully.</p>
<p class="disclaimer">
Disclaimer: All characters depicted in this game are 21 years or older. This game contains explicit content and is intended for mature audiences only. By continuing, you confirm that you are of legal age in your jurisdiction to access adult content.
</p>
<p class="disclaimer">
This game includes NTR (cheating) content. There's no separate toggle for it anymore — if it's not for you, you can avoid it simply by not starting or progressing its quest line.
</p>
[[Start|Party]]
[[No I am not|Bye]]<p>Come back when you're ready.</p>
[[Title|Title Screen]]<<set $world.location to "UI Gallery">>
<<set $world.time to "Anytime">>
<div class="mystery-container">
<div class="mysterious-text">Original theme preview</div>
</div>
<p>Same visual language as the original game: dark base, purple accent, serif story text, block choices, colored speaker tags, and the phone terminal.</p>
/* '' Image '' */
<div class="scene-art-placeholder">
Scene image
<small>square frame like original imgs</small>
</div>
/* '' Prose + character tags '' */
<p>
Morning light cuts across the apartment. Emily's phone is already buzzing on the nightstand.
</p>
<p>
<e>Emily:</e> I'll answer him after coffee. One crisis at a time.
</p>
<p>
<et>He always texts more when he gets insecure. Or when he knows something.</et>
</p>
<p>
<kelly>Kelly:</kelly> If you're staring at that phone again, come downstairs. I made toast that is... arguably food.
</p>
<p>
<david>David:</david> You free tonight? Feels like we haven't talked for real in days.
</p>
/* '' Phone terminal (original classes) '' */
<div class="terminal-container">
<div class="terminal-topbar">
<span>09:14</span>
<div style="display:flex;gap:6px;align-items:center;">
<div class="tb-signal"><span></span><span></span><span></span></div>
<div class="tb-battery"><div class="tb-battery-fill"></div></div>
</div>
</div>
<div class="terminal-header">
<div class="terminal-avatar" style="border-color:#00f2ff;color:#00f2ff;">D
<div class="terminal-avatar-dot" style="background:#00f2ff;border-color:#0f0f1a;"></div>
</div>
<div class="terminal-header-info">
<div class="terminal-header-name">David</div>
<div class="terminal-header-status" style="color:#00f2ff;">
<div class="terminal-enc-dot" style="background:#00f2ff;"></div> ONLINE
</div>
</div>
</div>
<div class="terminal-body" style="height:auto;min-height:180px;">
<div class="day-divider">TODAY</div>
<div class="msg-group">
<div class="sender-label" style="color:#00f2ff;">DAVID:</div>
<div class="bubble only">Morning. You free tonight?</div>
<div class="msg-ts">09:12</div>
</div>
<div class="msg-group">
<div class="bubble only player">Class then maybe a shift. I'll text you after.</div>
<div class="msg-ts right">09:14</div>
</div>
</div>
</div>
/* '' Stat ping style '' */
<p class="stat">Corruption +1 - demo</p>
/* '' Toasts '' */
[[Toast: Corruption+|UI Preview][$player.corruption to Math.clamp($player.corruption + 1, 0, 100)]]
<<link "Fire notify toast">>
<<toast "Corruption+">>
<</link>>
/* '' Choices (original: every #passages a is a block) '' */
[[Go to sample morning|Sample Morning]]
[[Toggle NTR in menu - then return|UI Preview]]
[[Back to title|Title Screen]]