<div class="content">\
<div class="adminSide">\
(if: $last is "")[\
<!--[[Start timer]]-->(button:)[(link:"Flip timer (new game)")[(track: 'sandMovement', 'play')(track: 'menu', 'fadeout', 3)(go-to: "Start timer")]]\
]\
(else:)[\
(button:)[(link:"Flip timer (restart/new game)")[(track: 'sandMovement', 'play')(track: 'menu', 'fadeout', 3)(display: "backupStartUp")(go-to: "Start timer")]]
(button:)[(link: "Resume")[(track: 'back', 'play')(track: 'menu', 'fadeout', 3)(go-to: $last)]]\
]
(button:)[(link: "How to play")[(go-to: "New gamer")]]
(button:)[(link: "Return to title")[(go-to: "Falling Sand")]]\
</div>\
<div class="adminOption">\
<!--[[Settings]]-->(link: "Settings")[(track: 'sandMovement', 'play')(go-to: "Settings")]
<!--[[Artist statement]]-->(link:"About")[(track: 'sandMovement', 'play')(go-to: "Artist statement")]
<!--[[CW]]-->(link:"Content warnings")[(track: 'sandMovement', 'play')(go-to: "CW")]
<!--[[Visual description]]-->(link:"Expanded visual descriptions")[(track: 'sandMovement', 'play')(go-to: "Visual description")]
<!--[[Credits]]-->(link:"Credits")[(track: 'sandMovement', 'play')(go-to: "Credits")]\
</div>\
</div>{
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-whiteCentre.png" alt="white dot in a sea of yellow" height="300" width="300">')
(set: $vitality to 10)}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
</div>]<image|
[Image description: (print: $imgDesc's action)
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
Sensation is <!--[[Sand everywhere]]-->(link: "overwhelming[ (+sweat)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(set: $imgDesc's action to "A gold dot is surrounded by spiraling, curving lines.")(go-to: "Sand everywhere")] and unsettling.
]<contentBox|\
</div>\
</div>\
</div><!--Game Stats--!>\
(set:
$halfTime to 0,
$highContrast to 0,
$motionBG to 1,
$italicsOFF to 0,
$tier to 0,
$time to 10,
$timePlain to "You are an Infant",
$vitality to 10,
$sweat to 0,
$sand to 1,
$wonder to 0,
$last to "",
$storyController to (a: "ignorance"),
$help to 0,
$friend to (dm: "intimacy", "", "cling", 0, "patience", 0, "vitality", 0, "poly", 0),
$partnerA to (dm: "active", 0, "cling", 0, "patience", 0, "creator", 0, "adopt", 0, "vitality", 0, "poly", 0),
$partnerB to (dm: "active", 0, "cling", 0, "patience", 0, "creator", 0, "adopt", 0, "vitality", 0, "poly", 0),
$backgroundIMG to "",
$playerIMG to "",
$parentIMG to "",
$siblingIMG to "",
$friendIMG to "",
$partneraIMG to "",
$partnerbIMG to "",
$environmentIMG to "",
$imgDesc to
(dm:
"action", "A small circular gold shape outlined in white is surrounded by pale yellow sand. Dark spiralling lines curve around it, creating a whirlpool-like pattern.",
"hourglass", "",
)
){(unless: (passage:)'s tags contains "admin" or (passage:)'s tags contains "title")[
(unless: (history:)'s last is "Start/Pause Menu")[
(display: "vitalityCheck")]
<a class="skip-link" href="#main">Skip to story</a>
<a class="skip-link" href="#sidebar">Skip to sidebar</a>
<a class="skip-link" href="#resources">Skip to resources</a>
]
}\
<hr style="border: 0; border-top: 4px double #A66F0A; height: 0;">\
(unless: (passage:)'s tags contains "title")[\
(if: (passage:)'s tags contains "admin")[\
<div class="HUDcontainer">\
<div class="column">\
[Falling Sand - Kay Slater, 2026]\
</div>\
<div class="column desktop-only">\
[]
</div>
<div class="column">\
[Status: Paused]
</div>\
</div>\
]\
(else:)[\
<div class="HUDcontainer">\
<div class="column">\
[Location: (print: (passage:)'s name)](help|
</div>\
<div class="column">\
[ [$timePlain]<notice|](help|
</div>
<div class="column">\
[ [(display: "help")]<helpButton|(if: $halfTime is 1)[ || 🍯] || <!--[[Start/Pause Menu]]-->(link: "Start/Pause Menu")[(track: 'back', 'play')(if: $tier is 0)[(track: 'sandRustling', 'fadeout', 3)](else:)[(track: 'sandPour', 'fadeout', 3)](go-to: "Start/Pause Menu")]]\
</div>\
</div>\
]\
{(if: $help is 1)[(show: ?help)]}\
<hr style="border: 0; border-top: 4px double #A66F0A; height: 0;">]\
<div class="sand-layer">\
<div class="sand-layer-bg">\
<div></div>\
<div></div>\
<div></div>\
<div></div>\
<div></div>\
</div>{(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-whiteCentre.png" alt="a round shape floating in sand" height="300" width="300">')
(set: $imageDesc to "A small circular gold shape outlined in white is surrounded by pale yellow sand. Dark spiralling lines curve around it, creating a whirlpool-like pattern. ")
(if: $storyController contains "murderer")[(set: $storyController to (a: "ignorance", "murderer"))]
(else:)[(set: $storyController to (a: "ignorance"))]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
</div>]<image|
[ID: [(print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( sand storm )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
(if: $storyController contains "murderer")[(link: "You swirl and shift within endless movement.")[(link: "Sometimes you are buried beneath impossible weight. Sometimes you tumble freely through open space. Sometimes the currents press you hard against countless other grains until friction and motion are the only sensations left.")[(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-nucleus.png" alt="a dot floating in sand" height="300" width="300">')(set: $imgDesc to "The round, gold shape loses its white outline. ")(replace: ?imageDesc)[(print: $imgDesc)](replace: ?image)[<div class="image-layer-container">$backgroundIMG</div>](link: "You...remember...not letting go...")[(link: "And then even that understanding begins to loosen.")[(link: "The memory of currents fades.")[(link: "The memory of bodies fades.")[(link: "You turn over.")[(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-yellow.png" alt="a sand" height="300" width="300">')(set: $imgDesc to "The shape disappears. Only a yellow background remains. ")(replace: ?imageDesc)[(print: $imgDesc)](replace: ?image)[<div class="image-layer-container">$backgroundIMG</div>](link: "Sand crashes against sand in great roaring spirals and for a while there is no direction at all. Only collision. Only movement. Only the feeling of being carried within something far larger than yourself.")[(link: "You scatter.")[(link: "Sand gathers.")[(link: "Sand become trapped briefly against other grains before breaking apart once more.")[(link: "Before long, sand collides with other sand and clings to each other.")[(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-blue.png" alt="nothing" height="300" width="300">')(set: $imgDesc to "The yellow background becomes dark blue. ")(replace: ?imageDesc)[(print: $imgDesc)](replace: ?image)[<div class="image-layer-container">$backgroundIMG</div>]All of it slowly slips away beneath the[[*](italicized|Falling Sand[*](italicized|]<italics|, until <!--[[you forget what it is to be...|Start timer]]-->(link: "you forget what it is to be...")[{\
(if: (track: 'sandStorm', 'isplaying'))[
(track: 'sandStorm', 'fadeout', 3)
]
(set: $tier to 0)
(track: 'step', 'play')
(display: "startup")
(forget-visits: -1)
(forget-undos: -1)
(go-to: "Falling Sand")
}
].]]]]]]]]]]]]]\
(else:)[(link: "You swirl and shift within endless movement.")[(link: "Sometimes you are buried beneath impossible weight. Sometimes you tumble freely through open space. Sometimes the currents press you hard against countless other grains until friction and motion are the only sensations left.")[(link: "What was separate slowly becomes shared. What was shared slowly becomes whole. You...remember weight. You...remember movement.")[(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-nucleus.png" alt="a dot floating in sand" height="300" width="300">')(set: $imgDesc to "The round, gold shape loses its white outline. ")(replace: ?imageDesc)[(print: $imgDesc)](replace: ?image)[<div class="image-layer-container">$backgroundIMG</div>](link: "And then even that understanding begins to loosen.")[(link: "The memory of currents fades.")[(link: "The memory of bodies fades.")[(link: "The memory of grief.")[(link: "Of wonder.")[(link: "Of heat.")[(link: "Of swimming.")[(link: "You turn over.")[(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-yellow.png" alt="a sand" height="300" width="300">')(set: $imgDesc to "The shape disappears. Only a yellow background remains. ")(replace: ?imageDesc)[(print: $imgDesc)](replace: ?image)[<div class="image-layer-container">$backgroundIMG</div>](link: "Sand crashes against sand in great roaring spirals and for a while there is no direction at all. Only collision. Only movement. Only the feeling of being carried within something far larger than yourself.")[(link: "Light filtering through drifting grains.")[(link: "You scatter.")[(link: "Sand gathers.")[(link: "Sand feels pressure.")[(link: "Sand becomes trapped briefly against other grains before breaking apart once more.")[(link: "Before long, sand collides with other sand and clings to each other.")[(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-blue.png" alt="nothing" height="300" width="300">')(set: $imgDesc to "The yellow background becomes dark blue. ")(replace: ?imageDesc)[(print: $imgDesc)](replace: ?image)[<div class="image-layer-container">$backgroundIMG</div>]All of it slowly slips away beneath the[[*](italicized|Falling Sand[*](italicized|]<italics|, until <!--[[you forget what it is to be...|Start timer]]-->(link: "you forget what it is to be...")[{\
(if: (track: 'sandStorm', 'isplaying'))[
(track: 'sandStorm', 'fadeout', 3)
]
(set: $tier to 0)
(track: 'step', 'play')
(display: "startup")
(forget-visits: -1)
(forget-undos: -1)
(go-to: "Falling Sand")
}
].]]]]]]]]]]]]]]]]]]]
]<contentBox|\
</div>\
</div>\
</div></div>\
(unless: (passage:)'s tags contains "title")[<hr style="border: 0; border-top: 4px double #A66F0A; height: 0;">\
(if: (passage:)'s tags contains "admin")[\
(unless: (track: 'menu', 'isplaying'))[\
(track: 'menu', 'loop', true)(track: 'menu', 'play')\
]\
<div class="HUDcontainer">\
<div class="column">\
[License: CC BY 4.0]\
</div>\
<div class="column">\
[]\
</div>\
<div class="column">(bg:#fff)+(color:#000)[ ( slow percussion ) ♫ "Asian Drums", Kevin McLeod ♫ ]</div></div>]\
(else:)[\
{(if: $tier is 0)[
(unless: (track: 'sandRustling', 'isplaying'))[
(track: 'sandRustling', 'loop', true)(track: 'sandRustling', 'play')
]
]\
(else-if: (passage:)'s name is "Flip the hourglass")[
(track: 'sandStorm', 'play')
(event: when time > 45s)[(replace: ?audio)[( silence )]]
]
(else:)[
(unless: (track: 'sandPour', 'isplaying'))[
(track: 'sandPour', 'loop', true)(track: 'sandPour', 'play')(track: 'sandRustling', 'fadeout', 3)
]
]}\
(unless: (passage:)'s tags contains "admin")[(set: $last to (passage:)'s name)Falling Sand - Kay Slater, 2026]]\
]\
<hr style="border: 0; border-top: 4px double #A66F0A; height: 0;">
{=
(if: $help is 1)[(show: ?help)(enchant: ?helpButton, (text-color:#7fee82))]
(else:)[(enchant: ?helpButton, (text-color:#eb4e76))]
(unless: (passage:)'s name is "Make a baby" or (passage:)'s name is "Adoption")[(if: $partnerB's active is 2)[(append: "partner")[s]]]
(if: $tier is 0 and $vitality is 0)[(set: $storyController to it + (a: "passedOut"))(set: $vitality to 1)(go-to: "Island")]
(if: $tier is 1)[
(set: $halfTime to 0)
(if: $partnerB's active is 2)[(set: _partnerBdice to (random: 1,4))(if: _partnerBdice is 4)[(set: $partnerB's vitality to it -1)]]
(if: $partnerA's active is 2)[(set: _partnerAdice to (random: 1,4))(if: _partnerAdice is 4)[(set: $partnerA's vitality to it -1)]]
(if: $storyController contains "friends")[(set: _friendDice to (random: 1,4))(if: _friendDice is 4)[(set: $friend's vitality to it -1)]]
(unless: (passage:)'s tags contains "sand")[(if: $sand <1)[(set: $sand to 1)]]
]
(enchant: "-time", (text-color: #48B7DC))
(enchant: "--time", (text-color: #48B7DC))
(enchant: "-vitality", (text-color: #fde369))
(enchant: "--vitality", (text-color: #fde369))
(enchant: "---vitality", (text-color: #fde369))
(enchant: "+vitality", (text-color: #fde369))
(enchant: "++vitality", (text-color: #fde369))
(enchant: "+/++vitality", (text-color: #fde369))
(enchant: "?vitality", (text-color: #fde369))
(enchant: "-sweat", (text-color: #98aeb6))
(enchant: "+sweat", (text-color: #98aeb6))
(enchant: "+/-sweat", (text-color: #98aeb6))
(enchant: "++sweat", (text-color: #98aeb6))
(enchant: "?sweat", (text-color: #98aeb6))
(enchant: "-sand", (text-color: #ea990e))
(enchant: "--sand", (text-color: #ea990e))
(enchant: "+/-sand", (text-color: #ea990e))
(enchant: "+sand", (text-color: #ea990e))
(enchant: "++sand", (text-color: #ea990e))
(enchant: "+++sand", (text-color: #ea990e))
(enchant: "++++sand", (text-color: #ea990e))
(enchant: "+perception", (text-color: #eb4e76))
(enchant: "?companion", (text-color: #e39699))
(enchant: "+companion", (text-color: #e39699))
(enchant: "-companion", (text-color: #e39699))
(enchant: "?partner", (text-color: #e39699))
(enchant: "-partner", (text-color: #e39699))
(enchant: "+partner", (text-color: #e39699))
(enchant: ?status, (text-color: #b5cfd9))
(if: $highContrast is 1)[(enchant: ?Link, (text-color: #F7D69F)+(text-style: "underline"))]
(if: $motionBG is 1)[
<script>$('body').removeClass('reduced-motion-bg');</script>
]
(else:)[
<script>$('body').addClass('reduced-motion-bg');</script>
]
(if: $italicsOFF is 0)[(enchant: ?italics, (text-style: "italic"))]
(else:)[(show: ?italicized)]{(if: $time >10)[(set: $time to 10)]
(unless: (passage:) is "The final lap" or (passage:) is "Flip the hourglass")[(if: $time <1)[(set: $time to 1)]]
(if: $vitality >10)[(set: $vitality to 10)]
(if: $vitality <0)[(set: $vitality to 0)]
(if: $sand >10)[(set: $sand to 10)]
(if: $sand <0)[(set: $sand to 0)]
(if: $sweat >10)[(set: $sweat to 10)]
(if: $sweat <0)[(set: $sweat to 0)]
(if: $time >9)[(set: $timePlain to "You are an Infant")]
(else-if: $time >8)[(set: $timePlain to "You are a Child")]
(else-if: $time >7)[(set: $timePlain to "You are a Teenager")]
(else-if: $time >6)[(set: $timePlain to "You are an Adult")]
(else-if: $time is >5)[(set: $timePlain to "You are a Middle-Aged Adult")]
(else-if: $time is >4)[(set: $timePlain to "You are experiencing Menopause")]
(else-if: $time is >3)[(set: $timePlain to "You are an Older Adult")]
(else-if: $time is >2)[(set: $timePlain to "You are a Senior")]
(else-if: $time >1)[(set: $timePlain to "You are an Elder")]
(else-if: $time >=0)[(set: $timePlain to "You are sand")]
}\
<div id="resources" class= "desktop-only" role="status" aria-live="polite" aria-atomic="false">\
<span aria-hidden="true"><div class="status-grid">\
<div class="cell header">[⏳]</div><div class="cell header">(color:#48B7DC)[✨]</div><div class="cell header">[💧]</div><div class="cell header">(color:#EA990E)[∴]</div>\
<div class="cell">[▭]<tE10|[(text-color: #48B7DC)[▬]](t10|</div>\
<div class="cell">[▭]<hE10|[(text-color: #fde369)[▬]](h10|</div>\
<div class="cell">[▭]<sE10|[(text-color: #98aeb6)[▬]](s10|</div>\
<div class="cell">[▭]<saE10|[(text-color: #ea990e)[▬]](sa10|</div>\
<div class="cell">[▭]<tE9|[(text-color: #48B7DC)[▬]](t9|</div>\
<div class="cell">[▭]<hE9|[(text-color: #fde369)[▬]](h9|</div>\
<div class="cell">[▭]<sE9|[(text-color: #98aeb6)[▬]](s9|</div>\
<div class="cell">[▭]<saE9|[(text-color: #ea990e)[▬]](sa9|</div>\
<div class="cell">[▭]<tE8|[(text-color: #48B7DC)[▬]](t8|</div>\
<div class="cell">[▭]<hE8|[(text-color: #fde369)[▬]](h8|</div>\
<div class="cell">[▭]<sE8|[(text-color: #98aeb6)[▬]](s8|</div>\
<div class="cell">[▭]<saE8|[(text-color: #ea990e)[▬]](sa8|</div>\
<div class="cell">[▭]<tE7|[(text-color: #48B7DC)[▬]](t7|</div>\
<div class="cell">[▭]<hE7|[(text-color: #fde369)[▬]](h7|</div>\
<div class="cell">[▭]<sE7|[(text-color: #98aeb6)[▬]](s7|</div>\
<div class="cell">[▭]<saE7|[(text-color: #ea990e)[▬]](sa7|</div>\
<div class="cell">[▭]<tE6|[(text-color: #48B7DC)[▬]](t6|</div>\
<div class="cell">[▭]<hE6|[(text-color: #fde369)[▬]](h6|</div>\
<div class="cell">[▭]<sE6|[(text-color: #98aeb6)[▬]](s6|</div>\
<div class="cell">[▭]<saE6|[(text-color: #ea990e)[▬]](sa6|</div>\
<div class="cell">[▭]<tE5|[(text-color: #48B7DC)[▬]](t5|</div>\
<div class="cell">[▭]<hE5|[(text-color: #fde369)[▬]](h5|</div>\
<div class="cell">[▭]<sE5|[(text-color: #98aeb6)[▬]](s5|</div>\
<div class="cell">[▭]<saE5|[(text-color: #ea990e)[▬]](sa5|</div>\
<div class="cell">[▭]<tE4|[(text-color: #48B7DC)[▬]](t4|</div>\
<div class="cell">[▭]<hE4|[(text-color: #fde369)[▬]](h4|</div>\
<div class="cell">[▭]<sE4|[(text-color: #98aeb6)[▬]](s4|</div>\
<div class="cell">[▭]<saE4|[(text-color: #ea990e)[▬]](sa4|</div>\
<div class="cell">[▭]<tE3|[(text-color: #48B7DC)[▬]](t3|</div>\
<div class="cell">[▭]<hE3|[(text-color: #fde369)[▬]](h3|</div>\
<div class="cell">[▭]<sE3|[(text-color: #98aeb6)[▬]](s3|</div>\
<div class="cell">[▭]<saE3|[(text-color: #ea990e)[▬]](sa3|</div>\
<div class="cell">[▭]<tE2|[(text-color: #48B7DC)[▬]](t2|</div>\
<div class="cell">[▭]<hE2|[(text-color: #fde369)[▬]](h2|</div>\
<div class="cell">[▭]<sE2|[(text-color: #98aeb6)[▬]](s2|</div>\
<div class="cell">[▭]<saE2|[(text-color: #ea990e)[▬]](sa2|</div>\
<div class="cell">[▭]<tE1|[(text-color: #48B7DC)[▬]](t1|</div>\
<div class="cell">[▭]<hE1|[(text-color: #fde369)[▬]](h1|</div>\
<div class="cell">[▭]<sE1|[(text-color: #98aeb6)[▬]](s1|</div>\
<div class="cell">[▭]<saE1|[(text-color: #ea990e)[▬]](sa1|</div></div></span>[
T: (set: _timePrint to (round: $time *100)/100)(print: _timePrint), V: (set: _timeVitality to (round: $vitality *100)/100)(print: _timeVitality), Sw: (set: _timeSweat to (round: $sweat *100)/100)(print: _timeSweat), Sd: (set: _timeSand to (round: $sand *100)/100)(print: _timeSand)](help|\
[]<status|\
{<span class="sr-only">
Time: (set: _timePrint to (round: $time *100)/100)(print: _timePrint)
Vitality: (set: _timeVitality to (round: $vitality *100)/100)(print: _timeVitality)
Sweat: (set: _timeSweat to (round: $sweat *100)/100)(print: _timeSweat)
Sand: (set: _timeSand to (round: $sand *100)/100)(print: _timeSand)
</span>}\
</div>\
<div class="mobile-only">\
(align: "=><=")[ [⏳]<span class="sr-only">Time</span>: (set: _timePrint to (round: $time *100)/100)(print: _timePrint) [✨]<span class="sr-only">Vitality</span>: (set: _timeVitality to (round: $vitality *100)/100)(print: _timeVitality)
[💧]<span class="sr-only">Sweat</span>: (set: _timeSweat to (round: $sweat *100)/100)(print: _timeSweat) [∴]<span class="sr-only">Sand</span>: (set: _timeSand to (round: $sand *100)/100)(print: _timeSand)]</div>\
{=
(if: $time >9)[(hide: ?tE10)(show: ?t10)]
(if: $time >8)[(hide: ?tE9)(show: ?t9)]
(if: $time >7)[(hide: ?tE8)(show: ?t8)]
(if: $time >6)[(hide: ?tE7)(show: ?t7)]
(if: $time >5)[(hide: ?tE6)(show: ?t6)]
(if: $time >4)[(hide: ?tE5)(show: ?t5)]
(if: $time >3)[(hide: ?tE4)(show: ?t4)]
(if: $time >2)[(hide: ?tE3)(show: ?t3)]
(if: $time >1)[(hide: ?tE2)(show: ?t2)]
(if: time >0)[(hide: ?tE1)(show: ?t1)]
(if: $vitality >=1)[(hide: ?hE1)(show: ?h1)]
(if: $vitality >=2)[(hide: ?hE2)(show: ?h2)]
(if: $vitality >=3)[(hide: ?hE3)(show: ?h3)]
(if: $vitality >=4)[(hide: ?hE4)(show: ?h4)]
(if: $vitality >=5)[(hide: ?hE5)(show: ?h5)]
(if: $vitality >=6)[(hide: ?hE6)(show: ?h6)]
(if: $vitality >=7)[(hide: ?hE7)(show: ?h7)]
(if: $vitality >=8)[(hide: ?hE8)(show: ?h8)]
(if: $vitality >=9)[(hide: ?hE9)(show: ?h9)]
(if: $vitality >=10)[(set: $vitality to 10)(hide: ?hE10)(show: ?h10)]
(if: $sweat >=1)[(hide: ?sE1)(show: ?s1)]
(if: $sweat >=2)[(hide: ?sE2)(show: ?s2)]
(if: $sweat >=3)[(hide: ?sE3)(show: ?s3)]
(if: $sweat >=4)[(hide: ?sE4)(show: ?s4)]
(if: $sweat >=5)[(hide: ?sE5)(show: ?s5)]
(if: $sweat >=6)[(hide: ?sE6)(show: ?s6)]
(if: $sweat >=7)[(hide: ?sE7)(show: ?s7)]
(if: $sweat >=8)[(hide: ?sE8)(show: ?s8)]
(if: $sweat >=9)[(hide: ?sE9)(show: ?s9)]
(if: $sweat >=10)[(set: $sweat to 10)(hide: ?sE10)(show: ?s10)]
(if: $sand >=1)[(hide: ?saE1)(show: ?sa1)]
(if: $sand >=2)[(hide: ?saE2)(show: ?sa2)]
(if: $sand >=3)[(hide: ?saE3)(show: ?sa3)]
(if: $sand >=4)[(hide: ?saE4)(show: ?sa4)]
(if: $sand >=5)[(hide: ?saE5)(show: ?sa5)]
(if: $sand >=6)[(hide: ?saE6)(show: ?sa6)]
(if: $sand >=7)[(hide: ?saE7)(show: ?sa7)]
(if: $sand >=8)[(hide: ?saE8)(show: ?sa8)]
(if: $sand >=9)[(hide: ?saE9)(show: ?sa9)]
(if: $sand >=10)[(set: $sand to 10)(hide: ?saE10)(show: ?sa10)]
(replace: ?notice)[$timePlain]{
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-whiteCentre.png" alt="white dot in a sea of yellow" height="300" width="300">')
(unless: (history:)'s last is "Start/Pause Menu")[(set: $vitality to 10)]}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
</div>]<image|
[ID: (print: $imgDesc's action)
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
You exist. After that, you realize that you are different from [[*](italicized|not you[*](italicized|]<italics|. The [[*](italicized|not you[*](italicized|]<italics| is everywhere and it is intense. You try to express that and something happens.
Something that is [[*](italicized|not you[*](italicized|]<italics| is also separate…and it is good. It is not you, but it is [[*](italicized|with[*](italicized|]<italics| you. Next to you. Under you. Everything is so confusing.
But the thing that is not you and is under you feels right. It is warm and\
<!--[[wet |On their back]]-->\
(link: "wet[ (+sweat, -time)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(set: $sweat to it +0.125)(go-to: "On their back")].
]<contentBox|\
</div>\
</div>\
</div>{(unless: (history:)'s last is "Start/Pause Menu")[(set: $vitality to 10)]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$parentIMG
</div>]<image|
[ID: [(print: $imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
(if: visits is 1)[The thing below you ripples. You move up and down, comforted by the repetitive motion.
Then something feels wrong.
You instinctively move your body and you are unsettled. You shift side to side in jerking motions.
Concentrating, you associate pressure with movement. You can touch <!--[[the thing|On their back]]-->(link: "the thing[ (+sand, +perception, -time)](help|")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(set: $storyController to it + (a: "sight"))(display: "sweat"){
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T06-start-bg.png" alt="a container filled with sand" height="300" width="300">')
(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T06-start-parent-birth.png" alt="a figure on top of another figure" height="300" width="300">')
(set: $imgDesc's action to "The upper bowl of an hourglass is filled with warm golden coloured sand, similar in colour to illustrated depictions of desert sand. Near the centre, a large pin-shaped figure with a circular gold head marked by a blue horizontal stripe is suspended in the sand. A second pin-shaped figure, about half its size, rests atop the larger figure’s head. The smaller figure has a gold circular head.")
}(go-to: "On their back")] beneath you. Another feeling is there, but different. In your head. It feels bad. You try to do something to stop the <!--[[bad|Around their neck]]-->(link: "bad[ (++sand, -time)](help|")[(track: 'playerBad', 'play')(track: 'step', 'play')(display: "sweat")(set: $sand to it + 0.5)(go-to: "Around their neck")].](else-if: visits >1 and $storyController contains "ignorance")[You move and turn. You look and see. You touch and feel. You learn good feelings and bad feelings. It feels bad to look directly at the light, but from under the shadow of your arm, you can see far away.
You see sand.
Sand splashes up with every movement from <!--[[the warm thing|On their back]]-->(link: "the warm thing[ (+sand, +perception, -time)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(set: $storyController to it - (a: "ignorance"))(set: $imgDesc's action to "Suspended in yellows sands of the upper bowl of the hourglass, the parent figure is topped by the small player figure.")(go-to: "On their back") ] below you. You blink sand out of your eyes and cry. You are <!--[[afraid|Around their neck]]-->(link: "afraid[ (++sand, -time)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(set: $sand to it + 0.5)(go-to: "Around their neck")].](else:)[(if: $storyController contains "ignorance")[(set: $storyController to it - (a: "ignorance"))]Sand gathers in the depressions and curves of the figure below you. Where there is not sand, sparkles of lights flicker across the slick expanse of skin upon which you ride. Skin like yours. You watch as sand splashes up and sticks to it, and you wipe it onto the body below you.
Each time you do, you feel a gentle nudge. The movement is playful and it makes you laugh. You love it. You love the body below you. Your parent.
The laughing continues, but the movements go from a nudge to a slough, and then a more insistent buck to encourage you to <!---[[let go|Into the sand]]-->(link: "let go[ (+sand, -time)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Into the sand")]. It is less fun now. It is a bit <!--[[scary|Around their neck]]-->(link: "scary[ (++sand, -time)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(set: $sand to it + 0.5)(go-to: "Around their neck")].]\
]<contentBox|\
</div>\
</div>\
</div>
{={(set: _siblings to (random: 1,100), _count to 0)
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T06-start-bg.png" alt="a container of sand" height="300" width="300">')
(set: $imgDesc's hourglass to "The upper dome of an hourglass filled with warm golden-yellow sand. ")
(if: _siblings is <=5)[(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T06-start-sibling.png" alt="smaller figures in a cluster" height="300" width="300">')(set: $imgDesc's action to it + "A cluster of 3 smaller pin-shaped figures, each with gold pinheads and a variety of dark blue striped markings, are near to the larger, parent figure. ")]
(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T06-start-parent.png" alt="a larger figure with a blue cross" height="300" width="300">')
(if: (history:)'s last is "Around their neck")[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T06-start-player-youth-distanced.png" alt="a solitary smaller figures" height="300" width="300">')
(set: $imgDesc's action to "The parent and player figure have split into two seperate figures and have a generous distance between them.")
](else:)[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T06-start-player-youth.png" alt="a smaller figure" height="300" width="300">')
(set: $imgDesc's action to "The parent and player figure have split into two seperate figures, but are still in close proximity. ")]
(unless: (history:)'s last is "Start/Pause Menu")[(set: $vitality to 10)]}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$parentIMG
(if: _siblings is <=5)[$siblingIMG]
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action) (if: _siblings is <=5)[(print: $imgDesc's siblings)]
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
<!--Non-traumatic separation (parent trusted / no drowning attempt)-->\
[You slide into the sand.
It is frightening.
Your arms and torso move wildly as the sand rises against your face. Grains gather in your mouth and nose. You gag and spit wet clumps back into the drift.
Nearby, your parent treads the sand beside you.
When you begin to sink, they [(link-repeat: "offer a limb[ (-sweat, +vitality[, -time](finite|)](help|")[(track: 'parentGood', 'stop')(track: 'parentGood', 'play')(set: $sweat to it - 0.5, $vitality to it +0.25, _count to it +1)(replace: ?statusBars)[(display: "statusBars")(if: _count >10)[(replace: ?offer)[offer a limb](show: ?growUp)](if: _count >5)[(track: 'sandMovement', 'stop')(track: 'sandMovement', 'play')(show: ?finite)(set: _timeLoss to 0.125)(display: "timeLoss")](if: $time is 8)[{(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T05-start-parent.png" alt="a larger figure with a blue cross" height="300" width="300">')
(if: (history:)'s last is "Around their neck")[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-start-player-youth-distanced.png" alt="a solitary smaller figures" height="300" width="300">')](else:)[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-start-player-youth.png" alt="a smaller figure" height="300" width="300">')]
(if: _siblings is <=5)[(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T05-start-parent-siblings.png" alt="smaller figures in a cluster" height="300" width="300">')]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$parentIMG
(if: _siblings is <=5)[$siblingIMG]
</div>]
(replace: ?imageDesc)[The hourglass sands drop to 4/5th full. The figures inside remain in the same place within the newly lowered sandline.]}]]]]<offer| against which you can steady yourself, but they never carry you fully.[ Eventually, they keep their distance.](growUp| You must continue working your lower body to keep your mouth above the sandline.
Slowly, your movements become less frantic.
You learn that (link: "broad strokes[ (+sand, ?vitality)](help|")[(track: 'sandExplore', 'stop')(track: 'sandExplore', 'play')(set: $sand to it + 0.125, $vitality to it -0.5, $sweat to it +0.5)(replace: ?statusBars)[(display: "statusBars")]broad strokes] keep you near the surface. (link: "Small movements[ (+sand, ?vitality, ?sweat)](help|")[(track: 'sandExplore', 'stop')(track: 'sandExplore', 'play')(set: $sand to it + 0.125, $vitality to it -0.75, $sweat to it +0.75)(replace: ?statusBars)[(display: "statusBars")]Small movements ] tire you. Panic drags you (link: "downward[ (+sand, ?vitality, ?sweat)](help|")[(track: 'sandExplore', 'stop')(track: 'sandExplore', 'play')(set: $sand to it + 0.125, $vitality to it -1, $sweat to it +1)(replace: ?statusBars)[(display: "statusBars")]downward].
[
Small figures drift near your parent.
Their bodies are lightly coated in damp sand that clings to their skin in uneven patches. They move in playful circles around you as you struggle to control your limbs.
Occasionally they climb onto your parent or rest against them before drifting away again.
You dislike how easily they come and go.
Your parent never seems upset to see them leave.
](sibling|
Over time, you rely on your parent less and less. They continue moving nearby, but you now propel yourself forward under your own power.
You notice the ripples spreading outward from your movements.
Then you notice the sand moves even when you are still.
Currents pull through the drift in <!--[[Hourglass' edge]]-->(link: "long, invisible paths[ (+sand, -vitality, -time)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Hourglass' edge")] beneath the surface.
]<noTrauma|\
<!--Traumatic separation (parentTrauma / drowning attempt)-->\
[You are dislodged from [the body]<body|[the thing](object| that carried you.
The sand swallows you immediately.
You choke on wet grains and sputter as the drift closes over your face. (link: "Panic[ (+sand, ?vitality, ?sweat)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $sand to it + 0.125, $vitality to it -1, $sweat to it +1)(replace: ?statusBars)[(display: "statusBars")]Panic] seizes your limbs.
The [body]<body|[thing](object| pulls you upward by the skin behind your head. You cough and spit thick clumps of sand back into the current.
They hold you only long enough for you to breathe, then they push you away.
You begin to sink again, but this time you move instinctively. Your arms pull through the drift in uneven strokes as you struggle to keep your mouth above the sandline.
When you cry out, the [body]<body|[thing](object| remains nearby, but distant. Watching. Waiting.
[
Smaller things move cautiously around the [body]<body|[thing](object|. Occasionally one reaches outward to steady itself against them. The [body]<body|[thing](object| welcomes their closeness.
When you move nearer, the smaller figures pull away. You try following them, but they maintain the same careful distance no matter how hard you push forward toward them.
You feel something sharp and hot [(link: "in your chest[ (+sand, +perception)](help|")[(track: 'sandMovement', 'play')(track: 'playerExplore', 'play')(set: $sand to it + 0.25)(if: $storyController contains "ignorance")[(set: $storyController to it - (a: "ignorance"))](replace: ?statusBars)[(display: "statusBars")](replace: ?body)[parent]]in your chest. You watch the smaller figures approach your parent without fear.
You remember the choking sounds.
You remember holding tighter when you were afraid.
The sharp feeling inside you changes.
It still (link: "hurts[ (+sand, +perception)](help|")[(track: 'sandMovement', 'play')(set: $sand to it +0.5)(if: $storyController contains "selfClingy")[(set: $storyController to it - (a: "selfClingy"))](show: ?growth)(replace: ?statusBars)[(display: "statusBars")]hurts, but differently[. You squeeze your eyes shut against the sting.
When you open them again, you realize the world extends beyond the bodies beside you](growth|]]<ignorantNotBlind|\
[\
(link: "inside yourself[ (++sand, +perception)](help|")[\
(track: 'sandMovement', 'play')(set: $sand to it + 0.5)(replace: ?statusBars)[(display: "statusBars")]\
(if: $storyController does not contain "sight")[\
(set: $storyController to it + (a: "sight"))
(replace: ?object)[body]\
]inside yourself. You squeeze your eyes shut against the sting.
When you open them again, you realize the world extends beyond the bodies beside you]](blind|.
](sibling|
Over time, your movements become steadier. You learn how to tread the sand without reaching for help.
Eventually, <!--[[Hourglass' edge]]-->(link: "you move apart[ (+sand, -vitality, -time)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Hourglass' edge")].
](trauma|\
]<contentBox|\
</div>\
</div>\
</div>
{=
(if: $last is "Around their neck")[(hide: ?noTrauma)(show: ?trauma)
(if: $storyController contains "sight")[(hide: ?body)(show:?object)]
(else-if: $storyController does not contain "ignorance")[(replace: ?body)[parent]]
(else:)[(hide: ?ignorantNotBlind)(show: ?blind)]
]
(if: _siblings is <=5)[(show: ?sibling)(set: $storyController to it + (a: "siblings"))]{
(set: $storyController to it + (a: "parentTrauma", "selfClingy"))
(if: $storyController contains "sight")[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T06-start-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T06-start-parent-drowning.png" alt="a single figure is sinking" height="300" width="300">')]
(else:)[]
(set: $imgDesc's action to "A round figure is half buried in sand within the upper part of an hourglass. Balanced on top is a pin-like figure. The lower figure's round shape is gold with a horizontal blue stripe. The small figure has a gold pin head. ")
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$parentIMG
</div>]<image|
[ID: [(print: $imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
You move and latch onto [the warm body]<parent|[[the body]<body|[the thing](object|](thing| below you. [(either: "", "You love the body below you. Your parent.", "You know the body below you is your parent.")]<parent|
There is a change.
[The movements beneath you become strained and uneven. The body coughs and jerks as sand splashes upward around you both.]<parent|[No longer does [the body]<body|[the thing](object| beneath you feel safe. T[he body]<body|[he thing](object| jerks and spasms beneath your touch. Its movements become violent and desperate.](thing|
You think about <!--[[Into the sand]]-->(link: "letting go[ (+sand, -vitality, -time)](help|")[letting go(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(set: $sand to it + 0.25, $vitality to it -2)(go-to: "Into the sand")]. You are afraid.
[You hold tighter.
The strokes through the sand slow. What was once rhythmic becomes panicked and uneven. (if: $storyController contains "sight")[(either: "You squint against the brightlight above the sandline.", "You can see the sand splashing upward with every moment.")]
You hear choking sounds.
You make sounds too, loud sounds(if: visits >1)[, knowing](else:)[, hoping] they will cover the frightening ones.]<parent|\
[The movements that pull [the body]<body|[the thing](object| forward through the sand begin to slow. There is a noise you do not like. You make noises too. Your noises cover the bad noises. (if: visits is >1)[The bad noises are familiar now.]](thing|
[Your body feels wrong. Heavy.
The sandline climbs higher along the body below you. Sand gathers in the folds of wrinkling skin.]<parent|[You feel a bad feeling in your body below the sandline. The sand rises around you and [the body]<body|[the thing](object| below you.](thing|
[Your bodies are ]<parent|[|body>[The body is ][The thing is ](object|](thing|<!--[[Drowning in a sea of sand]]-->(link: "sinking[ (---time, ++sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(set: $sand to it +1, $time to it -1, $storyController to it + (a: "murderer"))(set: $imgDesc's action to "A small, pin-like figure balances upon a submerged black mound in yellow sand within the upper part of an hourglass. The small figure has a gold pin head.")(go-to: "Drowning in a sea of sand")].
]<contentBox|\
</div>\
</div>\
</div>
{=
(if: $storyController contains "ignorance")[(hide: ?parent)(show: ?thing)]
(unless: $storyController contains "sight")[(hide: ?body)(show:?object)]{
<!--Set images-->
(display: "swimSands-images")
<!--Set passage chooser-->
(set: _chooser to (a: "reflection1", "monotony", "middleAge", "searchRest"))
(if: $storyController does not contain "period")[(set: _chooser to it + (a: "period", "period", "period"))]
(if: $storyController does not contain "partneredUp" or $storyController does not contain "friends")[(set: _chooser to it + (a: "sandPeople", "sandPeople2"))]
(if: $sand is >4 and $storyController contains "period")[(set: _chooser to it + (a: "reflection2", "reflection3"))]
(set: _passagechoice to (either: ..._chooser))
<!--Set relationship erosion-->
(set: _fade to (random: 1,6))
(if: _passagechoice is "reflection3")[
(if: $time >=8)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-edge-player-experiment.png" alt="a single figure with extensions made of sand" height="300" width="300">')
]
(else-if: $time >=7)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-edge-player-experiment.png" alt="a single figure with extensions made of sand" height="300" width="300">')
]
(else-if: $time >=6)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-edge-player-experiment.png" alt="a single figure with extensions made of sand" height="300" width="300">')
]
(else-if: $time >=5)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-edge-player-experiment.png" alt="a single figure with extensions made of sand" height="300" width="300">')
]
(else:)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-edge-player-experiment.png" alt="a single figure with extensions made of sand" height="300" width="300">')
](set: $imgDesc's action to "The player figure is near the outer edge of the upper bowl. Four curved extensions rise from either side of the figure’s head. ")]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
You (either: "swim the sand", "move through the sand", "ride the current through the sand", "pull yourself forward through the sand", "catch the current", "float", "drift", "push through the sand")(if: $vitality <=3)[, desperately searching for a place to rest. (if: $storyController contains "partneredUp" or $storyController contains "friends")[Your (if: $storyController contains "partneredUp")[partner](else:)[companion] point(if: $partnerB's active is 2)[](else:)[s] out ](else:)[You notice] <!--[[Island]]-->(link: "unmoving shapes[ (-time, +/++vitality, +/-sweat, +/-sand)](help|")[(track: 'sandMovement', 'play')(if: (history:) contains "Island")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "Island")] above the sandline in the distance.
{(if: $storyController contains "partneredUp")[(if: $partnerB's active is 2)[(show: ?partnerBIMG)](show: ?partnerAIMG)](if: $storyController contains "friends")[(show: ?friendIMG)]}\
]<exhausted|(else:)[.
(if: visits < 2)[Currents pull you through familiar paths beneath the drifting surface. (if: $storyController contains "partneredUp" or $storyController contains "friends")[As you travel together, you and your (if: $storyController contains "partneredUp" and $storyController contains "friends")[pod](else-if: $storyController contains "partnered Up")[partner](else:)[companion] take turns leading the way.] Sometimes you follow them without thought. Sometimes you resist them simply to feel your own movements.](else:)[(either: "Currents pull you through familiar paths beneath the drifting surface.","You drift through slow-moving currents.","You are pulled through slow-moving and familiar sands.")]
[
One day, the sand begins gathering differently across your body.
Not above the sandline where sweat usually catches drifting grains, but lower. The accumulation clings heavily beneath you, changing the balance of your movements.
A dull ache settles deep within your body.
You feel heavier. Slower.
(if: $storyController contains "friends")[Your companion considers your new speed, shrugs, and then recalibrates to <!--[[Swim the sand]]-->(link: "match it[ (-time)](help|")[(track: 'step', 'play')(track: 'friendGood', 'play')(set: _timeLoss to -0.25)(display: "timeLoss")(go-to: "Swim the sand")].](else:)[Other <!--[[Surrounded by bodies in an ocean of sand]]-->(link: "swimmers[ (-time, -vitality, +sweat, +sand, ?companion)](help|")[(track: 'step', 'play')(track: 'playerExplore', 'play')(display: "sweat")(go-to: "Surrounded by bodies in an ocean of sand")] begin looking at you differently.]
](period|\
[
Far in the distance, the currents descend into a <!--[[The swirling sand]]-->(link: "churning depression[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(if: (history:) contains "The swirling sand")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "The swirling sand")] where sand continuously folds downward into itself.
Sometimes you notice figures moving deliberately toward it.
](middleAge|\
[
For a time, each movement feels the same as the last.
Stroke. Glide. Breathe.
The pattern repeats until the rhythm of (if: $storyController contains "partneredUp" or $storyController contains "friends")[your bodies](else:)[your body] becomes difficult to separate from the currents themselves. [When you shake yourself from the drift, you realize you are alone.](fade|
](monotony|\
[
Sometimes you (if: $storyController contains "partneredUp" or $storyController contains "friends")[both] drift toward the sand’s edge and lay against the cool barrier. You let the current slide you along its surface.
[
In the reflection, you watch <!--[[Surrounded by bodies in an ocean of sand]]-->(link: "bodies[ (-time, -vitality, +sweat, +sand, ?companion)](help|")[(track: 'sandMovement', 'play')(if: (history:) contains "Surrounded by bodies in an ocean of sand")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "Surrounded by bodies in an ocean of sand")] crossing distant currents behind you while darkness stretches endlessly beyond.
(if: $storyController contains "partneredUp" or $storyController contains "friends")[Your (if: $storyController contains "partneredUp")[partner](else:)[companion] always begins to swim away first.](else:)[You never remain there for long.
]
](reflection1|\
[
Some days you swim toward the edge simply to watch yourself move within the glass.
(if: $storyController contains "sandBurden")[
Over time, sand gathers and congeals across your sweating body.]\
(else:)[
(if: $storyController contains "ignorance")[Over time, sand has (link: "gathered[ ( +perception )](help|")[(track: 'sandMovement', 'play')(track: 'playerExplore', 'play')(set: $towardsWisdom to it +1)(if: $towardsWisdom is >=4)[(show: ?wisdom)](unless: $storyController contains "sandBurden")[(set: $storyController to it + (a: "sandBurden"))]gathered] on your body. [You have learned that prolonged effort changes the way sand gathers across your sweating body.](wisdom|\
]\
(else:)[You learn that prolonged effort changes the way sand gathers across your sweating body.\
]
]
With careful movements, you shape the accumulation into (link: "new forms[ (+/-sand, +vitality, +skill)](help|")[(track: 'sandMovement', 'play'){
(set: _experimentation to (random: 1,3))
(if: _experimentation is 1)[(show: ?style1)(set: $sand to it +1)]
(if: _experimentation is 2)[(show: ?style2)(set: $sand to it +1)]
(if: _experimentation is 3)[(show: ?style3)(set: $sand to it -1)]
(show:?timeGone)
(set: $vitality to it +1)
(unless: $storyController contains "dolledUp")[(set: $storyController to it + (a: "dolledUp"))]}new forms]. (if: $storyController contains "partneredUp" or $storyController contains "friends")[Your (if: $storyController contains "partneredUp")[partner watches with reserved interest.](else:)[companion watches and then performs their own experiments in the reflection beside you.]
]\
[
Sometimes you broaden your silhouette.
](style1|\
[
Sometimes you build long shapes extending from your head or shoulders.
](style2|\
[
Sometimes you create delicate ridges that collapse the moment your movements become too abrupt.
](style3|\
[
You (if: $storyController contains "friends")[both ]lose <!--[[Swim the sand]]-->(link: "long stretches[ (-time)](help|")[(track: 'step', 'play')(if: _fade is 6)[(if: $partnerB's active is 2)[(track: 'partnerBbad', 'play')(set: $partnerB's active to 0)](else-if: $partnerA's active is 2)[(track: 'partnerAbad', 'play')(set: $partnerA's active to 0, $storyController to it - (a: "partneredUp"))]](else:)[(if: $storyController contains "friends")[(track: 'playerGood', 'play')](else:)[(track: 'playerGood', 'play')]](set: _timeLoss to -0.5)(display: "timeLoss")(go-to: "Swim the sand")] of time experimenting beside your reflection. (unless: _fade is 6)[(if: $storyController contains "partneredUp")[Your partner naps gently against the barrier's ledge.]][When you look for your partner, they are no where to be found.
](fade|\
](timeGone|
](reflection2|\
[\
(if: $storyController contains "sandBurden")[Over time, sand gathers and congeals across your sweating body.]\
(else:)[
(if: $storyController contains "ignorance")[Over time, sand has (link: "gathered[ ( +perception )](help|")[(track: 'sandMovement', 'play')(track: 'playerExplore', 'play')(set: $towardsWisdom to it +1)(if: $towardsWisdom is >=4)[(show: ?wisdom)](unless: $storyController contains "sandBurden")[(set: $storyController to it + (a: "sandBurden"))]gathered] on your body. [You have learned that prolonged effort changes the way sand gathers across your sweating body.]<wisdom|\
]\
(else:)[You learn that prolonged effort changes the way sand gathers across your sweating body.\
]
]
Some days you shape the damp sand gathered across your body into (link: "elaborate structures[ ( +vitality, -sweat )](help|")[(track: 'sandMovement', 'play')(set: $vitality to it +1, $sweat to it -1)(show: ?play)(set: $wonder to it +1){
(if: $time >=8)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-edge-player-horn.png" alt="a single figure with a horn extension made of sand" height="300" width="300">')
]
(else-if: $time >=7)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-edge-player-horn.png" alt="a single figure with a horn extension made of sand" height="300" width="300">')
]
(else-if: $time >=6)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-edge-player-horn.png" alt="a single figure with a horn extension made of sand" height="300" width="300">')
]
(else-if: $time >=5)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-edge-player-horn.png" alt="a single figure with a horn extension made of sand" height="300" width="300">')
]
(else:)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-edge-player-horn.png" alt="a single figure with a horn extension made of sand" height="300" width="300">')
]
(set: $imgDesc's action to "A single pointed extension rises from the figure’s head. ")(replace: ?imageDesc)[(print: $imgDesc's hourglass) (print:$imgDesc's action)]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]} elaborate structures] and watch them shift in the reflection beside you.
(if: $storyController contains "partneredUp")[\
(if: $partnerA's creator is 1 or $partnerB's creator is 1)[Your partner observes you with unrestrained joy. They also form a structure, but pull it boldly away from their body to (link: "offer it[ (-time, ++sweat, +sand, -vitality, +creation)](help|")[{
(track: 'step', 'play')(if: $partnerB's creator is 1)[(track: 'partnerBgood', 'play')](else:)[(track: 'partnerAgood', 'play')]
(display: "sweat")
(set: $sand to it +1)
(go-to: "Make a baby")
}] to you. They hold out an {
(link: "empty[ (-partner)](help|")[
(track: 'sandMovement', 'play')
(if: $partnerB's active is 2)[(track: 'partnerBbad', 'play')(set: $partnerB's active to 0)](else:)[(track: 'partnerAbad', 'play')(set: $storyController to it - (a: "partneredUp"), $partnerA's active to 0)]
(show: ?ending)
]} hand waiting.
[You touch their empty hand and watch them return their clay to their body. They hold your hand a moment longer and then swim away.
](ending|
]\
]\
(else-if: $storyController contains "friends")[\
With each new form, your companion beams at your creation.
]\
[
One day you build a long point extending upward from your forehead and spend hours trying to keep it from collapsing back into the drift.
You feel strangely victorious <!--[[Swim the sand]]-->(link: "each time[ (-time)](help|")[\
(track: 'step', 'play')(track: 'playerGood', 'play')\
(set: _timeLoss to 0.125)(display: "timeLoss")\
(go-to: "Swim the sand")\
]\
(if: $storyController contains "friends")[your companion celebrates.](else:)[it lasts a little longer.]
](play|\
](reflection3|\
](sandsEdge|\
[
You occasionally notice distant <!--[[Surrounded by bodies in an ocean of sand]]-->(link: "figures[ (-time, -vitality, +sweat, +sand, ?companion)](help|")[(track: 'step', 'play')(if: (history:) contains "Surrounded by bodies in an ocean of sand")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "Surrounded by bodies in an ocean of sand")] moving through the sand.
Some travel alone.
Some move in <!--[[Synchronized swimming in the current of sand]]-->(link:"loose groups[ (-time, -vitality, +sweat, +sand, ?partner)](help|")[(track: 'step', 'play')(if: (history:) contains "Synchronized swimming in the current of sand")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "Synchronized swimming in the current of sand")].
Some drift so near the surface that their shoulders remain dry above the sandline.
](sandPeople|\
[
Other <!--[[Surrounded by bodies in an ocean of sand]]-->(link: "figures[ (-time, -vitality, +sweat, +sand, ?companion)](help|")[(track: 'step', 'play')(if: (history:) contains "Surrounded by bodies in an ocean of sand")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "Surrounded by bodies in an ocean of sand")] move through the distance around you, appearing and disappearing beyond the shifting sandline.
Faster currents lead out to some of the busier <!--[[Synchronized swimming in the current of sand]]-->(link:"areas[ (-time, -vitality, +sweat, +sand, ?partner)](help|")[(track: 'step', 'play')(if: (history:) contains "Synchronized swimming in the current of sand")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "Synchronized swimming in the current of sand")].
](sandPeople2|\
[Some days your limbs grow heavy long before the currents slow.
(if: $storyController contains "partneredUp" or $storyController contains "friends")[Your (if: $storyController contains "partneredUp")[partner](else:)[companion] points out ](else:)[You begin noticing] <!--[[Island]]-->(link: "unmoving shapes[ (-time, +/++vitality, +/-sweat, +/-sand)](help|")[(track: 'step', 'play')(if: (history:) contains "Islands")[(track: 'playerGood', 'play')](else:)[(track: 'playerExplore', 'play')](display: "sweat")(go-to: "Island")] rising above the sandline in the distance.
](searchRest|\
]<notExhausted|\
The <!--[[Swim the sand]]-->(link: "days pass[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] in motion.
]<contentBox|\
</div>\
</div>\
</div>
{=
(if:_passagechoice is "period")[(show: ?period)(set: $storyController to it + (a: "period"))]
(if:_passagechoice is "monotony")[
(show: ?monotony)
(if: _fade is 6)[
(if: $storyController contains "friends" or $storyController contains "partneredUp")[
(show: ?fade)
(if: $storyController contains "friends")[
(set: $storyController to it - (a: "friends"))
]
(else:)[
(if: $partnerB's active is 2)[
(set: $partnerB's active to 0)
]
(else:)[
(set: $storyController to it - (a: "partneredUp"), $partnerA's active to 0)
]
]
]
]
]
(if:_passagechoice is "middleAge")[(show: ?middleAge)]
(if:_passagechoice is "sandPeople")[(show: ?sandPeople)]
(if:_passagechoice is "sandPeople2")[(show: ?sandPeople2)]
(if:_passagechoice is "reflection1")[(show: ?reflection1)(set: $sweat to it -2)]
(if:_passagechoice is "reflection2")[
(show: ?sandsEdge)
(set: $sweat to it -1)
(show: ?reflection2)
(if: _fade is 6)[
(if: $storyController contains "friends" or $storyController contains "partneredUp")[
(show: ?fade)
(if: $storyController contains "partneredUp")[(if: $partnerB's active is 2)[(set: $partnerB's active to 0)](else:)[(set: $storyController to it - (a: "partneredUp"), $partnerA's active to 0)]]
]
]
]
(if:_passagechoice is "reflection3")[(show: ?sandsEdge)(show: ?reflection3)(set: $sweat to it -2)]
(if:_passagechoice is "searchRest")[(show: ?searchRest)]{(display: "swirling-images")
}
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
(if: $time is >7)[\
The sands ahead churn violently around a distant central depression. Currents spiral inward from every direction, bodies occasionally vanishing beneath the surface before emerging again further out. You watch for a long while.
The movement feels strange and compelling, also distant from you somehow. You try once to swim closer and immediately feel your body dragged beneath the sandline by the strength of the current. Startled, you pull yourself back toward calmer sands.
You are unsure why, but something inside you resists the swirling centre completely. It feels like a place for other bodies.
Not yours.
(if: $storyController contains "parentTrauma")[\
Still, there is something about the current that unsettles you. Even as you retreat from it, part of you feels aware that one day the sands may pull you there whether you wish it or not.
]
You remain for a while watching swimmers circle the depression. Some resist the pull desperately. Others seem almost relieved when they finally disappear beneath the surface. Occasionally another swimmer lunges into the current and drags someone free before they vanish below.
You watch bodies synchronize their movements against the undertow, stiff and uneven at first, before eventually finding a strange harmony together within the dangerous current. One swimmer catches your eye and briefly mirrors the timing of your strokes before drifting away again.
Ultimately, you decide to keep your <!--[[Swim the sand]]-->(link: "distance[ (-time, +sweat, -vitality, +sand)](helmusicp|")[(display: "sweat")(go-to: "Swim the sand")].
]\
<!-- Forced / Perimenopause -->\
(else-if: $storyController contains "perimenopause")[\
(if: (history:)'s 2ndlasttolast is (a: "The swirling sand", "Swim the sand"))[You attempt to escape, but you are sucked in](else:)[You blink. You don't remember swimming here, but you have no time to reflect] as the current spirals violently toward a churning (link: "depression[ (-time)](help|")[depression(set: _timeLoss to 0.125)(display: "timeLoss")(replace: ?statusBars)[(display: "statusBars")](show:?nextP)] at the centre of (if: $storyController contains "ignorance")[the sands](else:)[the contained world].
[\
You try to keep your distance from it. But the current no longer allows that. It grips at your body and drags you sideways through the sand no matter how hard you work.
(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[\
Your partners swim beside you, struggling to keep pace as the current jerks all of your bodies unevenly toward the whirlpool.\
]\
(else:)[\
Your partner reaches for you repeatedly through the violent current, but neither of you can keep steady hold for long.
](if: $storyController contains "friends")[
]\
]\
(if: $storyController contains "friends")[\
Your companion (if: $storyController contains "partneredUp")[also ]appears briefly beside you, sand spraying wildly around their body as they attempt to fight the undertow in a parallel current.
]\
The closer you drift toward the centre, the less useful your strokes become. Your lower body now pulls you forward instead of propelling you there. You realize with growing horror that you are no longer choosing your direction. The current chooses for you.
You pump your arms harder. You propel yourself up desperately. The current drags you under anyway. The world spins violently around your body as the swirling sands seize you and pull you downward through the narrowing throat of the vortex <!--[[Down a waterfall of sand]]-->(link: "below[ (-elevation)](help|.")[(track: 'playerBad', 'play')(track: 'sandMovement', 'play')(go-to: "Down a waterfall of sand").]
](nextP|\
]\
(else:)[<!--Time is less than 7-->\
The sands ahead churn violently around a central depression in the (if: $storyController contains "ignorance")[the sands](else:)[the contained world]. (if: $storyController contains "sight")[Current from every direction spirals inward toward the hole.]
You drift (link: "closer[ (-time, +sweat)](help|")[closer(replace: ?escapeLink)[escape](track: 'playerExplore', 'play')(set: _timeLoss to 0.125)(display: "timeLoss")(replace: ?statusBars)[(display: "statusBars")](replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)](show:?nextP2)] cautiously. (if: (history:)'s last is "The swirling sand")[The current is insistent.](else:)[It is still possible to <!--[[Swim the sand]]-->[(link: "escape[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'playerGood', 'play')(track: 'sandMovement', 'play')(display: "sweat")(go-to: "Swim the sand")]]<escapeLink| the current's pull.]
[
The pull is immediate. Unlike the calmer sands near the borders, this current does not respond cleanly to your strokes. It catches beneath your lower body and drags you sideways through the sand with frightening strength.
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[\
Your partners drift close beside you as all three of you circle the dangerous current together.
]\
(else:)[\
Your partner keeps pace beside you while both of your bodies orbit the churning sands.
](if: $storyController contains "friends")[
]\
]\
(if: $storyController contains "friends")[
Your companion appears nearby, swimming carefully against the undertow while watching the centre with visible unease.
]
Closer bodies vanish beneath the swirling sands below. Some re-emerge coughing and panicked further outward. Others never surface again.
You feel both terror and curiosity pulling at you simultaneously.
(if: $storyController contains "friends" and $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[Your partners and companion hover near by, looking from you to the swirling centre. They all look ready to bolt.]\
(else:)[Your partner and companion hover near by, looking from you to the swirling centre. They both look ready to bolt.]
]\
(else-if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[Your partners hover near by, looking from you to the swirling centre. They both look ready to bolt.]\
(else:)[Your partner hovers near by, looking from you to the swirling centre. They look ready to bolt.]
]\
(else-if: $storyController contains "friends")[Your companion hovers near by, looking from you to the swirling centre. They look ready to bolt.] You work to (if: (history:)'s last is "The swirling sand" or $time is <=5)[escape](else:)[|escapeLink2>[(link: "escape[ (-time, +sweat, -vitality)](help|")[escape{
(if: $vitality is >=4)[
(show:?resist)
]
(else:)[
(show: ?fall)
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-swirling-player-down.png" alt="a single figure caught in the swirling sands" height="300" width="300">')
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
(set: $imgDesc's action to "The player figure is caught within the spiral ")
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "The companion and two partner figures are nearby but outside the spiral.")]
(else:)[(set: $imgDesc's action to it + "The companion and partner figures are nearby but outside the spiral.")]
]
(else:)[(set: $imgDesc's action to it + "The companion figure is nearby but outside the spiral.")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "The two partner figures are nearby but outside the spiral.")]
(else:)[(set: $imgDesc's action to it + "The partner figure is nearby but outside the spiral.")]
]
(replace: ?imageDesc)[
(print: $imgDesc's hourglass) (print:$imgDesc's action)
]
(set: _timeLoss to 0.125)(display: "timeLoss")
(set: $sweat to it +1, $vitality to it -1)
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $time is 1)[(show: ?help)]
}]]] the current, but it is (link: "exhausting[ (-time)](help|")[exhausting(replace: ?escapeLink2)[escape](set: _timeLoss to 0.125)(display: "timeLoss")(replace: ?statusBars)[(display: "statusBars")](replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)](show:?fall)].
](nextP2|
[\
The current seizes your body immediately. You panic and surge up hard against it, barely managing to angle yourself sideways through the spinning sand. For several terrifying moments your lower body pulls toward the depression faster than your arms can correct.
(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[
Your partners mirror your frantic movements, all three of you fighting your way unevenly back toward calmer currents together.
]\
(else:)[
Your partner grabs your arm and together you force yourselves sideways through the undertow until the current finally weakens.
](if: $storyController contains "friends")[
]\
]\
(if: $storyController contains "friends")[
Your companion matches your movements stroke for stroke until (if: $storyController contains "partneredUp")[you all](else:)[both of you] finally break free of the current together.
]
Even after escaping, your body continues trembling from the pull of the sands beneath you. You need somewhere solid to recover before the current catches you again. You swim shakily toward the distant hardened (link: "islands[ (-time, +sweat, +/+vitality)](help|")[(track: 'playerGood', 'play')(track: 'sandMovement', 'play')(display: "sweat")(go-to: "Island")].
](resist|\
[\
The undertow catches your body with impossible force. Your attempts at escape are useless. Your strokes stop mattering, and everything becomes spinning sand and violent motion.\
(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[\
Your partners are pulled beside you, bodies colliding violently as all three of you vanish together beneath the swirling current.\
]\
(else:)[\
Your partner reaches desperately toward you as both of your bodies are dragged downward together.\
]\
]\
(if: $storyController contains "friends")[\
Your companion lunges after you through the violent current rather than letting you disappear alone.\
]
The roaring sands spin your body helplessly <!--[[Down a waterfall of sand]]-->(link: "downward[ (-time)](help|")[(set: $tier to 1)(go-to: "Down a waterfall of sand")].
](fall|\
]\
]<contentBox|\
</div>\
</div>\
</div>{
(unless: $storyController contains "friends")[
<!--player can only have 1 companion in a playthrough but can engage in passages here with a pre-existing friend. The following overwrites previous friend stats-->
<!--Load a temporary friend-->
(set: _cling to (random:1,6))
(set: _patience to (random: 1,6))
(set: _intimacy to (random: 1,6))
(set: _vitality to (random: 1,8)+2)
(set: _poly to (random:1,6))
<!--Set up the friend-->
(set: $friend's cling to 0)
(set: $friend's patience to 0)
(set: $friend's intimacy to 0)
(set: $friend's vitality to 0)
(set: $friend's poly to 0)
(if: _cling >=5)[(set: $friend's cling to 1)]
(if: _patience >= 3)[(set: $friend's patience to 1)]
(if: _intimacy>= 4)[(set: $friend's intimacy to "interested")]
(if: _poly >= 4)[(set: $friend's poly to 1)]
(set: $friend's vitality to _vitality)
]
<!--Set passage chooser-->
(set: _surroundScene to "")
(set: _chooser to (a: "pod"))
(if: $storyController does not contain "sandFeelings" and $storyController contains "siblings")[
(set: _chooser to it + (a: "siblings"))
]
(if: $storyController does not contain "fling")[
(set: _chooser to it + (a: "fling"))
]
(if: $storyController does not contain "friends" and $storyController does not contain "partneredUp")[
(if: $storyController does not contain "sweetHearts")[(set: _chooser to it + (a: "sweetHearts"))]
(if: $time <=8)[(set: _chooser to it + (a: "enticement"))]
(unless: $storyController contains "sandy")[(set: _chooser to it + (a: "pals"))]
(unless: $storyController contains "dusty")[(set: _chooser to it + (a: "pals2"))]
]
(if: $time >=8)[(set: _chooser to it + (a: "pod"))]
(if: $time <=7)[(set: _chooser to it + (a: "missedConnection"))]
(if: $time <=6)[(set: _chooser to it + (a: "missedConnection"))]
(set: _surroundScene to (either: ..._chooser))
(display: "surround-images")
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$siblingIMG
$partneraIMG
$partnerbIMG
$environmentIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[\
On one passage through the currents, you find yourself joined by a familiar swimmer. You recognize them immediately as one of the swimmers from your original sand pod. There was a time when their closeness to your parent filled you with sharp and (link: "possessive")[{
(unless: $storyController contains "sandFeelings")[
(set: $storyController to it + (a: "sandFeelings"))
]
(set: $towardsWisdom to it +1)
(show: ?growUp)
(if: $towardsWisdom is >=4)[
(hide: ?ignorance)(show: ?wisdom)
]
(else-if: $storyController contains "ignorance")[
(hide: ?wisdom)(show: ?ignorance)
]
}possessive] feelings.[
[You once believed their closeness meant there would be less room for you.]<wisdom|[Now, drifting beside them again, the feeling seems strange to you.
You do not understand why it once hurt so much.](ignorance|[
Now, separated from those early currents and your desperate need for reassurance, you allow yourself to drift beside them more easily.]<wisdom| You splash sand toward one another playfully. You wrestle briefly beneath the sandline before both resurfacing coughing and laughing. (if: $storyController contains "partneredUp")[Your partner gives you a little space, but always stays nearby. ](if: $storyController contains "friends")[Your companion sometimes joins you. ]The days that follow are filled with movement, noise, and the comfort of familiar rhythms.
Eventually, your strokes grow different again.
One day you notice they are <!--[[Swim the sand]]-->(link: "no longer[ (-time, +sweat, -vitality, +sand)](help|")[(display: "sweat")(go-to: "Swim the sand")] beside you(if: $storyController contains "partneredUp" and $storyController contains "friends")[, but your partner and companion remain nearby.](if: $storyController contains "partneredUp")[. Your partner returns to your side. ](if: $storyController contains "friends")[, but your companion remains nearby and constant].](growUp|\
](siblings|\
[Recently, you have taken to following in the wake of another swimmer whose movements captivate you.
You struggle to imitate their strokes exactly. At first, you are certain they do not notice your mimicry. Or perhaps they simply do not mind.
Then one day they stop suddenly and drift sideways out of the current. Without their wake pulling you forward, you stumble awkwardly through the sand. You are certain confrontation is coming.
Instead, they greet you with a sandy-mouthed grin.
For many rotations through the outskirts of the current, the two of you experiment with new ways of moving together. Your movements remain <!--[[Swim the sand]]-->(link: "distinct[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].
Until, gradually, <!--[[Synchronized swimming in the current of sand]]-->(link: "they do not[ (-time, -vitality, ++sweat, +sand, +companion)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'friendGood', 'play')(display: "sweat")(set: $sweat to it +1, $storyController to it + (a: "friends", "friends2Lovers"), $friend's intimacy to "sweetHeart")(go-to: "Synchronized swimming in the current of sand")].](sweetHearts|\
[It is not until you drift near the reflective barrier that you notice another swimmer following behind you.
Their movements repeat your own with startling precision.
At first, you are flattered. You exaggerate your strokes slightly just to watch them imitate you. Then the feeling changes. Their movements begin looking smoother than your own. More confident.
You stop treading abruptly.
The swimmer collides hard into your back.
The impact sends accumulated sand bursting from both your bodies into the surrounding currents. You grab at them instinctively. They grab back. For a few frantic moments, both of you churn violently beneath the sandline, each refusing to release the other first.
Then something shifts and a burst of laughter escapes you. The other swimmer sputters sand and begins laughing too. Soon both of you are wiping sweat from your eyes while struggling to remain above the sandline.
After that day, <!--[[Swim the sand]]-->(link: "you rarely drift very far apart[ (-time, -vitality, +sweat, +sand, +companion)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'friendGood', 'play')(set: $storyController to it + (a: "friends", "sandy"))(display: "sweat")(go-to: "Swim the sand")].](pals|\
[You have almost bumped into them twice now, so when you find yourself sharing a current with a familiar body, you are emboldened to make formal contact. You swim out of their wake and up beside them, making large, friendly gestures. They grin and match their tempo to stay abreast with your passage through the sands.
Days pass, and you hardly notice the time spent amicably in their company.
From then on, <!--[[Swim the sand]]-->(link: "you are often together[ (-time, -vitality, +sweat, +sand, +companion)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'friendGood', 'play')(set: $storyController to it + (a: "friends", "dusty"))(display: "sweat")(go-to: "Swim the sand")].](pals2|\
[During one crowded passage through the currents, you collide accidentally with another swimmer.
They spit sand toward you angrily. You respond with slow, apologetic motions beneath the sandline. The swimmer watches you for a moment, then tilts their head and drifts away.
Without fully understanding why, you gather some of the sand they spit out and press it against your shoulder before <!--[[Swim the sand]]-->(link: "continuing[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(set: $storyController to it + (a:"fling"))(display: "sweat")(go-to: "Swim the sand")] onward.](fling|\
[For a time, you travel alongside several other swimmers through the same fast-moving currents(if: $storyController contains "partneredUp" and $storyController contains "friends")[, your partner and companion keeping pace nearby.](if: $storyController contains "partneredUp" or $storyController contains "friends")[, your (if: $storyController contains "partneredUp")[partner](else:)[companion] by your side.](else:)[. You are all similar in size.]
Without discussion, those at the front rotate regularly, allowing others to drift more easily within their wake. The shared movement makes long passages through the sand less exhausting. Sometimes the group grows. Sometimes swimmers disappear quietly into slower currents elsewhere.
No one ever announces when they are leaving.
In time, you find yourself <!--[[Swim the sand]]-->(link: "swimming[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")](if: $storyController contains "partneredUp" and $storyController contains "friends")[ back down to just you, your partner, and your companion](else-if: $storyController contains "partneredUp" or $storyController contains "friends")[ down to two, just you and your (if: $storyController contains "partneredUp")[partner](else:)[companion]](else:)[ alone] again.](pod|\
[While searching for a place to rest, you notice a swimmer ahead treading carefully in a slower current. They are watching you.
Not casually. Intently.
As you approach, you notice damp sand gathered in the corners of their mouth and eyes. Slowly, they raise one hand above the sandline. You weave your fingers through theirs instinctively. Without resistance, you allow yourself to be <!--[[Swim the sand]]-->(link: "pulled gently forward[ (-time, -vitality, +sweat, +sand, +companion)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'friendGood', 'play')(display: "sweat")(set: $sweat to it +1, $storyController to it + (a: "friends"), $friend's intimacy to "sweetHeart")(go-to: "Synchronized swimming in the current of sand")] through the current behind them.](enticement|\
[You notice distant swimmers crossing through nearby currents. Several times you attempt altering your path toward them(if: $storyController contains "partneredUp" or $storyController contains "friends")[, amicably leaving your (if: $storyController contains "partneredUp")[partner](else:)[companion] for a time]. Each time the shifting flow of the sand changes their direction before you can close the distance.
Before long, the figures disappear beyond the drifting sandline altogether.
You continue swimming <!--[[Swim the sand]]-->(if: $storyController contains "partneredUp" or $storyController contains "friends")[, shrugging as you (link: "return[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] to your (if: $storyController contains "partneredUp")[partner](else:)[companion]'s side.](else:)[(link: "alone[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")]].](missedConnection|\
]<contentBox|\
</div>\
</div>\
</div>
{=
(if: _surroundScene is "pod")[(show: ?pod)]
(if: _surroundScene is "siblings")[(show: ?siblings)]
(if: _surroundScene is "fling")[(show: ?fling)]
(if: _surroundScene is "sweetHearts")[(show: ?sweetHearts)]
(if: _surroundScene is "enticement")[(show: ?enticement)]
(if: _surroundScene is "pals")[(show: ?pals)]
(if: _surroundScene is "pals2")[(show: ?pals2)]
(if: _surroundScene is "missedConnection")[(show: ?missedConnection)]{
(set: _polyFriend to 0)
(set: _passagechoice to "")
<!--First important check - Has the player had a period? No partner before that -->
(if: $storyController contains "period")[
<!--Load a temporary partner-->
(set: _cling to (random:1,6))
(set: _patience to (random: 1,6))
(set: _creator to (random: 1,6))
(set: _adopt to (random: 1,6))
(set: _vitality to (random: 1,8)+2)
(set: _poly to (random:1,6))
<!--Check if a partner exists, 0 means inactive, 1 means courting, 2 means partnership-->
(if: $partnerA's active is 0)[
(set: $partnerA's active to 1)
(set: $partnerA's cling to 0)
(set: $partnerA's patience to 0)
(set: $partnerA's creator to 0)
(set: $partnerA's adopt to 0)
(set: $partnerA's vitality to 0)
(set: $partnerA's poly to 0)
]
<!--PartnerA is open to a poly relationship-->
(else-if: $partnerB's active is 0 and $partnerA's poly is 1)[
(set: $partnerB's active to 1)
(set: $partnerB's cling to 0)
(set: $partnerB's patience to 0)
(set: $partnerB's creator to 0)
(set: $partnerB's adopt to 0)
(set: $partnerB's vitality to 0)
(set: $partnerB's poly to 0)
]
(if: $partnerA's active is 1)[
(if: _cling >=5)[(set: $partnerA's cling to 1)]
(if: _patience >= 4)[(set: $partnerA's patience to 1)]
(if: _creator >= 3)[(set: $partnerA's creator to 1)]
(if: _adopt >= 4)[(set: $partnerA's adopt to 1)]
(if: _poly >= 4)[(set: $partnerA's poly to 1)]
(set: $partnerA's vitality to _vitality)
(if: $friend's intimacy is "sweetHeart" or $friend's intimacy is "interested")[
(if: $friend's poly is 1)[(set: $partnerA's poly to 1)](else:)[(set: $partnerA's poly to 0)]
]
]
(if: $partnerB's active is 1)[
(if: _cling >=5)[(set: $partnerB's cling to 1)]
(if: _patience >= 4)[(set: $partnerB's patience to 1)]
(if: _creator >= 3)[(set: $partnerB's creator to 1)]
(if: _adopt >= 4)[(set: $partnerB's adopt to 1)]
(if: _poly >= 4)[(set: $partnerB's poly to 1)]
(set: $partnerB's vitality to _vitality)
(if: $friend's intimacy is "sweetHeart" or $friend's intimacy is "interested")[
(if: $friend's poly is 1)[(set: $partnerB's poly to 1)](else:)[(set: $partnerB's poly to 0)]
]
]
]
<!--passage chooser-->
(set: _syncScene to "")
<!-- setup partner stats first -->
(if: $storyController does not contain "period")[(set: _syncScene to "voyeur")]
(else-if: $partnerB's active is 2 and $storyController contains "friends")[
(set: _syncScene to "full")
]
(else-if: $friend's intimacy is "sweetHeart" and $partnerA's active is 1)[
(set: _syncScene to "friends2lovers")
]
(else-if: $friend's intimacy is "sweetHeart" and $partnerB's poly is 1)[
(set: _friendChance to (random: 1,2))
(if: _friendChance is 1)[
(set: _syncScene to "friends2lovers")
]
(else:)[
(set: _syncScene to "friends2loversPOLY")
]
]
(else-if: $friend's intimacy is "sweetHeart" and $partnerB's poly is 0)[
(set: _syncScene to "couldHaveBeen")
]
(else-if: $friend's intimacy is "interested" and (history:)'s last is "The swirling sand")[
(set: _syncScene to "worthaShot")
]
(else:)[
(set: _chooser to (a: "partnershipCreationProse1", "partnershipCreationProse3"))
(if: $storyController contains "selfClingy")[
(set: _chooser to it + (a: "partnershipCreationProse2"))
]
(set: _syncScene to (either: ..._chooser))
]
(display: "sync-images")
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$environmentIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
<!--ineligible for a partner - no period-->\
[You (if: (history:)'s last is "Surrounded by bodies in an ocean of sand" and $storyController contains "friends")[and your companion ]drift through a crowded current filled with paired swimmers. Their movements are precise. Bodies rise and fall together through the sand in mirrored strokes and careful turns.
Some spin one another sideways through slower currents. Some weave together so closely their accumulated sand breaks apart and they continue, each a little thinner.
You (if: (history:)'s last is "Surrounded by bodies in an ocean of sand" and $storyController contains "friends")[both] watch them for a very long time. (if: (history:)'s last is "Surrounded by bodies in an ocean of sand" and $storyController contains "friends")[You avoid looking at each other's eyes. ]
One of the paired swimmers notices your attention and gestures playfully toward you before disappearing again into the crowded dance. You attempt a few of the movements alone. The currents resist you awkwardly.
Eventually, exhausted and embarrassed, you allow yourself to drift back (if: (history:)'s last is "Surrounded by bodies in an ocean of sand" and $storyController contains "friends")[back towards your companion who steers you] toward the wider sands.
<!--[[Swim the sand]]-->(link: "You are not ready yet[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(set: $partnerA's active to 0, $partnerB's active to 0)(display: "sweat")(go-to: "Swim the sand")].](voyeur|\
[<!--eligible for a partner - had period-->\
[Occasionally, you, your partners, and your companion enter the crowded synchronization currents together.
The four of you move through the sand in practiced rhythms, adjusting instinctively to one another’s changing strokes beneath the surface. When one swimmer rises too high above the sandline, another compensates. When one falters, the others shift smoothly around them without breaking formation.
Nearby swimmers turn to watch your unusual cluster pass through the active currents. At first, the attention makes your movements sharper and more deliberate. And then something softens.
You stop trying to appear synchronized and simply become so. The currents carry your intertwined motions forward with startling ease.
At one point, sand catches in your throat and your rhythm breaks violently in a coughing fit. Immediately, three sets of hands steady you from different directions. The interruption lasts only moments before laughter spreads unevenly through the group and your synchronized movements reform around it naturally.
You continue swimming together for a long while afterward.
Eventually, the crowded <!--[[Swim the sand]]-->(link: "currents[ (-time, +vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'partnerAgood', 'play')(track: 'partnerBgood', 'play')(track: 'friendGood', 'play')(set: $vitality to it +1)(display: "sweat")(go-to: "Swim the sand")] thin. One by one, the four of you separate into smaller formations drifting through neighboring currents nearby. Even apart, your movements remain subtly shaped by one another.](full|\
[Your companion leads you toward one of the more crowded currents. Around you, paired swimmers move together through intricate patterns just above the sandline.
At first, the two of you simply imitate them playfully. Then something (link: "changes[ (+sweat, +partner/-companion)](help|")[(track: 'sandMovement', 'play')changes(set: $sweat to it +1)(show: ?falling)(if: $partnerB's active is 1 and $friend's poly is 0)[(show: ?polyFail)](else-if: $partnerB's active is 1 and $friend's poly is 1)[(show: ?f2B)(show: ?polyFriend2Lover)](else:)[(show: ?f2B)]].
[Movements that once felt accidental begin aligning naturally between you.
You anticipate one another’s turns before they happen. You know when to rise. When to sink. When to slow. When to pull harder through the current. Several nearby pairs begin drifting aside to make space for the two of you[, except for one. Your partner swims up, grinning. You return the expression and turn to find that your companion has stopped in place. You reach out, expecting a mirrored reply, but only see pain, their hand held against their chest. They look back and forth between the two of you, and then turn to swim away. Your partner approaches and the two of you swim away from the busy, active <!--[[Swim the sand]]-->(link: "currents[ (-time, -vitality, +sweat, +sand, -companion)](help|")[{
(set: $partnerB's active to 0)
(set: $storyController to it - (a:"friends", "sweetHeart"))
(display: "sweat")
(track: 'step', 'play')(track: 'playerBad', 'play')
(go-to: "Swim the sand")
}] towards the more tranquil sands at the borders](polyFail|[, except for one. Your partner swims up, grinning.](polyFriend2Lover|.](falling|[
Only then do you realize your companion has not stopped smiling, grit spilling from their lips. Neither have you.
Soon, your synchronized movements carry you naturally away from the crowded <!--[[Swim the sand]] or [[Make a baby]]-->(link: "currents[ (-time, -vitality, +sweat, +sand, -companion, +partner)](help|")[{
(track: 'step', 'play')(track: 'playerGood', 'play')
(if: $partnerA's active is 1)[
(set: $partnerA's active to 2, $storyController to it + (a: "partneredUp"))
(track: 'partnerAgood', 'play')
]
(else:)[
(set: $partnerB's active to 2)
(track: 'partnerBgood', 'play')
]
(set: $storyController to it - (a:"friends", "sweetHeart"))
(display: "sweat")
(if: $partnerB's active is 2)[(if: $partnerB's creator is 1 or $partnerB's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]]
(if: $partnerA's active is 2)[(if: $partnerA's creator is 1 or $partnerA's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]]
}][, the three of you,](polyFriend2Lover| together.](f2B|
](friends2lovers|\
[Moving through more active currents, your partner joins the new synchronized swim that has begun beside you and your companion.
At first, the shifting rhythms between three bodies feel unstable. Someone is always slightly ahead. Slightly behind. Slightly out of step. But gradually the three of you begin compensating for one another instinctively.
When one swimmer slows, another adjusts. When one rises too high above the sandline, the others pull the formation back into rhythm. Soon the movements become more fluid than you expected possible.
Nearby swimmers turn to watch your unusual formation move through the <!--[[Swim the sand]] or [[Make a baby]]-->(link: "currents[ (-time, -vitality, +sweat, +sand, -companion, +partner)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(set: $partnerB's active to 2, $storyController to it - (a:"friends", "sweetHeart"))(display: "sweat")(if: $partnerB's creator is 1 or $partnerB's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]] together. You feel strangely visible. But not unwelcome.](friends2loversPOLY|\
[Your companion joins you as you drift into currents in which you have only before swam with your partner. Your partner is waiting there when you arrive. At first, your companion's movements align easily beside yours and your partner’s.
Then the rhythm begins faltering. Not so much with your movements, but the energy is always a little hesitant. Often, your companion just watches the two of you, while the current carries all three bodies forward together.
Eventually, they slow their movements.
You attempt adjusting your rhythm to match theirs again, but they gently gesture no.
For a while they continue swimming nearby, though (link: "no longer[ (?companion)](help|")[{
(if: $time >= 8)[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend0.png" alt="a second amourous figure" height="300" width="300">')]
(else-if: $time >= 7)[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend0.png" alt="a second amourous figure" height="300" width="300">')]
(else-if: $time >= 6)[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend0.png" alt="a second amourous figure" height="300" width="300">')]
(else-if: $time >= 5)[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend0.png" alt="a second amourous figure" height="300" width="300">')]
(else:)[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend0.png" alt="a second amourous figure" height="300" width="300">')]
(replace: ?imageDesc)[The heart-shaped companion figure transforms back into a round, orange pin-headed figure.](replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$environmentIMG
$playerIMG
$friendIMG
$partneraIMG
</div>]}(show: ?coulda)] fully synchronized beside you.[
(if: $friend's cling is 0)[After a time, they drift further and further away, until you no longer see them in your voyage through the <!--[[Swim the sand]]-->(link: "sands[ (-time, -vitality, +sweat, +sand, -companion)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $partnerB's active to 0, $storyController to it - (a: "sweetHeart", "friends"))(display: "sweat")(go-to: "Swim the sand")]. You continue your swim alongside your partner, but often find yourself looking over your shoulder.]
(else:)[After that day, they begin drifting farther away during shared <!--[[Swim the sand]]-->(link: "currents[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(set: $partnerB's active to 0, $storyController to it - (a: "sweetHeart"), $friend's cling to 0, $friend's patience to 0, $friend's vitality to -0.5)(display: "sweat")(go-to: "Swim the sand")], still there, but always with a measured distance.]](coulda|](couldHaveBeen|\
[After passing through the active sands, you and your companion drift toward the more crowded and lively currents.
Paired swimmers move there in intricate formations just above the sandline, their movements smooth from long familiarity. The currents are busy enough that no single body holds your attention for long.
Still, when your companion rises beside you, you notice something changed in their movements. Their strokes remain measured, but they no longer drift away after brief moments of closeness.
Several times, you find them watching you instead of the surrounding pairs. You match pace beside one another in silence for a time. Before long, without visible agreement, the two of you begin mirroring one another’s movements beneath the surface.
Nearby swimmers part instinctively to allow space for your shifting rhythm together.
You feel your companion drawing nearer with each successful adjustment. (link: "Neither of you turns away[](help|")[(track: 'sandMovement', 'play')(if: $partnerB's active is 1 and $partnerB's poly is 1)[(show: ?hourglassf2bPoly)](if: $partnerB's active is 1 and $partnerB's poly is 0)[(show: ?notRight)](if: $partnerA's active is 1 )[(set: _diceRoll to (random:1,6))(if: $friend's cling is 1)[(set: _diceRoll to it +1)](show: ?hourglassAttempt)(if: _diceRoll is >=4)[(set: $partnerA's cling to 1, $vitality to it -2, $sweat to it +2)(replace: ?statusBars)[(display: "statusBars")](show: ?b)](else:)[(show: ?a)]]].
[You and your companion slip deeper into the crowded currents together.
Ahead, your partner notices your approach and gradually adjusts their own rhythm to match the two of you.
At first, the formation feels unstable. One swimmer always slightly ahead. Another slightly behind. But over time, the three of you begin compensating instinctively for one another’s changing pace beneath the surface.
When one body strains, the others pull harder through the current. When one rises too high above the sandline, another steadies them. The synchronized movements grow unexpectedly fluid.
By the time the three of you drift from the crowded currents together, your bodies continue adjusting naturally toward one another even within the <!--[[Swim the sand]] or [[Make a baby]]-->(link: " quieter sands[ (-time, -vitality, +sweat, +sand, +partner)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(set: $partnerB's active to 2, $storyController to it - (a: "friends") )(display: "sweat")(if: $partnerB's creator is 1 or $partnerB's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]].](hourglassf2bPoly|\
[The two of you tread water in tandem. You move slightly apart but keep pace and match each other's familiar gestures and strokes. You pass by your partner who leaves another swimmer to match your pace. You and your companion attempt to match your movements beside your partner within the crowded currents.
At first, the three of you remain near enough to share one another’s wake. But something never settles fully into rhythm. Your companion hesitates during moments that require closeness.
Several times they drift too far from formation before correcting themselves. Eventually, while crossing paths with another solitary swimmer, your companion slows. The distance between your bodies widens naturally through the current.
Neither of you attempts to close it.
You and your partner watch them disappear gradually back into the crowded sands before turning together toward (link: "slower currents[ (-time, -vitality, +sweat, +sand, -companion)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $partnerB's active to 0, $storyController to it - (a: "friends") )(display: "sweat")(go-to: "Swim the sand")] elsewhere. <!--[[Swim the sand]]-->.](notRight|\
[\
[For a time, you and your companion attempt to synchronize your movements within the crowded current.
Occasionally your strokes align beautifully for several rotations through the sand. Then the rhythm collapses again.
You collide awkwardly beneath the surface. You overcorrect. You separate too far apart.
Several times, you notice your companion’s attention drifting toward other swimmers moving more comfortably through nearby currents.
Ultimately, you slow your own movements and gesture outward toward one of the solitary swimmers watching nearby. Your companion pauses. Then drifts gently toward them.
You remain still long enough to watch their movements begin adjusting toward one another before turning back toward quieter currents <!--[[Swim the sand]]-->(link: "alone[ (-time, -vitality, +sweat, +sand, -companion)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $partnerA's active to 0, $storyController to it - (a: "friends") )(display: "sweat")(go-to: "Swim the sand")].](a|[You and your companion force yourselves deeper into the crowded currents. At first, every attempt at matching pace collapses almost immediately. One of you pulls too quickly through the sand. The other struggles to compensate. You disappear repeatedly beneath the sandline coughing and sputtering before finding rhythm again.
Still, neither of you leaves.
Again and again you adjust your movements toward one another. Gradually, the corrections become smaller. The synchronization steadier. Eventually, your bodies begin cutting cleanly together through the current.
The effort leaves both of you exhausted.
When you finally drift free from the crowded sands, neither of you has enough strength left to maintain proper strokes.
You cling together loosely above the sandline while quieter <!--[[Swim the sand]]-->(link: "currents[ (-time, -vitality, +sweat, +sand, -companion, +partner)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'partnerAgood', 'play')(set: $partnerA's active to 2, $storyController to it - (a: "friends"), $storyController to it + (a: "partneredUp"))(display: "sweat")(if: $partnerA's creator is 1 or $partnerA's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]] carry your bodies forward side by side.](b|](hourglassAttempt|\
](worthaShot|\
[You enter a fast-moving current crowded with synchronized pairs.
Together, the swimmers carve smooth pathways through the sand with the combined force of their movements.
You watch them with hunger. Not simply for closeness. For rhythm. For the strange ease with which paired bodies move together through difficult currents. Eventually, another solitary swimmer catches your attention. They are watching you too.
At first, your attempts to mirror one another are clumsy. You overextend your strokes trying to impress them and briefly disappear beneath the sandline coughing. The swimmer pauses nearby rather than leaving. Slowly, the two of you begin adjusting to one another’s rhythm.
A missed motion becomes a [{(link: "correction[ (+sand)](help|.")[(track: 'sandMovement', 'play')(track: 'playerBad', 'play')(set: $sand to it +1)(replace: ?anticipation)[a reason to pause.]
correction.
(replace: ?correction)[
You stop, losing track of the dance, and when the swimmer turns to offer you a chance to continue, you turn your back, embarrassed and ashamed. The sand around you shifts as they <!--[[Swim the sand]]-->(link: "continue[ (-time, -vitality, +sweat, +sand)](help|")[
(track: 'step', 'play')(track: 'playerGood', 'play')
(if: $partnerA's active is 1)[
(set: $partnerA's active to 0)
]
(else:)[
(set: $partnerB's active to 0)
]
(display: "sweat")
(go-to: "Swim the sand")
] their path, away from where you fell apart.
]
]}]<correct|
[A correction becomes [(link: "anticipation[ (+sweat, +sand)](help|.")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(if: $partnerB's active is 1)[(track: 'partnerBgood', 'play')](else:)[(track: 'partnerAgood', 'play')](set: $sand to it +1, $sweat to it +1)(replace: ?correct)[correction.]anticipation. (if: $partnerB's active is 1)[You look beyond your dance to see your partner watching with equal eagerness.](show: ?dance1)]]<anticipation|]<correction|[
{Soon, your bodies are cutting through the
<!--[[Swim the sand]] or [[Make a baby]-->(link: "current[ (-time, -vitality, +sweat, +sand, +partner)](help|")[
(track: 'step', 'play')(track: 'playerGood', 'play')
(if: $partnerA's active is 1)[
(set: $partnerA's active to 2, $storyController to it + (a: "partneredUp"))
(if: $partnerA's creator is 1 or $partnerA's adopt is 1)[
(go-to: "Make a baby")
]
(else:)[
(go-to: "Swim the sand")
]
]
(else:)[
(set: $partnerB's active to 2)
(if: $partnerB's creator is 1 or $partnerB's adopt is 1)[
(go-to: "Make a baby")
]
(else:)[
(go-to: "Swim the sand")
]
]
(display: "sweat")
(go-to: "Swim the sand")
] together.
(if: $storyController contains "friends")[
Your companion catches up to you, and reflects joy back at the
(if: $partnerB's active is 1)[three of you]
(else:)[both of you].
]
}](dance1|
](partnershipCreationProse1|\
[
You swim with desperate determination toward the crowded synchronization currents. Everywhere around you, paired swimmers move together through the sand with terrifying ease. You become painfully aware of your own solitary movements.
At first, every attempt at connection collapses quickly. Your eagerness disrupts your rhythm. Other swimmers drift away before your motions can settle beside theirs. Then you notice another {
(link: "swimmer[ (+sweat)](help|.")[
(set: $sweat to it +1)
(track: 'sandMovement', 'play')
(if: _cling>=4)[
(if: $partnerB's active is 1 and $storyController does not contain "friends")[
(if: $partnerB's poly is 1)[(show: ?matchDesperation)(show: ?desperatePolyAM)]
(else:)[(show: ?mismatch)(set: $partnerB's active to 0)]
]
(else-if: $partnerB's active is 1 and $storyController contains "friends")[
(if: $friend's intimacy is "interested" and $friend's poly is 1)[(show: ?matchDesperation)(show: ?desperateFriend)(show: ?desperatePolyAM)(set: _polyFriend to 1)]
(else:)[(show: ?mismatch)(set: $partnerB's active to 0)]
]
(else-if: $partnerA's active is 1 and $storyController contains "friends")[
(if: $friend's intimacy is "interested")[(show: ?matchDesperation)(show: ?desperateFriend)]
(else:)[(show: ?mismatch)(set: $partnerB's active to 0)]
]
(else:)[(show: ?matchDesperation)(show: ?desperateLoverA)]
]
(else:)[
(if: $partnerA's active is 2)[
(set: $partnerB's active to 0)
]
(else:)[
(set: $partnerA's active to 0)
]
(show: ?mismatch)
]
]}[swimmer watching you with similar intensity. You push towards them, trying to meet their eyes, and when they raise an arm, you raise yours too.
Then your eyes meet. They are confused and look beyond you. Turning, you watch as another swimmer, passes you and joins the first. You do not watch them swim away together. (if: $storyController contains "friends")[In the distance, you spot your companion, and swim towards them. When you <!--[[Swim the sand]]-->(link: "catch up[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "Swim the sand")], you take care not to match their strokes, or their eyes.]](mismatch|[swimmer watching you with the same restless intensity. [It is your companion. You have never seen them look at you that way before.](desperateFriend|
Neither of you looks away.
When your hands finally meet above the sandline, both of you grip too tightly. Instead of recoiling, the swimmer pulls closer. The synchronized [motions](desperatePolyAM|[<!--[[Swim the sand]] or [[Make a baby]]-->(link: "motions[ (-time, -vitality, +sweat, +sand, +partner)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'partnerAgood', 'play')(set: $partnerA's active to 2, $storyController to it + "partneredUp")(display: "sweat")(if: $partnerA's creator is 1 or $partnerA's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]]](desperateLoverA|[<!--[[Swim the sand]] or [[Make a baby]]-->(link: "motions[ (-time, -vitality, +sweat, +sand, -companion, +partner)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'partnerAgood', 'play')(set: $partnerA's active to 2, $storyController to it - (a: "friends"), $storyController to it + (a: "partneredUp"))(display: "sweat")(if: $partnerA's creator is 1 or $partnerA's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]]](desperateFriend| that follow are imperfect and exhausting, but neither of you releases the other. [When you come to a <!--[[Swim the sand]] or [[Make a baby]]-->(link: "current[ (-time, -vitality, +sweat, +sand, (if: _polyFriend is 1)[-companion, ]+partner)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'partnerBgood', 'play')(if: _polyFriend is 1)[(set: $storyController to it - (a: "friends"))](set: $partnerB's active to 2)(display: "sweat")(if: $partnerB's creator is 1 or $partnerB's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]] with your partner, they match both of you in speed, and take your other hand.](desperatePolyAM|\
](matchDesperation|\
](partnershipCreationProse2|\
[You drift into a broad current crowded with synchronized pairs. The movement here is strangely easy. So many bodies move together through the sand that the current itself feels partially shaped by their combined rhythm. At first, you simply observe them. Then you begin noticing other solitary swimmers lingering along the outer edges of the current. Watching. Waiting.
Some drift away quickly after brief failed attempts at synchronization. Others remain for long stretches, studying the movements of successful pairs before trying again.
You feel unusually calm. Confident.
You approach another solitary {\
(link: "swimmer.[ (+sweat)](help|")[
(track: 'sandMovement', 'play')
(set: $sweat to it +1)
(if: $partnerB's active is 1 and $storyController does not contain "friends")[
(if: $partnerB's poly is 1)[
(show: ?match3)
(show: ?loverA)
(show: ?polyAm3)
]
(else:)[
(show: ?mismatch3)
(set: $partnerB's active to 0)
]
]
(else-if: $partnerB's active is 1 and $storyController contains "friends")[
(if: $friend's intimacy is "interested" and $friend's poly is 1)[
(show: ?match3)
(show: ?friend)
(show: ?polyAm3)
(set: _polyFriend to 2)
]
(else:)[
(show: ?mismatch3)
(set: $partnerB's active to 0)
]
]
(else-if: $partnerA's active is 1 and $storyController contains "friends")[
(if: $friend's intimacy is "interested")[
(show: ?match3)
(show: ?friend)
]
(else:)[
(show: ?mismatch3)
(set: $partnerB's active to 0)
]
]
(else:)[
(show: ?match3)
(show: ?loverA)
]
]}\
[swimmer. They match your pace for a time, but in the end, you fall <!--Swim the sand-->(link: "behind[ (-time, -vitality, +sweat, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "Swim the sand")], never quite able to find a satisfying rhythm.](mismatch3|\
[\
[swimmer, and recognize your companion. Your chest feels light. You exaggerate your strokes playfully](friend|\
[swimmer directly and exaggerate your strokes playfully to invite imitation.](loverA|
The swimmer pauses. Then mirrors the motion.
Soon the two of you are cutting experimental paths together through the crowded <!--Swim the sand-->(link: "current[ (-time, -vitality, +sweat, +sand, (if: _polyFriend is 2)[-companion, ]+partner)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(track: 'partnerBgood', 'play')(if: _polyFriend is 2)[(set: $storyController to it - (a: "friends"))(set: $partnerB's active to 2)](unless: $partnerA's active is 2)[(set: $partnerA's active to 2, $storyController to it + (a:"partneredUp"))](display: "sweat")(if: $partnerB's creator is 1 or $partnerB's adopt is 1)[(go-to: "Make a baby")](else:)[(go-to: "Swim the sand")]], laughing each time your synchronization briefly collapses before returning again.[ You are joined by your partner who paces you both easily, occasionally pulling back, and other times matching your newly developed sequence.](polyAm3|](match3|](partnershipCreationProse3|
]<swim|
]<contentBox|\
</div>\
</div>\
</div>
{=
(if: _syncScene is "voyeur")[(hide: ?swim)(show: ?voyeur)]
(else-if: _syncScene is "full")[(show: ?full)]
(else-if: _syncScene is "friends2lovers")[(show: ?friends2lovers)]
(else-if: _syncScene is "friends2loversPOLY")[(show: ?friends2loversPOLY)]
(else-if: _syncScene is "couldHaveBeen")[(show: ?couldHaveBeen)]
(else-if: _syncScene is "worthaShot")[(show: ?worthaShot)]
(else-if: _syncScene is "partnershipCreationProse1")[(show: ?partnershipCreationProse1)]
(else-if: _syncScene is "partnershipCreationProse2")[(show: ?partnershipCreationProse2)]
(else-if: _syncScene is "partnershipCreationProse3")[(show: ?partnershipCreationProse3)]{
(if: $storyController contains "sight")[
(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T06-start-parent-drowned.png" alt="a single figure on a floating form" height="300" width="300">')
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T06-start-sibling.png" alt="other figures nearby" height="300" width="300">')]
(else:)[]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$parentIMG
</div>]<image|
[ID: [(print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[\
There is something hard beneath you.
Not the shifting current. Not the warm, drifting rhythm you remember.
Something rough and unmoving presses against your skin. You cough violently and sand spills from your mouth. Everything hurts.
The surface beneath you is uneven and ridged. Damp grit clings to your body. Your limbs feel weak and heavy. You do not understand what has happened and you are cold.
You scream.
On and on until your throat aches raw from it. The hard surface beneath you does not move. You scream harder.
Time passes. You scream between moments of (link: "noticing[ (+perception)](help|")[(track: 'sandMovement', 'play')noticing(if: $storyController contains "sight")[(if: $storyController contains "ignorance")[(set: $storyController to it - (a: "ignorance"))]](else:)[{
(set: $storyController to it + (a: "sight"))(show: ?sight)
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T06-start-bg.png" alt="a container mostly filled" height="300" width="300">')
(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T06-start-parent-drowned.png" alt="a single figure on a floating form" height="300" width="300">')
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$parentIMG
</div>]}]]. The sand around the hard thing splashes and shifts below you. The sand that you choked on. After you choked the thing.
Nearby, another thing rises above the sandline. A body. It reaches out towards you.
This body is warm. Soft. Sand-covered, but moving. Hands slide carefully beneath you and lift you away from the hard surface. You cling immediately.
The warmth floods through you so suddenly it hurts. For a moment, the terrible feeling inside your body quiets. You are held close against a shoulder while the swimmer treads carefully through the current. It feels familiar.[
Before the choking.
Before the sinking.
Before the dry stillness beneath your body.
Then the feelings return.](sight|
The swimmer tries to loosen your grip slightly so they can move more freely. You panic immediately and clutch tighter. The swimmer stills beneath you.
For a long while, neither of you moves. Eventually, the swimmer gently twists and presses their forehead gently against yours. You do not understand the gesture. Only the {
[(link: "warmth[ (-time, -vitality, +sand)](help|")[warmth
(replace: ?fear)[fear]
(if: $storyController does not contain "sight")[(set: $storyController to it + (a: "sight"))]
(if: $time is >=9)[(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T06-drowning-adopt.png" alt="a large and small figure" height="300" width="300">')
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T06-start-bg.png" alt="a container full of sand" height="300" width="300">')]
(else:)[(set: $parentIMG to '<img src="https://kdot.ca/images/FS-T05-drowning-adopt.png" alt="a large and small figure" height="300" width="300">')
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container partially full" height="300" width="300">')]
(track: 'sandMovement', 'play')
(set: $time to it -0.125, $vitality to it -1, $sand to it +1)
(replace: ?statusBars)[(display: "statusBars")]
(show: ?adopted)
(set: $storyController to it - (a: "parentTrauma", "selfClingy"))
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$parentIMG
</div>]
(if: $help is 1)[(show: ?help)]
]]<warmth|}. Only the {
[(link: "fear[ (--time, ---vitality, +sand)](help|")[fear
(replace: ?warmth)[warmth]
(track: 'sandMovement', 'play')
(set: $time to it -2, $vitality to it -3, $sand to it +1)
(replace: ?statusBars)[(display: "statusBars")]
(show: ?cling)
(if: $help is 1)[(show: ?help)]
]]<fear|} of losing it again.
]<left|
[\
At first, every moment away from another body feels unbearable.
Whenever [the new body]<new| lowers you toward the current, panic surges through you. But they continue to stay in contact. They always bring you back to them. Again and again.
They (link: "teach[ (+perception)](help|")[teach(if: $storyController contains "sight")[(track: 'sandMovement', 'play')(track: 'parentGood', 'play')(if: $storyController contains "ignorance")[(set: $storyController to it - (a: "ignorance"))]](replace: ?new)[your parent]] you slowly. When you sink, they lift you. When you choke, they steady you. When you cling too tightly, they gently pull free and encourage you back toward the current.
Over time, your body grows stronger. Your movements become less frantic. The fear never fully leaves you, but it loosens enough for other feelings to exist beside it.
Curiosity. Wonder. The comfort of moving beside others without needing to hold them.
Eventually, [the new body]<new| is no longer the only body in your life. Others begin travelling nearby too. You learn the rhythms of crowded currents and slow-moving pods. You discover that being surrounded does not always mean being trapped. Over time, you develop a need to remain near other swimmers, more than a desire to explore alone.
When your body grows strong enough to spend extended time away from your pod, you often still find yourself drawn back toward populated, slow-moving <!--[[Surrounded by bodies in an ocean of sand]]-->(link: "sands[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Surrounded by bodies in an ocean of sand")].](adopted|\
[\
The first swimmer puts you back onto the hard thing. You scream and wait. Another swimmer comes. You cling to every body that lifts you from the islands. Eventually, you let them take you from the hard thing and carry you across the currents. They hold you above the sandline while your body remains too weak to travel safely alone. But you never loosen your grip.
Whenever a swimmer lowers you toward the current, you panic and wrap yourself tighter around them. Some try to endure it. Others pull free quickly and leave you upon another (if: $storyController contains "sight")[sandstone island](else:)[hard thing] before exhaustion can drag them beneath the surface beside you.
Again and again, you are passed between currents. New bodies.
New (if: $storyController contains "sight")[islands](else:)[hard things].
New frightened attempts to hold onto warmth before it disappears.
You grow larger over time, but never stronger.
Eventually, swimmers stop trying to carry you for long distances.
You are too heavy now. Too frightened. Too exhausting to hold above the sandline for extended periods.
You spend longer and longer stretches alone upon the hardened (if: $storyController contains "sight")[islands](else:)[things]. You watch distant swimmers move through the sands below. You watch bodies travel together through currents you cannot get to.
Eventually, you try to swim the sands around the (if: $storyController contains "sight")[islands](else:)[hard things] yourself. It is too difficult to stay above the sandline in the currents (if: $storyController contains "sight")[that move towards the dark edges you wondered at but never visited.](else:)[that move in one way.]
Only one current is easy. The slow pull toward a deep depression where the sands churn hard, and where you have watched swimmers go and never come back up. Eventually, you are too restless and too weak to resist it, and you allow the current to begin carrying you inward toward the distant swirling sands.
At first, it's an easy swim with nothing to do. The current is quick, and active enough that it keeps your head above the sandline without you needing to do anything. However, as you approach the churning, swirling sands, the current gets tighter and spins you around. It becomes difficult to anticipate the movements, and you weakly attempt to turn to watch your path when you are suddenly thrust under the sandline and everything goes <!--[[Down a waterfall of sand]]-->(link: "dark[ (--time, -time)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $time to 6)(go-to: "Down a waterfall of sand")].
](cling|\
]<contentBox|\
</div>\
</div>\
</div>\
{=
(if: $storyController does not contain "ignorance")[(replace: ?new)[your parent]]
(if: $storyController contains "sight")[(show: ?sight)]{(unless: $tier is 1)[(set: $tier to 1)]
(if: $storyController contains "sight")[(display: "waterfall-images")]
(else:)[(set: $imgDesc's hourglass to "")
(set: $imgDesc's action to "A gold dot is surrounded by spiraling, curving lines.")]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
<div class="centered">(bg:#fff)+(color:#000)[ [( sand, pouring )]<audio|]</div>
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[\
The world becomes motion. Sand roars in violent spirals as you are forced through the narrowing throat beneath the swirling current above.
For several terrible moments, there is no direction at all.
Only pressure.
Only grit.
Only the sensation of your body scraping through impossibly fast-moving sand while the current tears you downward.
(if: $storyController contains "parasite")[\
The hardened shape around your neck drags horribly against your body as you fall.
Your own weight falls faster than the rigid form clinging beneath your jaw. The pull forces your head backward painfully toward the roaring sands above.
Again and again your eyes are dragged upward toward where you came from.
Toward the distant opening above.
Toward the upper sands disappearing behind the endless sandfall.
]
The light here is different. Dimmer.
The pouring column of sand overhead casts shifting shadows across everything below it. The landscape tilts sharply in every direction from the place where you landed.
Above you, the roaring sands continue pouring endlessly through the narrow opening overhead like an inverted geyser. You fall helplessly until you (link: "land hard[ (-time, -sand)](help|")[{
(track: 'sandImpact', 'play')
(set: _timeLoss to 0.075)(display: "timeLoss")
(set: $sand to it -0.125)
(hide: ?falling)
(if: $storyController contains "murderer" and $storyController contains "parentTrauma")[
(show: ?death)
(if: $help is 1)[(show: ?help)]
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-whiteCentre.png" alt="a sea of sand" height="300" width="300">')
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
</div>]
]
(else:)[
(show: ?next)
(if: $help is 1)[(show: ?help)]
]slope}] into the steep flowing slope while sand continues pours onto your body fast enough to burn. \
]<falling|\
[\
As you are dragged down the steep, flowing slope, your body suddenly slams violently into something hard buried beneath the rushing sand.
The impact spins you sideways. A massive hardened shape tumbles in the current beside you, half submerged beneath the pouring sands. You recognize its outline immediately. The body. The thing you rode. The thing you drowned.
It rolls endlessly beside you as both of you are dragged downward together. Whenever you try to outdistance it, the slope twists and pulls you back into its path again. The heavy form crashes into your body repeatedly, driving you further down the steep sands in the wake of its descent.
You cannot escape it.
Eventually the slope begins to flatten. For one brief moment, you think the current may finally loosen enough for you to swim free. Then the hardened body slams into you one final time. The weight pins your limbs beneath the rushing sand.
You struggle violently, but the surface continues pouring over both your bodies faster than you can move. The sandline rises higher and higher around you. You never learned how to swim these fast currents. The sand closes over your body.
At first you (link: "fight[ (-time, -sand)](help|")[{
(track: 'sandMovement', 'play')
(set: _timeLoss to 0.075)
(display: "timeLoss")
(hide: ?death)(show: ?deat2)
(set: $sand to it -0.125)}] it.
](death|\
[\
Your limbs jerk weakly beneath the surface while the current pulls at you from every direction.
Lower.
Lower.
The sand grows soft.
The panic inside your body fades into something quieter and you stop understanding where your body ends and the sand begins. The current moves through you now instead of around you. You feel grains slipping across your skin, through your mouth, behind your eyes. And then even those sensations begin to disappear.
There is no more choking.
No more fear.
No more weight.
Only movement.
Only sand.
You drift within it for a long time.
The sands continue moving and so you <!--[[Flip the hourglass]]-->(link: "move[ (continue story)](help|")[(track: 'step', 'play')(track: 'sandPour', 'fadeout', 3)(set: $sand to 10)(set: $time to 0)(set: $vitality to 0)(set: $sweat to 0)(go-to: "Flip the hourglass")].
](death2|\
[\
(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[
Your partners tumble through the pouring sands nearby, repeatedly vanishing and reappearing through the flowing surface as all three of your bodies descend together.
]\
(else:)[
Your partner crashes through the pouring sand beside you, struggling to orient themselves against the violent slope beneath your bodies.
]\
]\
(if: $storyController contains "friends")[
Your companion emerges briefly through the rushing sand nearby before the slope drags them lower again.
]\
At first the speed feels almost exhilarating. You spread your limbs instinctively, allowing the flowing sands to carry you down faster and faster beneath the roaring cascade above. But slowly the sensation changes. The movement no longer feels like swimming. You are not propelling yourself forward. You are being dragged.
You (link: "attempt[ (-time, -sand)](help|")[{
(track: 'sandMovement', 'play')
(set: _timeLoss to 0.075)
(display: "timeLoss")
(hide: ?next)(show: ?next2)
(set: $sand to it -0.125)}] to angle your body sideways against the slope. The sands ignore your effort completely. You try again, harder this time, digging your limbs into the rushing surface as if you might somehow climb back up to the brighter sands above.
](next|\
[You barely slow at all. Your body aches from the counter effort.
(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[\
Your partners struggle too. You watch their bodies twisting against the flowing sands, each of you trying in different ways to resist the downward pull.
]\
(else:)[\
Your partner reaches repeatedly into the rushing sand beside you, trying to stabilize themselves against the same relentless downhill drag.
]\
]\
(if: $storyController contains "friends")[\
Your companion attempts to oppose the angle of the flowing slope as well, but the sands pull them relentlessly down beside you.
]\
Eventually exhaustion overtakes resistance. Your movements stop trying to climb. Instead, you orient yourself flat within the slope itself. The downslope pull remains terrifying. But no longer surprising.
Ahead, darker currents churn around the steep slope from which you descend. You continue <!--[[Out and through]]-->(link: "downward[ (-time, -vitality, -sand)](help|")[(track: 'sandMovement', 'play')(set: _timeLoss to 0.125)(display: "timeLoss")(set: $vitality to it -1, $sand to it -1)(go-to: "Out and through")] toward them whether you wish to or not.
](next2|\
]<contentBox|\
</div>\
</div>\
</div><div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[(if: $storyController contains "partneredUp")[(if: $partnerB's active is 2)[The current carries you all toward the collection of hardened islands that pop up near the sand current's borders. The three of you search for one with a moving form, but after a time, you need a break. You gesture for the other two to follow you towards one of the larger, hardened islands rising above the sandline.](else:)[The current carries you both toward the collection of hardened islands that pop up near the sand current's borders. You both search for one with a moving form, but after a time, you need a break. You gesture for your partner to follow you towards one of the larger, hardened islands rising above the sandline.]](else-if: $storyController contains "friends")[Your companion tags along as you search among the hardened islands rising above the sandline.](else:)[The current carries you toward(if: (history:)'s last is "Island")[s another] one of the hardened islands rising above the sandline.]
(if: (history:) does not contain "Island")[Unlike the shifting sands surrounding it, the island remains solid and unmoving beneath your weight. ]You pull yourself partially above the sandline and rest there for a time, your upper body draped across the warm sandstone surface while the current continues brushing against your lower body.
The island smells old and (link: "abandoned[ (+vitality, -sand)]")[(track: 'playerExplore', 'play')(set: $sand to it -1, $vitality to it +2)(show: ?discoveryOfChild)].]<arriveAtIsland|
[
(if: $storyController contains "period")[\
As your breathing steadies, you notice movement further up the island. A small creature clings to one of the sandstone ridges overlooking the current.
It is alone.
Its body is almost free of loose sand, the surface smoother than most swimmers you have known. Damp grit clings in the creases where its limbs press tightly against the stone.
For a moment, you simply stare. \
(if: $storyController contains "partneredUp" or $storyController contains "friends")[\
(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[
Your partners exchange a long look.
No one gestures toward leaving.
]\
(else-if: $partnerA's active is 2)[
Your partner stills beside you.
]
The child shifts against the sandstone and lets out a thin wavering cry that vibrates through your chest more than your head. (if: $storyController contains "attemptedCreation")[The wailing tears through you more sharply than it should. Your body still remembers the weight of crumbling forms slipping apart between your hands. You do not move closer immediately. ]
]
(if: $storyController contains "friends")[\
Your companion watches from lower in the current.
For a moment, they seem ready to approach beside you.
Then another swimmer passes in the distance, calling their attention away. Your companion hesitates, offers one uncertain gesture toward the island's resident, and drifts after the movement beyond the island.
\
(unless: $storyController contains "partneredUp")[
You are left alone with the small creature.
]\
]\
]\
(else:)[\
The small body shifts awkwardly against the stone.
Its lower body curls tightly beneath itself, not yet strong enough to move in a controlled or purposeful way.
You wonder suddenly how long it has been here. Whether it was left or if someone was supposed to return.
]
The child rolls awkwardly toward the edge of the sandstone and your chest tightens painfully. It shifts in uneven movements, gripping at the stone with desperate determination.
Slow enough that you could still {
(if: $storyController contains "partneredUp")[
(if: $partnerB's adopt is 1 and $partnerA's adopt is 1)[
(link: "leave[ (-time, --partner)](help|.")[leave.
(track: 'sandMovement', 'play')
(set: _timeLoss to 0.125)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?polyDone)
]
]
(else-if: $partnerA's adopt is 1 and $partnerB's adopt is 0)[
(link: "leave[ (-time, -partner)](help|")[leave.
(track: 'sandMovement', 'play')
(set: _timeLoss to 0.125)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?poly2mono)
]
]
(else-if: $partnerB's adopt is 1 and $partnerA's adopt is 0)[
(link: "leave[ (-time, -partner)](help|")[leave.
(track: 'sandMovement', 'play')
(set: _timeLoss to 0.125)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?poly2mono)
]
]
(else:)[(link: "leave[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'playerGood', 'play')(track: 'step', 'play')(display: "sweat")(go-to: "Swim the sand")]]
]
}\
Slow enough that the current could carry you away before you watch it (link: "fall in[ (+sweat, +child)](help|")[fall in(track: 'playerExplore', 'play')(set: $sweat to it +1)(replace: ?statusBars)[(display: "statusBars")](show: ?decision)].
[{
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[
(if: $partnerB's adopt is 1 and $partnerA's adopt is 1)[Both of your partners hover nearby, their bodies tense with longing and anticipation.]
(else-if: $partnerA's adopt is 1 and $partnerB's adopt is 0)[One of your partner cups their hands near their body, as if to ready them for catching, but they hold back, watching you for a signal. The other partner swims nearby, watching you both with curiosity(if: $partnerB's patience is 1)[ and patience.](else:)[, but also a barely suppressed impatience.]]
(else-if: $partnerB's adopt is 1 and $partnerA's adopt is 0)[One of your partner cups their hands near their body, as if to ready them for catching, but they hold back, watching you for a signal. The other partner swims nearby, watching you both with curiosity(if: $partnerA's patience is 1)[ and patience.](else:)[, but also a barely suppressed impatience.]]
(else:)[Your partners watch you, patiently. You feel no pressure from either of them.]
]
(else:)[<!--$partnerA's active is 1-->
(if: $partnerA's adopt is 1)[
Your partner hovers nearby, their body tense with longing and anticipation.
(if: $partnerA's patience is 1)[](else:)[They look back and forth between you and the child with mild impatience.]
]
(else:)[
Your partner waits (if: $partnerA's patience is 0)[with mild impatience].
]
]
]
}]<pendingDecision|
[\
You hesitate too long, and your partners move forward. One of them reaches up and catches the infant before it topples into the sand. The other faces away and begins a slow steady stoke parallel to the sands, and accepts the child onto their back. The two of them fuse and work to find balance, and without looking back towards you, they begin an unshaky journey away from the island. You remain on the island well past when you lose sight of them. When you finally slide back into the (link: "sands[ (-time, +sweat, -vitality, +sand)](help|")[(set: $partnerB's active to 0, $partnerA's active to 0, $storyController to it - (a: "partneredUp"))(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](track: 'playerBad', 'play')(track: 'step', 'play')(display: "sweat")(go-to: "Swim the sand")], your body is sore, but you feel restored.
](polyDone|
[\
You hesitate too long, and one of your partners lunges forward. They catch the child and cradle it against themselves, labouring furiously in the sand to keep the infant's body above the sandline. As they awkwardly encourage the child onto their shoulder, your other partner reaches out to help them but stops when they are given an icy look.
When the child has settled in place, your partner positions themselves, using the edge of the hard sandstone island, in a horizontal float, and then without looking back, begins a slow paddle out of the nearby sands.
You pull your other partner up onto the rock to rest and watch as the duo slowly swims out of sight. When you both slide back into the {
(link: "sands[ (-time, +sweat, -vitality, +sand)](help|")[
(track: 'playerExplore', 'play')(track: 'step', 'play')
(if: $partnerB's adopt is 1)[
(set: $partnerB's active to 0)
]
(else-if: $partnerA's adopt is 1)[
(set:
$partnerA's cling to $partnerB's cling,
$partnerA's patience to $partnerB's patience,
$partnerA's creator to $partnerB's creator,
$partnerA's adopt to $partnerB's adopt,
$partnerA's vitality to $partnerB's vitality,
$partnerB's active to 0
)
]
(set: $storyController to it - (a: "partneredUp"))
(if: $storyController contains "attemptedCreation")[
(set: $storyController to it - (a: "attemptedCreation"))
]
(display: "sweat")
(go-to: "Swim the sand")
]}, your body is sore, but you feel restored.
](poly2mono|
]\
(else:)[As your breathing slows, you notice movement further up the island.
Something small grips one of the jagged protrusions rising from the sandstone. It shifts weakly against the exposed stone. You watch it for a long while without understanding.
Then the current changes. You slide quietly back beneath the sandline and (link: "continue[ (-time, +sweat, -vitality, +sand)](help|")[(display: "sweat")(track: 'playerGood', 'play')(track: 'step', 'play')(go-to: "Swim the sand")] on.]
](discoveryOfChild|
[
<!--[[New life]]-->You snatch the small being up into your hands. The sudden weight catches you off balance.
The child (link: "clings[ (-time, +sweat, -vitality, +sand)](help|")[(display: "sweat")(track: 'child', 'play')(track: 'step', 'play')(go-to: "New life")] desperately to your hands. You slowly manoeuvre yourself back into the sands,(if: $storyController contains "partneredUp")[ supported at the elbows by your partner(if: $partnerB's active is 2)[s],] never allowing the precious life in your hand to make contact with the swiftly moving current.
](decision|
]<contentBox|\
</div>\
</div>\
</div>{(display: "choking-images")
<!--Set relationship erosion-->
(set: _fade to (random: 1,6))}
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[\
The current closes over your shoulders. The child clings tighter.
Their small limbs lock around your neck with desperate strength. Every movement you make to loosen them only makes them panic harder. Their body presses tightly against your back, trembling violently against your skin.
You tumble through the sand, trying to keep both your bodies above the sandline while your hands reach back to pry at their grip.
Sand splashes upward around your face and your strokes become uneven.
You try to pull one arm free. The child slips lower for a terrifying moment and immediately tightens around your throat hard enough to make your vision pulse. Instinctively, your hand flies back to support them again.
You must decide to either hold them or (link: "free yourself[ (-time, +sweat, -vitality, ?safety)](help|")[(set: $storyController to it + (a: "selfTrauma"), $time to it -0.125, $sweat to it + 1, $vitality to it -1)(replace: ?statusBars)[(display: "statusBars")](replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)](set: _escapeAttempt to (random: 1,100))
(if: _escapeAttempt <=25)[(show: ?escapeSuccess1)(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$siblingIMG
</div>]](else:)[(show:?escapeFail1)]free yourself].
]
[\
Your body jerks violently sideways through the current.
For one terrible moment, the child slips free from your throat. You immediately catch them again, allowing them to hold your arm, but keeping them half submerged beneath the sandline. Both of you choke and convulse against the sandline while you struggle to stay afloat. The child clings now with frightened hesitation instead of blind panic.
You never again allow them back onto your back, and when you hold them, it is away from your neck.
When they grow tired, you support them only long enough for their strength to return before carefully pushing them back into the current again.
They learn slowly. They fear the sand, but now so do you.
(if: $childTtl >1)[\
Your older children visit you from time to time.
They circle close whenever the youngest drifts near you, gently nudging them back into the current before they can cling too tightly again.
Over time, the youngest begins following them instead of you. It feels wrong but the more you encourage them apart, the more they work to stay together.\
]
Eventually, the child no longer reaches for you every time the current changes.
When they finally swim beyond your reach, the (link: "relief[ (-time, +sweat, -vitality, +sand, -child)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "Swim the sand")] inside your body is so intense it almost feels like grief.\
](escapeSuccess1|\
[\
You twist violently through the current, but the child only clings harder.
Their small body slides lower across your back. One arm crushes against your throat and sand floods across your mouth. You pump upward desperately and barely break above the sandline again.
Your body aches with exhaustion. You realize that if nothing (link: "changes[ (-time, +sweat, -vitality, ?safety)](help|")[(track: 'sandMovement', 'play')(set: $time to it -0.125, $sweat to it + 1, $vitality to it -1)(replace: ?statusBars)[(display: "statusBars")](replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)](set: _escapeAttempt2 to (random: 1,100))(if: _escapeAttempt2 <=50)[(show: ?escapeSuccess2)(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$siblingIMG
</div>]](else:)[(show: ?drown){
(if: $storyController contains "friends")[(set: $playerIMG to "")
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-newBaby-friend-saved.png" alt="two figures keep their distance from a tiny figure atop a dark island" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend0.png" alt="two figures keep their distance from a tiny figure atop a dark island" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend0.png" alt="two figures keep their distance from a tiny figure atop a dark island" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend0.png" alt="two figures keep their distance from a tiny figure atop a dark island" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend0.png" alt="two figures keep their distance from a tiny figure atop a dark island" height="300" width="300">')
]](else:)[(set: $friendIMG to "")]}]], both of you will disappear beneath the sand.\
](escapeFail1|
[\
This time you force yourself lower beneath the sandline before the child can anticipate the movement. Their grip loosens in panic. You pull free.
The child immediately begins thrashing beneath the surface and you seize them again before they can sink too deeply. But you hold them at arms length. You remain terrified around them afterward, and you never allow the child near your back or throat again.
(if: $storyController contains "friends")[\
More often, your companion comes around to check in on you.
They never approach too closely, but you notice how carefully they watch the child whenever it swims near you.
]
(if: $childTtl >1)[\
Your older children (if: $storyController contains "friends")[also] visit and are fiercely protective.
Whenever the youngest approaches you, they circle between you, gently guiding the smaller body away before your panic can take hold again.
Over time, the youngest begins following them more often than you, and it is a relief.
]
Ultimately, the child grows strong enough to travel the current alone.
You do not (link: "follow[ (-time, +sweat, -vitality, +sand, -child)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] when they leave.
](escapeSuccess2|
[\
(if: $storyController contains "friends")[\
Your body begins to sink. Suddenly another swimmer crashes into the current beside you. Your companion grabs your shoulder first, forcing your head back above the sandline.
Then they wrench the child violently from your neck.
The child screams soundlessly and reaches back toward you as your companion drags it toward a narrow sandstone island jutting above the current.
You try to follow. Your companion shoves you away instead. You are too weak to fight back.
You watch the child stranded above the sandline while your companion drags you into the current and carries you backward through the sands.
You hate them for a long time. (if: $friend's patience is 1)[They respond to your emotions with sympathy and patience.](else-if: $friend's cling is 1)[They are unaffected by this, and cling to you more protectively when others are around.] Part of you remains grateful anyway.
Over time you (link: "recover[ (-time, +sweat, -vitality, +sand, -child)](help|")[(track: 'sandMovement', 'play')(set: $childTtl to it -1)(display: "sweat")(go-to: "Swim the sand")] , and the tenderness in your body fades, but you still watch the horizon with caution, and you only take short, attentive breaks near the cluster of hard sandstone islands.
]\
(else:)[\
Your strength finally gives way. The current rolls over both your bodies. The child clings tighter even as you sink. You stop fighting only moments before the sand fully closes <!--[[Being drowned in a sea of sand]]-->(link: "above[ (++sand, --vitality, -time)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $sand to it +1)(set: $vitality to it -2)(display: "sweat")(go-to: "Being drowned in a sea of sand")] you.
]\
](drown|
]<contentBox|\
</div>\
</div>\
</div>{
(if: $vitality >=5)[
(if: $time >= 8)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-swirling-player-down.png" alt="a figure is pulled into swirling sands" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-swirling-player-down.png" alt="a figure is pulled into swirling sands" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-swirling-player-down.png" alt="a figure is pulled into swirling sands" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-swirling-player-down.png" alt="a figure is pulled into swirling sands" height="300" width="300">')
]
(else:)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-swirling-player-down.png" alt="a figure is pulled into swirling sands" height="300" width="300">')
]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-sandEnd-whiteCentre.png" alt="everything is sand" height="300" width="300">')
(set: $playerIMG to "")
]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
(if: $vitality >=5)[
There is pressure around your throat.
You drift somewhere between movement and stillness while the sand carries your body forward. Sometimes you think you are swimming. Sometimes sinking. Your thoughts move slowly. So does the current. It grinds against your skin.
You cough and sand spills from your mouth. A body moves beside yours and then another. You feel hands beneath your shoulders pulling upward.
For a terrible moment you panic and thrash weakly, convinced something still has a hold on your neck. But when your hands reach your throat, what you touch is unmoving. Hardened. A small, smooth figure wrapped tightly around your neck and shoulders.
The swimmer beside you makes a frightened sound. Another carefully pries your body upward through the violent current while avoiding touching the hardened shape clinging to your neck. Your vision comes and goes.
When your awareness steadies again, you are lying across hard sandstone. The island beneath you trembles from the force of the surrounding current. The swimmers who dragged you here do not stay long.
You understand why. The current around the island churns violently now, all pulling in one direction toward the deep centre depression in the sands.
You remain upon the island for a long while. Too exhausted to move. Too aware of the weight hanging from your body. When you finally pull yourself back into the current, the hardened form knocks softly against your chest with every movement. It makes swimming awkward and heavy.
The current catches you almost immediately. You try weakly to resist it, but your body no longer has the strength. The sands ahead churn faster and faster as the current narrows around you. You are carried helplessly toward the violent swirling depression while the rigid weight around your neck drags against your shoulders like a second body.
The sands roar louder, the current tightens, and then suddenly the world tilts sharply downward and you are sucked beneath the surface into the dark rushing throat of the swirling sands <!--[[Down a waterfall of sand]]-->(link: "below[ (--time, -time, +parasite)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $time to 6, $storyController to it + (a: "parasite"))(go-to: "Down a waterfall of sand")].
]\
(else:)[
The sand closes over your body.
At first you fight it. Your limbs jerk weakly beneath the surface while the current pulls at you from every direction. A weight around your neck drags you lower.
Lower.
The sand grows soft.
The panic inside your body fades into something quieter and you stop understanding where your body ends and the sand begins. The current moves through you now instead of around you. You feel grains slipping across your skin, through your mouth, behind your eyes. And then even those sensations begin to disappear.
There is no more choking.
No more fear.
No more weight.
Only movement.
Only sand.
You drift within it for a long time.
The sands continue moving and so you <!--[[Flip the hourglass]]-->(link: "move")[(track: 'sandMovement', 'play')(set: $sand to 10, $time to 0, $vitality to 0, $sweat to 0)(go-to: "Flip the hourglass")]\
]\
]\
</div>\
</div>\
</div>{(display: "create-images")
<!--Fail safe -->
(if: $partnerA's active is not 2)[(go-to: "Error")]
<!--End Fail safe -->
(set: _birthPartner to 0)
(if: $partnerB's active is 2)[(if: $partnerB's creator is 1)[(set: _birthPartner to 2)](else:)[(set: _birthPartner to 1)]](else:)[(set: _birthPartner to 1)]
(set: _attempt to 1)<!--1 is A, 2 is B-->}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|\
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
(box: "X", 22)[\
[$vitalityProse $sandProse
]<status|
[THERE ARE NO FERTILE PARTNERS.](error|\
[You return to the birthing sands, and spend some time reminiscing. (if: $storyController contains "partneredUp")[](else:)[Your partners may be gone, your babies no longer carried upon your back, but when you pause and are still you imagine you can feel the sand that was once a part of you, outside your body.]
You return to the quieter (link: "sands[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'playerGood', 'play')(track: 'sandMovement', 'play')(display: "sweat")(go-to: "Swim the sand")], full of memories and a feeling of fulfillment.](babyFul|\
[\
<!--1. If Poly, do BOTH your partners want babies?-->\
(if: $partnerB's active is 2)[<!--START polyNegotiation-->\
[The three of you drift together within a slower current near the edge of the sands. One of your partners gestures toward the gathered accumulation low across your bodies.
Immediately, the meaning is understood by everyone present.
After a pause, they begin gathering the softened sand carefully between {
[\
(link: "their hands[ (?creation, ?partner)](help|.")[\
their hands.\
(track: 'playerExplore', 'play')
<!--1A. Poly, regardless of compatibility YOU PLAYER want a baby, so you will choose to stay with the partner who wants a baby here, you didn't opt for Adoption-->\
\
<!--1A. Poly and both partners want kids-->\
(if: $partnerA's creator is 1 and $partnerB's creator is 1)[
(show: ?fullPolyCreateAhead)(hide: ?start)
]\
<!--1B. Poly - one partner doesn't want kids-->\
(if: $partnerA's creator is 0 or $partnerB's creator is 0)[
<!--1B-A you choose baby, over partner's hesitation-->\
(replace: ?rescue)[Rescue]\
(replace:?bothHands)[both hands, one to each of you.]
(if: $partnerA's creator is 0)[
<!--Partner A doesn't want to make kids, but was ok to adopt, and was clingy-->\
(if: $partnerA's adopt is 1)[
(if: $partnerA's cling is 1)[
<!--1B-A-A partner A sticks around -->\
(show: ?reluctantParticipant)
(show: ?fullPolyCreateAhead)
(hide: ?start)
]
]
<!--AB-A-B Partner A doesn't want to be a part of this and swims away-->\
(else:)[
(set: $partnerA's cling to $partnerB's cling,
$partnerA's patience to $partnerB's patience,
$partnerA's creator to $partnerB's creator,
$partnerA's adopt to $partnerB's adopt,
$partnerA's vitality to $partnerB's vitality,
$partnerB's active to 0)\
(show: ?stayOnePartnerDownCreate)(hide: ?start)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$partneraIMG
</div>]
]
]
(else-if: $partnerB's creator is 0)[
<!--Partner B doesn't want to make kids, but was ok to adopt, and was clingy-->\
(if: $partnerB's adopt is 1)[\
(if: $partnerB's cling is 1)[
<!--1B-A-C partner B sticks around -->\
(show: ?reluctantParticipant)
(show: ?fullPolyCreateAhead)
(hide: ?start)
]
]
<!--AB-A-D Partner B doesn't want to be a part of this and swims away-->\
(else:)[
(set: $partnerB's active to 0)\
(show: ?stayOnePartnerDownCreate)(hide: ?start)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$partneraIMG
</div>]
]
]
]
]
]<playerWantsBaby|}]<start|\
<!-- 2A. Poly, and one of your partner's doesn't want to MAKE a baby.-->\
[\
(if: $partnerA's creator is 0 or $partnerB's creator is 0)[\
Your other partner (link: "stills completely[ (+options)](help|.")[stills completely.{
(replace: "noOne")[No one]
(track: 'playerExplore', 'play')
(if: $partnerA's creator is 0 or $partnerB's creator is 0)[
<!--2A-A. Poly, one partner doesn't want to make a baby, but at least 1 wants to adopt-->\
(if: _birthPartner is 1)[
(if: $partnerB's adopt is 1)[
(show: ?bWantAdopt)
]
(else:)[(show: ?bNoWantAdopt)]
]
(else-if: _birthPartner is 2)[
(if: $partnerA's adopt is 1)[
(show: ?bWantAdopt)
]
(else:)[(show: ?bNoWantAdopt)]
]
]}\
]
The current continues carrying all three of you together while no one moves for a long while.
]\
[<!--rescue-->\
Your formally still partner tentatively gestures outward instead, toward the distant islands rising above the sandline.
Not creation. (link: "Rescue[ (?partner, ?child)](help|.")[{Rescue.
(replace: ?playerWantsBaby)[their hands]
(track: 'playerExplore', 'play')
<!--2A-A-A. Poly, both partners want to adopt-->\
(if: $partnerA's adopt is 1 and $partnerB's adopt is 1)[(show: ?enough3)]
<!--2A-A-B. Poly, one partner doesn't want to adopt, and you're into Adoption-->\
(else:)[\
(if: $partnerA's creator is 1)[
(set:
$partnerA's cling to $partnerB's cling,
$partnerA's patience to $partnerB's patience,
$partnerA's creator to $partnerB's creator,
$partnerA's adopt to $partnerB's adopt,
$partnerA's vitality to $partnerB's vitality,
$partnerB's active to 0
)\
(show: ?stayOnePartnerDownAdopt)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$partneraIMG
</div>]
]
(if: $partnerB's creator is 1)[
(set: $partnerB's active to 0)
(show: ?stayOnePartnerDownAdopt)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$partneraIMG
</div>]
]
]
}]<rescue| Continuation without reshaping yourselves into something smaller.
](bWantAdopt|\
<!--2A-B. Poly DINK+1: one partner doesn't want to make a baby OR adopt, but offers to have a kidless life with you both-->\
[
Eventually, the still partner shakes their head and offers [(link: "both hands[ (continue story)](help|")[both hands{\
(track: 'playerExplore', 'play')
(replace: ?playerWantsBaby)[their hands]
(replace: ?noOne)[No one]
(replace: ?choice)[You take one of the offered, empty hands, and then turn to watch your other partner.]
(if: $partnerA's creator is 1)[
<!--2A-B-A Poly TINK - partner A will give up dreams of baby-->
(if: $partnerA's patience is 1 and $partnerA's cling is 1)[
(set: $partnerA's creator to 0)
(show: ?enough2)
]
<!--2A-B-C Poly Breakup - Partner A leaves, B becomes A, leave with partner who doesn't want kids-->
(else:)[
(set:
$partnerA's cling to $partnerB's cling,
$partnerA's patience to $partnerB's patience,
$partnerA's creator to $partnerB's creator,
$partnerA's adopt to $partnerB's adopt,
$partnerA's vitality to $partnerB's vitality,
$partnerB's active to 0
)\
(show: ?leaveOnePartnerDownDink)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$partneraIMG
</div>]
]
]
<!--2A-B-A Poly TINK - partner B will give up dreams of baby-->
(else-if: $partnerB's creator is 1)[
(if: $partnerB's patience is 1 and $partnerB's cling is 1)[
(set: $partnerB's creator to 0)
(show: ?enough2)
]
<!--2A-B-D Poly Breakup - PartnerB leaves, A stays, leave with partner who doesn't want kids-->
(else:)[
(set: $partnerB's active to 0)\
(show: ?leaveOnePartnerDownDink)
]
]
}], one to each of you.
]<bothHands|\
The disagreement settles heavily between you.
[(link:"No one[ (+sand, --partner)](help|")[{No one\
(track: 'playerBad', 'play')
(set: $sand to it +1)
(replace: ?statusBars)[(display: "statusBars")]
(show: ?leaveKidlessApart)
(replace: ?playerWantsBaby)[their hands]
(replace: ?rescue)[Rescue]
(replace:?bothHands)[both hands, one to each of you.]
}]]<noOne| appears angry.
Only frightened. [](choice|
](bNoWantAdopt|\
<!--End of bNoWantBaby-->]\
[\
The heaviness lingers. At last, one of your partners reaches everyone's shoulders and pulls you into an akward embrace. You all lean on each other for a time, and then in wordless synchronicity, pull back, turn and then each of you follow your own current <!--[[Swim the sand]]-->(link: "away[ (-time, +sand, -vitality, +sweat)](help|")[(track: 'playerBad', 'play')(display: "sweat")(set: $partnerA's active to 0, $partnerB's active to 0, $storyController to it - (a: "partneredUp"))(go-to: "Swim the sand")] from the active sands.\
](leaveKidlessApart|\
[
You watch as the distance between you and your other partner begins to grow further apart. Their eyes sweat heavily, shifting back and forth until they jolt around suddenly, and in a burst of speed, breast stroke away from the active waters.
Your remaining partner pulls you into an embrace. You can feel both grief and sadness from the other's departure, but also a vibrating excitement, which they attempt to suppress to give priority to the sadness of the current moment.
After a time, they push you apart, but keep a hand on your shoulder. They drop the other hand back down to their accumulation of sand just above the sandline and scoop out a small (link: "handful[ ?creation, --sand, -vitality, -time)](help|")[(track: 'playerExplore', 'play')(show: ?excite)], keeping it cradled between the shelter made between your two stationary bodies.\
](stayOnePartnerDownCreate|\
[\
Your partner watches as you both gaze off into the distance. They cradle the offered sand for a moment longer and with a shudder, push it back into their chest. They wrap an arms around it, and as you approach, they raise the other arm to keep their distance. They look at you both with sad acceptance, and then turn to swim away.
Your remaining partner pulls you into an embrace. You can feel both grief and sadness from the other's departure, but also the fondness and relief for having stayed.
After a time, they push apart, but keep a hand on your shoulder. The other hand is raised to the islands where small <!--[[Adoption]]-->(link: "figures[ -time, +sand, -vitality, +sweat, ?child)](help|")[(display: "sweat")(track: 'playerGood', 'play')(go-to:"Adoption")] await your arrival.\
](stayOnePartnerDownAdopt|\
[\
Your partner watches as you both for a long moment and then down at the clump offered from their body. They cradle it in their hands for a moment longer and with a shudder, push it back into their chest. They wrap an arms around it, and as you approach, they raise the other arm to keep their distance. They look at you both with sad acceptance, and then turn to swim away.
Your remaining partner pulls you into an embrace. You can feel both grief and sadness from the other's departure, but also the fondness and relief for having stayed.
After a time, they push apart, but keep a hand on your shoulder. You swim from the active currents and return to calmer (link: "sands[ (-time, +sand, -vitality, +sweat)](help|")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to:"Swim the sand")] together hand in hand.\
](leaveOnePartnerDownDink|\
[\
[\
Your other partner looks back and forth between you, and then down at the offered lump of clay in your partner's hands. Then their face softens. They nod softly, and then looking back and forth, their face breaks out in the a grin.
](reluctantParticipant|\
<!--Everyone is in on making babies-->\
Your other partner waits silently beside you while the current carries both your bodies in slow circles.
Your thoughts are a jumble. They both [(link: "excite[ (?creation)](help|")[(track: 'playerGood', 'play')(show: ?excite)(hide: ?fullPolyCreateAhead)]]<exciteLink| and [(link: "scare[ (?partner)](help|")[(track: 'playerBad', 'play')(show: ?scare)(hide: ?fullPolyCreateAhead)]]<scareLink| you.\
](fullPolyCreateAhead|\
<!--END polyNegotiation-->]\
(else:)[<!--Start monoNegotiation-->\
You and your partner drift away from the more crowded currents into quieter sands. For a time, the two of you simply tread water together while the current moves around your bodies.
Then your partner reaches toward the accumulated sand gathered low across your body. Their hands pause there. Slowly, they gather a small clump of softened sand from their own body and hold it suspended between both of you above the sandline.
The gesture is unmistakable. You feel your pulse quicken beneath the drifting grit. The thought settles heavily into your body. Not simply closeness. Not simply synchronization. Something that would continue moving through the currents after both of you were gone.
Your partner waits silently beside you while the current carries both your bodies in slow circles.
Your thoughts are a jumble. They both [(link: "excite[ (?creation)](help|")[(track: 'playerGood', 'play')(show: ?excite)(hide: ?invitation)]]<exciteLink2| and [(link: "scare[ (?partner)](help|")[(track: 'playerBad', 'play')(show: ?scare)(hide: ?invitation)]]<scareLink2| you.
<!--END monoNegotiation-->]\
]<invitation|\
[\
You reach toward the clump of gathered sand.
Your partner exhales sharply, relief immediately visible in their movements. You scoop a clump from your own body, and they gently place their empty hand on top of your collected sand. You mirror the motion with your empty hand, the two of you connected and cradling both piles of raw essence.
The two of you drift closer together until your foreheads press.
For a long while, neither of you moves.
You simply remain there holding the (link: "possibility[ (continue story)](help|")[(replace: ?attempt1)[(display: "attempt1")](hide: ?excite)] carefully between your bodies.\
](excite|\
[\
You stare at the gathered sand suspended between your bodies.
Instead of excitement, a deep heaviness settles inside you. An exhaustion.
(if: $storyController contains "parentTrauma" or $storyController contains "selfTrauma")[You think about the responsibility. The fear of watching something fragile disappear beneath the current despite your efforts.
]Without meaning to, you pull slightly backward through the sand.
Your partner notices immediately.
The clump loosens slowly between their fingers and dissolves back into the surrounding drift.
(if: $partnerA's cling is 1)[\
(if: $partnerA's patience is 0)[\
You partner watches the sand moving through the current, and for a long moment, you are certain they plan to follow it away. But then they reach out their now empty hand and use it to cradle your face. You feel their pain, but also their desire to stay, and you also reach out, pulling them closer. When you leave the (link: "active sands[ (-time, +sweat, -vitality, +sand)](help|")[(set: $partnerA's cling to 0, $partnerA's vitality to it - 0.5)(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")], their hand clings to yours, but the ache is still present in their face.(if: $partnerB's active is 2)[Your other partner swims nearby, giving you space, but keeping tempo with your strokes.]
]\
(else:)[\
For an enduring moment, neither of you moves.
Then your partner reaches toward your shoulder. The gesture is more hesitant now. Sadder. But still gentle. (if: $partnerB's active is 2)[Your other partner hovers nearby, but doesn't reach out.
]
Eventually, the (if: $partnerB's active is 2)[three](else:)[two] of you drift back toward the wider (link: "currents[ (-time, +sweat, -vitality, +sand)](help|")[(set: $partnerA's vitality to it - 0.5)(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")], together.
Though something has changed between you, the rhythm of your movements slowly reforms beside one another over time.\
]\
]\
(else:)[\
Your partner stares as the sand moves away in the current, the released clumps immediately disappearing to you, but seemingly visible to them. When their head slowly turns back, their eyes brush across yours and then settle lower, not quite able to make sustained contact. You reach forward, but they shift back, just out of reach. Your hand remains extended and reaching, even after they have joined the departed sands and are carried away by the (link: "current[ (-time, +sand, -vitality, +sweat, -partner)](help|")[(if: $partnerB's active is 2)[{
(set: $partnerA's cling to $partnerB's cling,
$partnerA's patience to $partnerB's patience,
$partnerA's creator to $partnerB's creator,
$partnerA's adopt to $partnerB's adopt,
$partnerA's vitality to $partnerB's vitality,
$partnerB's active to 0)}](else:)[(set: $partnerA's active to 0, $storyController to it - (a: "partneredUp"))](track: 'playerBad', 'play')(display: "sweat")(go-to: "Swim the sand")] (if: $partnerB's active is 2)[Your other partner treads water nearby but doesn't otherwise move].
]
](scare|\
[](attempt1|\
[\
There is a sickening shock in your lower body as the form cracks and a large chunk escapes your fingers. You look up at the dripping face of your partner, and see the terror you feel reflected back. With a scramble, they {\
(if: $sand >2)[\
(link: "scoop[ (--sand, ?creation](help|")[scoop(replace: ?form2)[(display: "attempt2")](track: 'sandMovement', 'play')]
]
(else:)[scoop]} a second mound from their torso and begin to shape the clay into the remain between you. {\
(if: $sand <=2)[\
You go to pull from your own body, but cannot separate the sands. You are overcome with exhaustion and sadness. Your partner allows the sand to flow free from their hands and embraces you.
(if: $partnerB's active is 2)[\
Your other partner throws themselves around you both.
] Time continues to flow around you, but for a time, within your bodies, it feels as if it comes to a stop.
When you leave these (link: "currents[ (continue story)](help|")[(display: "sweat")(track: 'playerGood', 'play')(go-to: "Swim the sand")], you feel both lighter and heavier.
]}
](attempt2|\
[](form2|\
[\
[Again, the clay refuses to set, and the sand slides free from your figure in wet clumps, carried away by the quick moving current. Desperation sets into the sandy depressions on your partner's face. They look into your eyes, with a painful (link: "question[ (continue story)](help|")[question.
(if: $sand >=3)[
You nod slowly, as you scoop another clump of wet sand from your lower torso, now tender and depleted. You bring it towards their remaining clay with reverence, and with slow care, you begin to shape another (link: "form[ (--sand, -time, ?creation)](help|.")[form.
{
(set: _success to 0, _attempt to 3)
(if: $sand is >=3)[(set: _success to it +1)]<success1|
(if: $vitality is >=3)[(set: _success to it +1)]<success2|
(if: $partnerB's active is 2)[
(if: $partnerB's creator is 1)[
(if: $partnerB's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerA's vitality >=3)[(set: _success to it +1)]
]
(else-if: $partnerA's creator is 1)[
(if: $partnerA's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerB's vitality >=3)[(set: _success to it +1)]
]
]<polySuccess|
(else:)[
(if: $partnerA's vitality >=3)[
(set: _success to it +1)
]
]\
(if: _success is >=3)[\
(set: _time to (random: 1,100))
(if: $time >=7)[
(if: _time is <=80)[
(track: 'playerGood', 'play')
(show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(track: 'playerBad', 'play')
(show: ?fail3)
]
]
(else-if: $time >=6)[
(if: _time is <=66)[
(track: 'playerGood', 'play')
(show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(track: 'playerBad', 'play')
(show: ?fail3)
]
]
(else-if: $time <6)[
(if: _time is <=44)[
(track: 'playerGood', 'play')
(show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(track: 'playerBad', 'play')
(show: ?fail3)
]
]
]
(else:)[
(set: $sand to it -2)
(replace: ?statusBars)[(display: "statusBars")]
(track: 'playerBad', 'play')
(show: ?fail3)
](hide: ?third)
}\
]\
]\
(else:)[\
You go to pull from your own body, but cannot separate the sands. You are overcome with exhaustion and sadness. Your partner allows the sand to flow free from their hands and embraces you.
(if: $partnerB's active is 2)[\
Your other partner throws themselves around you both.
] Time continues to flow around you, but for a time, within your bodies, it feels as if it comes to a stop.
When you leave these (link: "currents[ (-time, +sand, +sweat)](help|")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")], you feel both lighter and heavier\
]\
]]<third|\
[<!--fail3-->\
Again, the sand between your hands crumbles, and you jerk free to try and stop it from escaping in the current. You are unsuccessful and your partner looks at you with (link: "horror[ (?partner)](help|")[horror{\
(track: 'sandMovement', 'play')(track: 'playerBad', 'play')
(set: _attempt2desire to (random: 1,100))
(if: _birthPartner is 1 and $partnerA's patience is 1)[
(set: _attempt2desire to it +10)
(if: $partnerA's cling is 1)[(set: _attempt2desire to it +10)]
]
(else-if: _birthPartner is 2 and $partnerB's patience is 1)[
(set: _attempt2desire to it +10)
(if: $partnerB's cling is 1)[(set: _attempt2desire to it +10)]
(if: $partnerA's cling is 1)[(set: _attempt2desire to it +5)]
]
<!--40% chance the partner is done and wants to break up-->
(if: _attempt2desire is <=40)[(show: ?enough1)]
<!--60% chance of not immediately breaking up but...:-->
(else:)[
(if: $partnerB's active is 2)[
(if: _birthPartner is 2 and $partnerB's adopt is 1)[
(if: $partnerA's adopt is 1)[(show: ?enough3)
](else:)[(show: ?enough2)]
](else-if: _birthPartner is 2 and $partnerA's adopt is 1)[
(if: $partnerB's adopt is 1)[(show: ?enough3)
](else:)[(show: ?enough2)]
](else-if: _birthPartner is 1 and $partnerA's adopt is 1)[
(if: $partnerB's adopt is 1)[(show: ?enough3)]
(else:)[(show: ?enough2)]
](else-if: _birthPartner is 1 and $partnerB's adopt is 1)[
(if: $partnerA's adopt is 1)[(show: ?enough3)]
(else:)[(show: ?enough2)]
](else:)[(show: ?enough2)]
]
(else:)[
(if: $partnerA's adopt is 1)[
(show: ?enough2)
]
(else:)[
(show: ?enough1)
]
]
]
}], a tiny fragment of formed clay left in their hands.
](fail3|\
](attempt3|\
[\
With a pitiful gesture, they let the remaining clump be carried away from the sand's current. You swim closer, but they back up, their hands raised. You stop, and they take up the momentum and swim back aways. When they stop, they meet your eyes with a quiet, heartbreaking request. You nod, and they turn to swim away, not looking back.
(if: $partnerB's active is 2)[
Your other partner swims up to you and tentatively puts a hand on your shoulder. You fold back and into them and they embrace you as you surrender to the sweat and pain erupting from you. When you begin to empty, and feel light and dizzy, you realize that they have dragged you from the (link: "active waters[ (-time, +sweat, +/+vitality, +sand)](help|")[{(set: $partnerA's cling to $partnerB's cling,
$partnerA's patience to $partnerB's patience,
$partnerA's creator to $partnerB's creator,
$partnerA's adopt to $partnerB's adopt,
$partnerA's vitality to $partnerB's vitality,
$partnerB's active to 0)}(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Island")] towards the calmer sands near the borders.
]
(else:)[
You remain treading the sands for a time, feeling the current pass over your lower body. (if: $vitality <=5)[Exhausted from the effort and the weight in your chest, you drift towards the unmoving <!--[[Island]]-->(link: "islands[ (-time, +sweat, +/+ vitality, -sand, -partner)](help|")[(set: $partnerA's active to 0, $storyController to it - (a: "partneredUp"))(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Island")] near the sand border's edge.](else:)[When you have recovered enough to move, you lean forward into the current, only shifting your body to navigate, but otherwise allowing the current to move you forward and out of the <!--[[Swim the sand]]-->(link: "active sands[ (-time, +sweat, +/+ vitality, -sand, -partner)](help|")[(set: $partnerA's active to 0, $storyController to it - (a: "partneredUp"))(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].]
]
](enough1|\
[
Your partner cradles the remaining sand against them, and with a shudder, pushes it back into the chest. They open their arms, and you push yourself into their arms. (if: $partnerB's active is 2)[You feel another set of arms around your shoulders and you let yourself relax and only gently glide enough to match the rhythm of the two other bodies keeping you afloat.]
Looking up into their face(if: $partnerB's active is 2)[s], you see love reflected back. You reach out empty hands still with the circle of their embrace, and they are taken and filled, as you swim away from these active waters, (link: "together[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].
](enough2|\
[
Your partner watches as you both gaze off into the distance. They cradle the offered sand for a moment longer and with a shudder, push it back into their chest. They open their arms, and you push yourself into their arms. (if: $partnerB's active is 2)[You feel another set of arms around your shoulders and you let yourself relax and only gently glide enough to match the rhythm of the two other bodies keeping you afloat.]
Looking up into their face(if: $partnerB's active is 2)[s], you see love reflected back. You reach out empty hands still with the circle of their embrace, and they are taken and filled, as you sweep forward together towards the islands where small lonely figures (link: "wait[ (-time, +sweat, -vitality, +sand, ?child)](help|")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Adoption")].
](enough3|\
[\
The shape becomes more and more solid as you continue to press and slide your hands over the form. You are so engrossed in the creation that you are startled when you notice a rain of sweat dripping onto the little form between your hands. Looking up, you see your partner's face dripping with labour and determination. You feel a trickle of moisture run down your own face and down onto the little figure, and your partner brushes more sand onto the newly moistened area. The form grows and quivers as you press it between your hands.
And then there is movement from within. You both stop pressing and instead <!--[[New life]]-->(link: "marvel[ (-time, --sand, -vitality, +sweat)](help|")[(set: $childTtl to it +1)(set: $sand to it -2)(if: _birthPartner is 2)[(set: $partnerB's vitality to it -1, $partnerB's cling to 1, $partnerA's cling to 1)](else-if: _birthPartner is 1)[(set: $partnerA's vitality to it -1, $partnerA's cling to 1)(if: $partnerB's active is 2)[(set: $partnerB's cling to 1)]](display: "sweat")(track: 'child', 'play')(track: 'sandMovement', 'play')(go-to: "New life")] at the tiny moving form between you.
](success|\
]<contentBox|\
</div>\
</div>
{=
(if: $childTtl >=3)[(hide: ?invitation)(show: ?babyFul)]{(display: "sloping-images")
<!--calculate Death priority: partnerB, partnerA, friend-->
(set: _death to 0, _deathType to "")
(if: $storyController contains "partneredUp" and $partnerB's active is 2 and $partnerB's vitality <1)[
(set: _death to 1, _deathType to "partnerB")
]
(else-if: $storyController contains "partneredUp" and $partnerA's active is 2 and $partnerA's vitality <1)[
(set: _death to 1, _deathType to "partnerA")
]
(else-if: $storyController contains "friends" and $friend's vitality <1)[
(set: _death to 1, _deathType to "friend")
]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
<div class="centered">(bg:#fff)+(color:#000)[ [( sand, pouring )]<audio|]</div>
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[(if: (history:)'s last is "Swim the sloping sands")[(either: "All the currents look the same...","You struggle to mark the passage of time in these monotonous sands...", "You stop focusing on anything but swimming...", "Time is marked only by the motions of your body, cutting through the sand...", "You feel numb...")](else:)[The lower sands move endlessly beneath your body. Not with the quick drifting currents of the upper hourglass, but in long sloping tides that rise and fold beneath the constant weight of falling sand above.
You move carefully through them now.]
Every stroke requires more thought than it once did.(if: (history:) contains "A steady rock")[
Sweat still gathers across your body from time to time, though less violently than before. Wherever moisture touches you, loose sand immediately cakes against your skin in uneven layers before slowly drying and flaking away again.]
(if: (history:) contains "A steady rock")[Sometimes you [(link: "feel ancient[ (-time)](help|")[{
(track: 'playerExplore', 'play')
(if: $time is 5 and (history:) does not contain "The sand becomes water")[(go-to: "The sand becomes water")](else:)[
(set: $time to it -0.25)(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(hide: ?start)
(if: $storyController contains "parasite" and visits is 1)[(show: ?parasite)]
(else:)[
(set: _slopingEvent to (random: 1,8))
(if: _slopingEvent is 1)[(show: ?border)]
(else-if: _slopingEvent is 2)[(show: ?newBodies)]
(else-if: _slopingEvent is 3)[(show: ?strokes)]
(else-if: _slopingEvent is 4)[
(if: (history:) contains "A steady rock")[(show: ?glass)]
(else:)[(show: ?border)]
]
(else-if: _slopingEvent is 5)[
(if: $sand >2)[(show: ?floating)]
(else:)[(show: ?newBodies)]
]
(else-if: _slopingEvent is 6)[
(if: $storyController contains "partneredUp")[(show: ?partnerSwim)]
(else:)[(show:?strokes)]
]
(else-if: _slopingEvent is 7)[
(if: $storyController contains "partneredUp" and $vitality >6)[(show: ?sync)]
(else-if: (history:) contains "A steady rock")[(show: ?glass)]
(else:)[(show: ?border)]
]
(else-if: _slopingEvent is 8)[
(if: $storyController contains "friends")[(show: ?race)]
(else-if: $sand >2)[(show: ?floating)]
(else:)[(show: ?newBodies)]
]
]
(if: _death is 1)[
(show: ?death)
(if: _deathType is "partnerB")[
(show: ?partner2death)
(if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The light blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
(else-if: _deathType is "partnerA")[
(show: ?partner1death)
(if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The dark blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
(else-if: _deathType is "friend")[
(show: ?friendDeath)
(if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The orange companion figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
]
]}feel ancient]]<ancient|.
Sometimes you [(link: "feel newly formed[ (-time)](help|")[{
(track: 'sandMovement', 'play')
(if: $time is 5 and (history:) does not contain "The sand becomes water")[(go-to: "The sand becomes water")](else:)[
(set: $time to it -0.25)(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(hide: ?start)
(if: $storyController contains "parasite" and visits is 1)[(show: ?parasite)]
(else:)[
(set: _slopingEvent to (random: 1,8))
(if: _slopingEvent is 1)[(show: ?border)]
(else-if: _slopingEvent is 2)[(show: ?newBodies)]
(else-if: _slopingEvent is 3)[(show: ?strokes)]
(else-if: _slopingEvent is 4)[
(if: (history:) contains "A steady rock")[(show: ?glass)]
(else:)[(show: ?border)]
]
(else-if: _slopingEvent is 5)[
(if: $sand >2)[(show: ?floating)]
(else:)[(show: ?newBodies)]
]
(else-if: _slopingEvent is 6)[
(if: $storyController contains "partneredUp")[(show: ?partnerSwim)]
(else:)[(show:?strokes)]
]
(else-if: _slopingEvent is 7)[
(if: $storyController contains "partneredUp" and $vitality >6)[(show: ?sync)]
(else-if: (history:) contains "A steady rock")[(show: ?glass)]
(else:)[(show: ?border)]
]
(else-if: _slopingEvent is 8)[
(if: $storyController contains "friends")[(show: ?race)]
(else-if: $sand >2)[(show: ?floating)]
(else:)[(show: ?newBodies)]
]
]
(if: _death is 1)[
(show: ?death)
(if: _deathType is "partnerB")[
(show: ?partner2death)
(if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The light blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
(else-if: _deathType is "partnerA")[
(show: ?partner1death)
(if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The dark blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
(else-if: _deathType is "friend")[
(show: ?friendDeath)
(if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The orange companion figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
]
]}feel newly formed]]<new|.](else:)[The lower sands keep moving. You <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swim[ (-time, ?sweat, -vitality, -sand)](help|")[
(track: 'playerExplore', 'play')
(track: 'step', 'play')
(display: "sweatER")
(if: $time <= 5 and (history:) does not contain "The sand becomes water")[
(go-to: "The sand becomes water")
]
(else-if: $time < 1 or $vitality <= 1)[
(go-to: "The final lap")
]
(else:)[
(go-to: "Swim the sloping sands")
]
](if: (history:)'s length >1)[(if: (history:)'s last is "Swim the sloping sands")[ and swim](if: (history:)'s 2ndlast is "Swim the sloping sands")[ and swim](if: (history:)'s 3rdlast is "Swim the sloping sands")[ and swim](if: (history:)'s 4thlast is "Swim the sloping sands")[ and swim]].
]]<start|\
[\
You drift near the curved boundary at the edge of the lower sands.
(if: $storyController contains "glass")[\
The surface no longer feels daunting to you now that you understand what it is, but it is still exhilarating to be close.](else:)[The dark reflective boundary still feels impossibly smooth beside the restless lower currents.]
You allow the rising tide to lift your body gently over time. There is strange pleasure in surrendering to the endless rise. Nothing here ebbs. Nothing retreats. Only upward. Only onward. This might have worried you once, but not now.
[
[\
You see your partners in the reflection, and shift out of your daze. As you turn, you see that one is helping the other. They are clearly relieved to have found you.
You each clapse each other's hands and take comfort in each other before your partner stiffens and begins to shed sand. You grab their other hand while your other partner reaches forward and grabs a handful of still warm sand from their chest and pushes it into their own. Then they gently take them by the shoulders so that you can do the (if: $storyController contains "ignorance")[same]
(else:)[
(link: "same[ (+vitality, +memory)](help|")[own\
(track: 'partnerBbad', 'play')
(set: $wonder to it +1, $vitality to it + 0.5)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
]. ]
Sand leaks from them at an alarming rate and before long, you and your partner allow them to drift from you hands to be carried away by the everflowing current.](partner2death|\
[\
You see your partner in the reflection, and shift out of your daze. As you turn, you see that they are clearly relieved to have found you.
You each clapse each other's hands and touch foreheads. Your partner stiffens and their body begins to dry out, loose sand tumbling from their body at an alarming rate. You reaches forward and grab a handful of still warm sand from their chest and pushes it into your (if: $storyController contains "ignorance")[own body]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(track: 'partnerAbad', 'play')
(set: $wonder to it +1, $vitality to it + 0.5)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
]. ]
Before long, you release them and allow them to drift from you hands to be carried away by the everflowing current.](partner1death|\
[\
You see your companion swims up without turning from the reflection. They position themselves shoulder to should with you and catch the same slow current that brushes against the border. You feel when they stiffen, and their sand begins to blow and scatter onto your body. Before they are gone, you reach over, and scoop a still soft mount from their disintegrating form and lift up to your chest, patting their sand into your (if: $storyController contains "ignorance")[own body]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(set: $wonder to it +1, $vitality to it + 0.5)
(track: 'friendBad', 'play')
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
]. ]
You shift and their body drifts back into the loose sands where their remains float for a short time before sinking under the rising tide.](friendDeath|
You {
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$time to it -0.25,
$vitality to it +0.25,
$playerbIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(replace: ?imageDesc)[The light blue partner figure disappears.]
]
](partner2death|
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$time to it -0.25,
$vitality to it +0.25,
$playeraIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(replace: ?imageDesc)[The dark blue partner figure disappears.]
]
](partner1death|
[
(link: "grieve[ (-time, +vitality, -friend)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$time to it -0.25,
$vitality to it +0.25,
$friendIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(replace: ?imageDesc)[The orange companion figure disappears.]
]
](friendDeath|
} and keep living.
](death|
You keep <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swim[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](border|\
[\
You return to the crystalline formations left behind from your transformation. Small translucent fragments have broken free from the larger structures and drift through the lower currents like worn shells.
You collect one carefully and skim it across the sands.
The fragment skips several times before curving away into the dim reflected distance.
You try again.
And again.
[<!--death-->
[
Eventually, you notice one of your partner leaning heavily against the side of the crystal structure. They reach out to take your hand and beacon your other partner to join you. You sit with them, clutching their hand until you feel them stiffen. You watch as their body dries, sand skittering free and pulled off into the current. You and your partner quickly scoop a still soft mount from their disintegrating form and lift up to your chests, patting their sand into your {
(if: $storyController contains "ignorance")[own]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(track: 'partnerBbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You release their hand before it disolves and their body drifts back into the loose sands where their remains float for a short time before sinking under the rising tide.
]}\
](partner2death|\
[\
You turn to search for another stone when you see your partner swim up with obvious distress. You take their hands and touch foreheads together. They relax, but after a still time, you feel them stiffen. Sand begins to crumble under your hand as their body dries, sand skittering free and pulled off into the current. You quickly scoop a still soft mount from their disintegrating form and lift up to your chest, patting their sand into your {
(if: $storyController contains "ignorance")[own]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(track: 'partnerAbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You release their hand before it disolves and their body drifts back into the loose sands where their remains float for a short time before sinking under the rising tide.
]}\
](partner1death|\
[\
You search for another skipping sand when your companion swims up and with effort, and gestures you towards the crystal structure. They pull themselves up onto a perch and beacon for you to join them. The two of you sit resting shoulder to shoulder and watch the sands flow by. You feel when they stiffen, and their sand begins to blow and scatter onto your body, your perch, and down into the current below. Before they are gone, you reach over, and scoop a still soft mount from their disintegrating form and lift up to your chest, patting their sand into your {
(if: $storyController contains "ignorance")[own]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(track: 'friendBad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You watch their remains shift forward and tumble down into the loose sands where they float for a short time before sinking under the rising tide.
]}\
](friendDeath|
You {
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$time to it -0.25,
$vitality to it +0.25,
$playerbIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner2death|
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$time to it -0.25,
$vitality to it +0.25,
$playeraIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner1death|
[
(link: "grieve[ (-time, +vitality, -friend)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$time to it -0.25,
$vitality to it +0.25,
$friendIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](friendDeath|
} and keep living.
](death|\
You <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swim[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](glass|\
[\
Another body tumbles violently down the distant sandfall.
You watch them struggle to orient themselves within the lower currents.
(if: $storyController does not contain "ignorance")[You recognize the fear immediately.
]
Some arrive disoriented. Some exhausted. Some already leaking impossible amounts of sweat into the surrounding sands.
You raise a hand toward them.
Sometimes they gesture back. Sometimes they are too overwhelmed to notice.
[<!--death-->
[\
You are gesturing encouragement towards a newly arrived swimmer when you realize one of your partners has stopped moving beside you. Their body drifts quietly in the slower current while your other partner steadies them. Dry sand begins shedding from your partner's arms and shoulders in delicate streams.
Your remaining partner presses their forehead against yours before scooping a still warm handful from your partner’s chest and pressing it into their own body. Then they pull back so you may do the {
(if: $storyController contains "ignorance")[same]
(else:)[
(link: "same[ (+vitality, +memory)](help|")[same\
(track: 'partnerBbad', 'play')
(set: $wonder to it +1, $vitality to it + 0.5)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
]. ]
}
The new swimmer remains nearby as the sands gradually carry your partner’s remains before they sink below and out of view.](partner2death|\
[\
You notice your partner watching a newly arrived swimmer with unusual stillness.
By the time you reach them, their body has already begun drying along one side. Loose grains skitter away each time the current shifts beneath you. You hold them carefully while they stiffen completely.
The new swimmer lingers nearby, uncertain and silent, while you reach into your partner’s chest and press a still warm handful of sand into {
(if: $storyController contains "ignorance")[your own body]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[your own body\
(track: 'partnerAbad', 'play')
(set: $wonder to it +1, $vitality to it + 0.5)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
]. ]
}
You release the rest of their remains gently into the slow moving sands and watch them drift beneath the rising tide. The new swimmer moves away.](partner1death|\
[\
You are watching a newly arrived swimmer tumbling awkwardly into the lower sands when your companion begins struggling beside you. Then they stiffen. You remain beside them for a long while while their drying sand scatters across your arms and chest.
Before the current can pull them away completely, you scoop a still soft mound from their shoulder and press it into {
(if: $storyController contains "ignorance")[your own body]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[your own body\
(track: 'friendBad', 'play')
(set: $wonder to it +1, $vitality to it + 0.5)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
]. ]
}
The newcomer watches quietly as your companion disappears beneath the lower sands, then turns and swims away.](friendDeath|
You {
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$time to it -0.25,
$vitality to it +0.25,
$playerbIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner2death|
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$time to it -0.25,
$vitality to it +0.25,
$playeraIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner1death|
[
(link: "grieve[ (-time, +vitality, -friend)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$time to it -0.25,
$vitality to it +0.25,
$friendIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](friendDeath|
} and keep swimming.
](death|\
You <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "carry on[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](newBodies|\
[\
You spend time experimenting with different swimming motions through the lower sands. Some movements exhaust you almost immediately. Others conserve energy surprisingly well.
You practise slower rhythms now. Longer glides. Careful turns that waste less effort. Your body no longer moves beautifully. But sometimes it still moves well.
[<!--death-->\
[
You and your partners spend a long while practicing slower swimming motions together. Your synchronicity still possible at reduced speeds.
One partner suddenly loses rhythm beside you.
Their movements become shallow and uneven before stopping entirely. Your remaining partner catches them immediately and together you support their body within the current while loose sand begins drifting from their drying form.
You remain suspended together in the rising tide while the practised motions you shared for so long finally fall still.
Your partner reaches into their chest and presses a still warm handful of sand into themselves before you reach forward to do the{
(if: $storyController contains "ignorance")[same]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[same\
(track: 'partnerBbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
Finally, the current pulls your partner’s remains gently apart and carries them onward through the sands.
]}\
](partner2death|\
[\
You and your partner spend a long while practicing slower swimming motions together. Your synchronicity still possible at reduced speeds.
Suddenly, they lose rhythm beside you.
Their movements become shallow and uneven before stopping entirely. You catch them immediately and support their body as loose sand begins drifting from their drying form.
You remain suspended together in the rising tide while the practised motions you shared for so long finally fall still.
You reach into their chest and press a still warm handful of sand into {
(if: $storyController contains "ignorance")[your chest]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[your chest\
(track: 'partnerAbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
Finally, the current pulls your partner’s remains gently apart and carries them onward through the sands.
]}\
](partner1death|\
[\
You and your companion swim together in seperate practise, borrowing new adaptations, and sharing joy when something feels right.
Suddenly, they falter and dip below the sand.
They come back up sputtering, but even as they restore their float, their movements become shallow and uneven before stopping entirely. You catch them and support their body as loose sand begins drifting from their drying form.
You remain suspended together in the rising tide before they finally fall entirely still.
You reach into their chest and press a still warm handful of sand into {
(if: $storyController contains "ignorance")[your chest]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[your chest\
(track: 'friendBad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
Finally, the current pulls your companion’s remains gently apart and carries them onward through the sands.
]}\
](friendDeath|
You {
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$time to it -0.25,
$vitality to it +0.25,
$playerbIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner2death|
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$time to it -0.25,
$vitality to it +0.25,
$playeraIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner1death|
[
(link: "grieve[ (-time, +vitality, -friend)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$time to it -0.25,
$vitality to it +0.25,
$friendIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](friendDeath|
} and keep swimming.
](death|
You <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "continue[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](strokes|\
[\
You float upon your back within the slower tides and watch the endless sandfall roaring overhead.
Bodies occasionally emerge from the narrow throat high above before vanishing into the lower currents beyond your sight.
You wonder about the lives they lived above.
You wonder who waited for them.
Who feared for them.
Who shaped them.
In time, the falling sands hypnotize you into stillness, and you lose track of time.
[<!--death-->\
[
You are momentarily startled when your partners swim up to join you, but you settle again and float together beneath the endless sandfall for a long while.
At some point, you realize one of your partners has stopped drifting beside you.
Their body floats perfectly still upon the rising tide while dry sand lifts gently from their surface and disappears into the lower currents.
You hold them as your partner reaches toward the still body and presses a still moist handful of sand into their own chest before guiding your hand forward so you may do the {
(if: $storyController contains "ignorance")[same]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[same\
(track: 'partnerBbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You continue floating beside the remains until the rising sands finally pull them beneath the surface.
]}\
](partner2death|\
[\
You are momentarily startled when your partner swims up to join you, but you quickly settle and float together beneath the endless sandfall for a long while.
At some point, you realize they have stopped drifting beside you.
Their body floats perfectly still upon the rising tide while dry sand lifts gently from their surface and disappears into the lower currents.
You right yourself and reach into their still body and take a still moist handful of sand to press into {
(if: $storyController contains "ignorance")[your chest]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[your chest\
(track: 'partnerAbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You continue floating beside the remains until the rising sands finally pull them beneath the surface.
]}\
](partner1death|\
[\
You are momentarily startled when your companion swims up to join you, but you quickly settle and float together beneath the endless sandfall for a long while.
At some point, you realize they have stopped drifting beside you.
Their body floats perfectly still upon the rising tide while dry sand lifts gently from their surface and disappears into the lower currents.
You right yourself and reach into their still body and take a still moist handful of sand to press into {
(if: $storyController contains "ignorance")[your chest]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[your chest\
(track: 'friendBad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You continue floating beside the remains until the rising sands finally pull them beneath the surface.
]}\
](friendDeath|
You {
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$time to it -0.25,
$vitality to it +0.25,
$playerbIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner2death|
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$time to it -0.25,
$vitality to it +0.25,
$playeraIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](partner1death|
[
(link: "grieve[ (-time, +vitality, -friend)](help|")[
grieve
(track: 'playerBad', 'play')
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$time to it -0.25,
$vitality to it +0.25,
$friendIMG to ""
)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
](friendDeath|
} while floating and watching the darkness beyond.
](death|\
You keep <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swimming[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](floating|\
[\
You and your partner(if: $partnerB's active is 2)[s] drift slowly along the perimeter of the lower sands together. No urgency remains between your bodies now. No proving. No pursuit.
Only companionship.
Sometimes your hands brush together beneath the sandline.
Sometimes you simply remain nearby within the same current for long stretches without gesturing at all.
Sometimes, it is enough.
You keep <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swimming[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](partnerSwim|\
[\
For a brief moment, you and your partner(if: $partnerB's active is 2)[s] attempt one of your old synchronized swims.
The motions are smaller now. Less ambitious. You lack the energy for the sweeping powerful movements you once shared in the upper currents.
Still, for several drifting moments, your bodies find rhythm together again. When the sequence ends, all of you are exhausted, but share a synchronized grin.
You keep <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swimming[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](sync|\
[\
Your companion challenges you to another short race through the sloping currents. Neither of you travels very far before becoming winded.
Still, the brief burst of movement wakes something playful inside both of you.
You exaggerate your exhaustion dramatically afterward. Your companion responds with equally theatrical despair.
You keep <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swimming[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](race|\
[\
You spend a long while relearning how to swim with the weight around your neck.
The rigid shape drags strangely against your balance whenever the currents shift unexpectedly.
At times it still fills you with grief. At other times it feels almost inseparable from your body now. Not accepted entirely. But incorporated.
Eventually you stop trying to remember how swimming once felt before carrying it.
You keep <!--[[The final lap]] or [[Swim the sloping sands]]-->(link: "swimming[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerExplore', 'play')(track: 'step', 'play')(display: "sweatER")(if: $time is <1 or $vitality is 1)[(go-to: "The final lap")](else:)[(go-to: "Swim the sloping sands")]].
](parasite|
]<contentBox|\
</div>\
</div>\
</div>{(display: "becomes-images")
<!--calculate Death priority: partnerB, partnerA, friend-->
(set: _death to 0, _deathType to "")
(if: $storyController contains "partneredUp" and $partnerB's active is 2 and $partnerB's vitality <1)[
(set: _death to 1, _deathType to "partnerB")
]
(else-if: $storyController contains "partneredUp" and $partnerA's active is 2 and $partnerA's vitality <1)[
(set: _death to 1, _deathType to "partnerA")
]
(else-if: $storyController contains "friends" and $friend's vitality <1)[
(set: _death to 1, _deathType to "friend")
]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[\
The sands no longer feel like sands.
You keep trying to move through them the way you always have. The same strokes. The same rhythms. The same careful balance between sinking and floating.
Nothing responds correctly.
The currents slip strangely against your body. The resistance is wrong. Every motion either drags too heavily or fails to catch at all. You cannot tell whether you are moving too slowly or too quickly because the world itself no longer feels stable around you.
Sweat pours from your body in impossible amounts.
It runs through the sand in warm streams. It beads across your skin. It blinds you. It fills the spaces between your fingers until you no longer know whether you are coated in wet sand or submerged in liquid.
You try to wipe it away.
More (link: "replaces[ (?sweat, -sand)](help|")[(track: 'sandMovement', 'play')(set: $sweat to it + (random: 2,4))(if: $sand >2)[(set: $sweat to it -1, $sand to it -1)](else:)[(set: $sand to it -0.25)](replace: ?statusBars)[(display: "statusBars")](show: ?second)(hide:?first)] it immediately.
]<first|[\
You search for something solid.
A familiar current.
A familiar motion.
A familiar feeling inside your own body.
Nothing stays recognizable long enough to trust.
The sweat pouring from your body feels thick as mud. Sometimes you think you are drowning. Sometimes you think you are (link: "evaporating[ (continue story)](help|")[(hide:?second)(show: ?continue1)(unless: $storyController contains "partneredUp" or $storyController contains "friends")[(show: ?continueB)]].](second|\
[\
[You look toward nearby swimmers for reassurance.
They still move through sand. You can see it gathering around their bodies in slow drifting trails.
(if: $storyController contains "partneredUp")[
Your partner(if: $partnerB's active is 2)[s] remain nearby.
You recognize the shapes of their movements, but the synchronization between your bodies keeps collapsing. Whenever you try to match their rhythm, your own body slips unevenly through the current.
More and more often, they simply tread nearby while (if: $storyController contains "friends")[watching](else:)[(link: "watching[ (continue story)](help|")[(show: ?continue1B)(hide: ?continue1A)]] you carefully, uncertain how to help.
]\
(if: $storyController contains "friends")[
Your companion occasionally surfaces through the shifting currents nearby. Their gestures seem slower now. Concerned.
You (link: "struggle[ (continue story)](help|")[(show: ?continue1B)(hide: ?continue1A)] to focus on them for long before another wave of heat crashes through your body and scatters your attention again.
](unless: $storyController contains "friends")[
But around you there is only sweat.
]]<continue1A|\
[You no longer understand the world you spent your entire life learning how to survive.
Everything you once trusted feels like an error-filled map.
A spinning compass.
A language you suddenly (link: "cannot[ (?sweat, -sand)](help|")[(track: 'sandMovement', 'play')(set: $sweat to it + (random: 2,4))(if: $sand >2)[(set: $sweat to it -1, $sand to it -1)](else:)[(set: $sand to it -0.25)](replace: ?statusBars)[(display: "statusBars")](show: ?continue2)(hide: ?continue1)cannot] use despite knowing every gesture.
](continue1B|](continue1|\
[\
Your body begins producing more moisture than you thought possible.
Sweat pours down your chest.
Down your back.
Between your limbs.
From your eyes.
Into the sands below.
The currents around you thicken where the moisture leaves your body. You struggle to keep your balance within motions that once felt effortless.
You try to rest. The heat inside you refuses.
You try to move. Your muscles shake with exhaustion almost immediately.
You try to float. The sensation of wetness crawling constantly across your body makes stillness unbearable.
The sweat no longer feels separate from you.
It feels like your body is (link: "dissolving[ (?sweat, -sand)](help|")[{
(set: $sweat to it + (random: 2,5))
(if: $sand >2)[
(set: $sweat to it -1, $sand to it -1)
]
(else:)[
(set: $sand to it -0.25)]
(replace: ?statusBars)[(display: "statusBars")]
(show: ?continue3)
(if: _death is 1)[
(show: ?death)
(if: _deathType is "partnerB")[
(show: ?partner2death)
(if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The light blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
]
(else-if: _deathType is "partnerA")[
(show: ?partner1death)
(if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The dark blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
]
(else-if: _deathType is "friend")[
(show: ?friendDeath)
(if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The orange companion figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
]
]
(else:)[
(show: ?life)(show: ?pause)
](hide: ?continue2)
}dissolving].
](continue2|\
[\
[Time stops behaving normally.
Your thoughts scatter beneath waves of heat and exhaustion. At times you become convinced your body has finally stabilized, only for another violent rush of warmth to tear through you moments later.
The sands feel endless.
The sweat feels endless.
Even your (if: $storyController contains "partneredUp" or $storyController contains "friends")[breathing](else:)[(link: "breathing[ (continue story)](help|")[(hide: ?continue3A)(show: ?continue3B)]] feels unfamiliar now.
(if: $storyController contains "partneredUp" or $storyController contains "friends")[
[At some point, (if: $storyController contains "partneredUp" and $storyController contains "friends")[your companion and partner(if: $partnerB's active is 2)[s ]stop](else-if: $storyController contains "partneredUp")[your partner(if: $partnerB's active is 2)[s stop](else:)[ stops]](else:)[your companion stops] trying to synchronize with your movements.
Instead they remain nearby, treading patiently beside you while you struggle against sensations they cannot hold for you.
Their distance hurts.
Their (link: "presence[ (continue story)](help|")[(hide: ?continue3A)(show: ?continue3B)] hurts too.\
](life|\
[<!--death-->\
[\
In a daze, you still recognize when your one partner begins struggling to keep up with you and your other partner.
Eventually, they stop swimming and your partner catches them. They hold them near you, in a nearby current, until they eventually stiffen. You watch as their body dries, the once moist sand scattering free at the edges and returning to the wider current. Your partner scoops a still soft mound of sand and smears it into their chest. They scoop a second handful and reach out to you. You flail towards them, out of control, but desperate to not miss out on this moment. They half toss it towards you, the dry sand immediately moistening and melting into {
(if: $storyController contains "ignorance")[your body]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[your body\
(track: 'partnerBbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], [[*](italicized|and you are flooded with memories you spent together[*](italicized|]<italics|
].
Your partner releases them and as they drift back into the loose sands, they float for a short time before sinking under the rising tide.
]}\
](partner2death|\
[\
In a daze, you still recognize when your partner begins struggling to keep up with you.
Eventually, they stop swimming and reach out to you. You struggle to keep a hold on them, the moisture pouring from your hands. But they hold back until they eventually stiffen. You watch as their body dries, the once moist sand scattering free at the edges and returning to the wider current.
Where your hand rests, the sand remains wet, and you pull a chunk back into your chest and hold it until it dissolves into (if: $storyController contains "ignorance")[your body](else:)[(link: "your body[ (+vitality, +memory)](help|")[(track: 'partnerAbad', 'play')(set: $wonder to it +1, $vitality to it + 1)(replace: ?statusBars)[(display: "statusBars")], [[*](italicized|and you are flooded with memories you spent together[*](italicized|]<italics|].
They slip from your fingers, float for a short time and then sink into the rising tide.]\
](partner1death|\
[\
Your companion waves an urgent gesture, and you attempt to get close to them in the current. You see them struggling to stay above the sandline.
You offer them your arm and you both struggle to stay together until they stiffen and still. You watch as their body dries, the once wet sand scattering free at the edges and returning to the wider current. You watch as their body dries, the once moist sand scattering free at the edges and returning to the wider current.
Where their rigid body still clings to your arm, the sand remains wet, and you remove a handful and hold it until it dissolves into (if: $storyController contains "ignorance")[your body](else:)[(link: "your body[ (+vitality, +memory)](help|")[(track: 'friendBad', 'play')(set: $wonder to it +1, $vitality to it + 1)(replace: ?statusBars)[(display: "statusBars")], [[*](italicized|and you are flooded with memories you spent together[*](italicized|]<italics|].
They slip from your fingers, float for a short time and then sink into the rising tide.]\
](friendDeath|
You {
[
(link: "grieve[ ( -time, +vitality, -partner)](help|")[
grieve
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$vitality to it +0.25,
$partnerbIMG to ""
)
(track: 'playerBad', 'play')
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?continue3B)(hide: ?continue3A)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
(replace: ?imageDesc)[The light blue figure disappears.]
]
](partner2death|
[
(link: "grieve[ ( -time, +vitality, -partner))](help|")[
grieve
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$vitality to it +0.25,
$partneraIMG to ""
)
(track: 'playerBad', 'play')
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?continue3B)(hide: ?continue3A)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
(replace: ?imageDesc)[The dark blue partner figure disappears.]
]
](partner1death|
[
(link: "grieve[ ( -time, +vitality, -friend)](help|")[
grieve
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$vitality to it +0.25,
$friendIMG to ""
)
(track: 'playerBad', 'play')
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?continue3B)(hide: ?continue3A)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
(replace: ?imageDesc)[The orange companion figure disappears.]
]
](friendDeath|
} and keep sweating.
](death|\
]]<continue3A|\
[The sweat continues pouring from your body until eventually the sands beneath you begin behaving strangely beneath the current. The wet sand clings together in heavy, shifting masses around your body instead of breaking apart beneath the flow. Heat pours from you in waves strong enough that the surrounding current begins to sting against your skin.
Then the sands beneath you (link: "convulse[ (?sweat, -sand)](help|.")[{
(track: 'playerMenopause', 'play')
(set: $sweat to it + (random: 2,4))
(if: $sand >2)[(set: $sweat to it -1, $sand to it -1)]
(else:)[(set: $sand to it -0.25)]
(replace: ?statusBars)[(display: "statusBars")]
(show: ?continue4)(hide: ?continue3)
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
$environmentIMG
</div>]
(replace: ?imageDesc)[An angular orange crystal formation rises from the sand.]
}convulse.]
](continue3B|](continue3|\
[\
A deep, grinding movement shudders up through the current. Dampened sand compacts and folds upon itself repeatedly below the surface. Eventually, something harder rises and forces itself up breaking the sandline.
You jerk back instinctively as a dark mass bursts through the shifting sands beside you.
Not sandstone. Not one of the hardened islands.
Something smoother.
The surface glistens beneath the dim reflected light. Sections of it remain clouded with trapped sand while other planes appear strangely translucent. Sharp angles catch the faint light escaping the falling sands high above and scatter it through the surrounding current.
The formation continues rising slowly beneath the endless pressure of heat and motion until a broad shelf emerges above the sandline. Steam-like moisture curls from its (link: "surface[ (continue story)](help|")[(show: ?continue5)(hide: ?continue4)].](continue4|\
[Carefully, you press one hand against the strange material. It is cool, smooth and harder than sandstone. It's colour is a darker, orange tinged, shade of sand and stands out in contrast with the surrounding golden strand.
Your distorted reflection stares back faintly through the (if: $storyController contains "ignorance")[translucent surface](else:)[(link: "translucent surface[ ((+vitality, +memory)](help|")[(track: 'playerExplore', 'play')(set: $wonder to it +1, $vitality to it + 1)(replace: ?statusBars)[(display: "statusBars")](show: ?wonderGlass)]] beneath your palm. [//For a moment, you are reminded of the curved boundary walls surrounding the sands.
The thought settles strangely inside you.//](wonderGlass|
Exhaustion finally overtakes uncertainty. You pull part of your body up onto the smooth crystalline shelf while the rest remains suspended within the shifting sands below.
For the first time in what feels like forever, you stop moving.
The currents continue endlessly around you while the [strange reflective sand]<glass|(if: $storyController contains "ignorance")[](else:)[(link: "- so similar to the boundary's edge[ (+perception)](help|")[(track: 'playerExplore', 'play')(set: $wonder to it +1, $vitality to it + 1, $storyController to it + (a: "glass"))(replace: ?statusBars)[(display: "statusBars")](replace: ?glass)[glass]]] <!--[[A steady rock]]-->(link: "formation[ (?sweat, -sand)](help|")[(track: 'playerExplore', 'stop')(track: 'playerMenopause', 'play')(set: $sweat to it + (random: 2,4))(if: $sand >2)[(set: $sweat to it -1, $sand to it -1)](else:)[(set: $sand to it -0.25)](go-to: "A steady rock")] holds steady beneath your weight.](continue5|\
]<contentBox|\
</div>\
</div>\
</div>{(display: "rock-images")
<!--calculate Death priority: partnerB, partnerA, friend-->
(set: _death to 0, _deathType to "")
(if: $storyController contains "partneredUp" and $partnerB's active is 2 and $partnerB's vitality <1)[
(set: _death to 1, _deathType to "partnerB")
]
(else-if: $storyController contains "partneredUp" and $partnerA's active is 2 and $partnerA's vitality <1)[
(set: _death to 1, _deathType to "partnerA")
]
(else-if: $storyController contains "friends" and $friend's vitality <1)[
(set: _death to 1, _deathType to "friend")
]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[\
The crystalline formation holds steady beneath your weight. For a long while, you simply remain there half submerged within the lower sands while sweat continues pouring from your body in uneven waves.
It slides across the smooth (if: $storyController contains "glass")[glasslike] surface beneath you in shimmering streams before cooling, thickening, and breaking apart into loose sand that slips back into the surrounding current.
You watch this happen again and again.
The process feels strangely familiar now.
Not comfortable. Not fully understandable. But (link: "familiar[ (?sweat, -sand, +vitality)](help|")[(track: 'sandMovement', 'play')(set: $vitality to it +1, $sweat to it + (random: 1,3))(if: $sand >2)[(set: $sweat to it -1, $sand to it -1)](else:)[(set: $sand to it -0.25)](replace: ?statusBars)[(display: "statusBars")](show: ?continue)(hide: ?start)].
]<start|[\
[At last, the violent heat inside your body begins to cool. Not disappearing, but becoming less unpredictable. You learn to recognize the sensation before it arrives. The rising pressure. The sudden warmth. The crawling discomfort beneath your skin.
You no longer fight every wave as though it is an emergency. Instead you shift your body carefully upon the smooth crystalline shelf and wait for it to pass.
Around you, the lower sands continue their endless (if: $storyController contains "partneredUp" or "friends")[(link: "motion[ (continue story)](help|")[(hide: ?solo)(show: ?pals)]](else:)[(link: "motion")[(hide: ?continue)(show: ?continue1)]].]<solo|\
[(if: $storyController contains "partneredUp")[\
Your partner(if: $partnerB's active is 2)[s] rest(if: $partnerB is 0)[s] nearby, taking a break on one of the other flat shelves nearby.
For the first time since descending the sandfall, you are able to truly look at them again. They have changed too.
Their (if: $partnerB's active is 2)[bodies are](else:)[body is] roughened in places where the currents have worn them down. New textures cling to them. Small hardened ridges. Smooth hollows. Missing accumulations of sand you remember touching long ago.
Even their (if: $storyController contains "friends")[movements](else:)[(link: "movements[ (continue story)](help|")[(hide: ?continue)(show: ?continue1)]] feel different now.
]\
(if: $storyController contains "friends")[\
Your companion occasionally drifts close to the crystalline shelf before floating away again with the slower currents. Their body (if: $storyController contains "partneredUp")[also] carries signs of time and pressure now.
Worn surfaces.
Altered rhythms.
Familiar (link: "gestures[ (continue story)](help|")[(hide: ?continue)(show: ?continue1)] are performed more carefully than before.
]](pals|](continue|\
[When you finally look down at yourself, you barely recognize the body resting against the translucent stone. The sand that once gathered across your form has changed shape entirely. Sweat has carved channels through you. Heat has hardened some surfaces while eroding others. Within certain places beneath your skin, tiny reflective flecks now catch the dim surrounding light.(if: $storyController contains "glass")[
(link: "Glass[ (+memory)](help|")[(track: 'playerExplore', 'play')(set: $wonder to it +1)Glass. It reminds you of the curved boundary walls surrounding the sands.
Not so separate and strange after all. Just another form the sands can take under enough pressure, enough heat, enough movement.
There is strange comfort in this discovery].
]
For a (link: "long moment[ (?sweat, +vitality, -sand)](help|")[{
(track: 'playerExplore', 'stop')(track: 'playerExplore', 'play')
(set: $vitality to it +3, $sweat to it + (random: 1,3))
(if: $sand >2)[
(set: $sweat to it -1, $sand to it -1)
]
(else:)[
(set: $sand to it -0.25)
]
(replace: ?statusBars)[(display: "statusBars")]
(hide: ?continue1)(show: ?continue2)
(if: _death is 1)[
(show: ?death)
(if: _deathType is "partnerB")[
(show: ?partner2death)
(if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The light blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
]
(else-if: _deathType is "partnerA")[
(show: ?partner1death)
(if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The dark blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
(else-if: _deathType is "friend")[
(show: ?friendDeath)
(if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The orange companion figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
]
(else:)[
(show: ?life)
]}long moment], you trace one of the translucent fragments embedded within your body.
](continue1|\
[[\
The longer you rest upon the crystalline shelf, the more your body begins finding equilibrium again. The sweating slows.
The heat no longer arrives in violent, impossible surges, but in smaller, drifting waves that move through you and then pass onward. You reflect that you survived something you believed would destroy you completely.
Not unchanged. Never unchanged. But still present. Still (link: "moving[ (continue story)](help|")[(hide: ?continue2)(show: ?continue3)].
](life|\
[<!--death-->\
[\
Eventually, you notice one of your partner leaning heavily against the side of your crystal perch. They reach out to take your hand and beacon your other partner to join you. You sit with them, clutching their hand until you feel them stiffen. You watch as their body dries, sand skittering free and pulled off into the current. You and your partner quickly scoop a still soft mount from their disintegrating form and lift up to your chests, patting their sand into your {
(if: $storyController contains "ignorance")[own]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(track: 'partnerBbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You release their hand before it disolves and their body drifts back into the loose sands where their remains float for a short time before sinking under the rising tide.
]}\
](partner2death|\
[\
Your partner swims up and rests their head against your lower body. You motion for them to join you on your perch, but they shake their head wearily. You touch their head and after a still time together, you feel them stiffen. Sand begins to crumble under your hand as their body dries, sand skittering free and pulled off into the current. You quickly scoop a still soft mount from their disintegrating form and lift up to your chest, patting their sand into your {
(if: $storyController contains "ignorance")[own]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(track: 'partnerAbad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You release their hand before it disolves and their body drifts back into the loose sands where their remains float for a short time before sinking under the rising tide.
]}\
](partner1death|\
[\
Your companion swims up and with effort, they pull themselves up onto your perch. The two of you sit resting shoulder to shoulder and watch the sands flow by. You feel when they stiffen, and their sand begins to blow and scatter onto your body, your perch, and down into the current below. Before they are gone, you reach over, and scoop a still soft mount from their disintegrating form and lift up to your chest, patting their sand into your {
(if: $storyController contains "ignorance")[own]
(else:)[
(link: "your body[ (+vitality, +memory)](help|")[own\
(track: 'friendBad', 'play')
(set: $wonder to it +1, $vitality to it + 1)
(replace: ?statusBars)[
(display: "statusBars")
], //and you are flooded with memories you spent together//
].
You watch their remains shift forward and tumble down into the loose sands where they float for a short time before sinking under the rising tide.
]}\
](friendDeath|
You {
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
(track: 'playerBad', 'play')
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$time to it -0.25,
$vitality to it +0.25,
$playerbIMG to ""
)
(replace: ?imageDesc)[The light blue partner figure disappears.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(hide: ?continue2)(show: ?continue3)
]
](partner2death|
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
(track: 'playerBad', 'play')
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$time to it -0.25,
$vitality to it +0.25,
$playeraIMG to ""
)
(replace: ?imageDesc)[The dark blue partner figure disappears.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
</div>]
(hide: ?continue2)(show: ?continue3)
]
](partner1death|
[
(link: "grieve[ (-time, +vitality, -friend)](help|")[
(track: 'playerBad', 'play')
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$time to it -0.25,
$vitality to it +0.25,
$friendIMG to ""
)
(replace: ?imageDesc)[The orange companion figure disappears.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(hide: ?continue2)(show: ?continue3)
]
](friendDeath|
} and keep living.
](death|\
](continue2|\
[(if: $vitality <4)[\
Your body feels fragile now. Even resting requires effort. The lower currents beyond the rock seem wider and steeper than they once did.
You understand, perhaps for the first time, that your remaining movements through the sands may be limited. For the first time in a long time, you feel cold.
You lower yourself carefully back down into the sand. The sands feel different against your altered body now.
Not softer, and definitely not easier. But not wrong. You <!--[[The final lap]]-->(link: "swim[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerGood', 'play')(track: 'step', 'play')(if: $vitality is 1)[(go-to: "The final lap")](else:)[(display: "sweat")(go-to: "Swim the sloping sands")]].](else:)[You feel tired, but not finished.
There are still currents you have not followed.
Still textures beneath the sands you do not understand.
Still bodies moving beside you through the dim reflected light.
(if: $storyController does not contain "ignorance")[
You look once more toward the dark curved boundary beyond the sands. Light continues catching there in faint distorted reflections.
The same material.
The same (if: $childTtl >0)[(link: "transformation[ (+memory)](help|")[(track: 'playerExplore', 'play')(set: $wonder to it +1)(show: ?wonderKid)transformation].
You wonder suddenly how many other forms the sands are capable of becoming.[ You think of your (if: $childTtl is 1)[child](else:)[children], and the marvel that is creation and caregiving.](wonderKid|](else:)[transformation]
]
At last, you slide back into the currents.
The sands feel different against your altered body now.
Not softer or easier. But not wrong. You <!--[[Swim the sloping sands]]-->(link: "swim[ (-time, ?sweat, -vitality, -sand)](help|")[(track: 'playerGood', 'play')(track: 'step', 'play')(display: "sweat")(go-to: "Swim the sloping sands")].]
](continue3|\
]<contentBox|\
</div>\
</div>\
</div>{(display: "final-images")
(if: $sweat >5)[(set: $sweat to 5)]}
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
<div class="centered">(bg:#fff)+(color:#000)[ [( sand, pouring )]<audio|]</div>
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[(if: $time <1)[\
You lose track of how long you have been swimming the lower sands.
The currents no longer feel divided into moments. Only movement. Only continuation.
Your body grows slower with every passing drift through the rising tides until eventually you understand that you are no longer moving yourself forward in any meaningful way.
You are simply being (link: "carried[ (continue story)](help|")[(hide: ?start)(show: ?continue)].
]\
(else:)[\
Soon, you are too weak to swim. Your movements become smaller and smaller until eventually you stop trying to force direction.
You roll slowly onto your back and allow the currents to carry you. Occasionally you still make weak motions through the sands, enough to steady yourself or turn slightly within the tide, but mostly you drift wherever the lower currents decide to take you.
]\
]<start|\
[The (if: $storyController contains "glass")[glass] boundary brushes smoothly against your sand-dusted skin as the tides carry you along the outer edge of the lower plane.
Sometimes you catch your reflection on the curved surface beside you. The body staring back no longer resembles the one that first appeared in its reflection so long ago.
The shape has softened and worn smoothly in places. Crystalline flecks shimmer faintly within the collected sand of your body where heat and pressure changed you permanently.
You barely recognize yourself, and yet you do.
Sweat no longer pours endlessly from you now. The heat still exists, but more quietly. A (link: "familiar[ (continue story)](help|")[(hide: ?continue)(show: ?continue2)] discomfort instead of a violent storm.](continue|\
\
[Each movement requires enormous effort. More and more often, you fail to complete a stroke and simply allow the tides to drag your body forward against the cool smooth (if: $storyController contains "glass")[glass](else:)[boundary]. Sometimes the sands spray up over your face. You no longer wipe them away.
Sometimes the rising sands cradle your body so gently they feel almost soft.
Sometimes you cannot tell where the sands end and your body begins.
For long stretches, you stop trying to (link: "distinguish[ (continue story)](help|")[(hide: ?continue2)(show: ?continue3)] between them at all.](continue2|\
\
[(if: $wonder <1)[\
Beyond the (if: $storyController contains "glass")[glass](else:)[boundary] there is only darkness.
You (link: "drift[ (continue story)](help|")[(if: $storyController contains "partneredUp" or "friends")[(hide: ?continue3)(show: ?friendsLovers)](else:)[(hide: ?continue3)(show: ?end)]] beside it for a very long time.
]\
(else-if: $wonder <3)[\
Something catches your attention deep within the darkness beyond the (if: $storyController contains "glass")[glass](else:)[boundary].
Tiny points of light flicker briefly within the void.
Small glowing grains that appear and disappear almost immediately.
You cannot tell whether they are truly there or only reflections within your tired mind.
Still, you continue (link: "watching[ (continue story)](help|")[(if: $storyController contains "partneredUp" or "friends")[(hide: ?continue3)(show: ?friendsLovers)](else:)[(hide: ?continue3)(show: ?end)]] for them.
]\
(else:)[\
<img src="https://kdot.ca/images/FS-sweat-finale-wonder.png" alt="a hand against the glass through which is a sky full of glowing dots">
The darkness beyond the glass begins to shimmer.
Tiny burning points scatter across the endless void like glowing grains of sand drifting through unseen currents. They flicker in and out of existence too deliberately to be random.For a long while, you simply watch them.
Then something inside your body warms gently in response.
It feels almost like recognition. Or greeting.
Or (link: "farewell[ (continue story)](help|")[(if: $storyController contains "partneredUp" or "friends")[(hide: ?continue3)(show: ?friendsLovers)](else:)[(hide: ?continue3)(show: ?end)]].
You slowly lift one exhausted hand and wave toward the distant lights beyond the glass. The lights continue flickering softly within the darkness.
]](continue3|
[(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[\
Your partners continue swimming beside you for as long as they can.
Eventually your drifting becomes too slow even for the lower tides to carry easily.
You feel their hands against your arms and shoulders one final time before your body begins loosening into the surrounding sands.
You watch them each scoop sand from you and rub it into themselves, (link: "swimming[ (continue story)](help|")[(hide: ?continue3)(show: ?end)] together long after your own movements have stopped.
]\
(else:)[\
Your partner remains beside you. They occasionally steady your body when the tides roll you too sharply against the (if: $storyController contains "glass")[glass](else:)[boundary].
You watch them scoop sand from you and rub it into themselves. They rest their forehead against yours one final time before the current slowly (link: "separates[ (continue story)](help|")[(hide: ?continue3)(show: ?end)] your bodies.
]\
]\
(else-if: $storyController contains "friends")[\
Your companion stays near you as long as they are able.
Eventually your body grows too heavy for even the tides to move easily. They take a small piece of hard crystal from your body and place it into theirs. Then, your companion watches silently as the sands begin (link: "carrying[ (continue story)](help|")[(hide: ?continue3)(show: ?end)] pieces of you away.
]](friendsLovers|\
[You no longer fear the feeling.
The currents move through your body now instead of around it. Sand slips softly across your skin. Through your fingers. Across your closed eyes. Through your body.
You drift for a long while beside the (if: $storyController contains "glass")[glass](else:)[boundary] while the endless sands continue rising around you.
And then you no longer need to drift at all because you become <!--[[Flip the hourglass]]-->(link: "sand[ (++++sand)](help|")[(track: 'sandMovement', 'play')(track: 'sandPour', 'fadeout', 3){
(set: $sand to 10)
(set: $time to 0)
(set: $vitality to 0)
(set: $sweat to 0)
(go-to: "Flip the hourglass")}].](end|
]<contentBox|\
</div>\
</div>\
</div>{
<!--Set images-->
(display: "island-images")
(if: $storyController contains "passedOut")[
(set:
$friendIMG to ""
$partneraIMG to ""
$partnerbIMG to ""
)(set: $storyController to it - (a: "passedOut"))
]
<!--Choose passage-->
(set: _passagechoice to "")(set: $sweat to it -4)(if: $sweat is <1)[(set: $sweat to 0)]
(if: $storyController contains "passedOut")[(set: $vitality to it +5, $sand to it -2)]
(else:)[
<!--Set passage chooser-->
(set: _chooser to (a: "intentional", "fear", "hunger", "crystal"))
(if: $storyController contains "period" and $storyController does not contain "selfTrauma")[(set: _chooser to it + (a: "childIsland"))]
(if: $storyController contains "friends")[(set: _chooser to it - (a: "fear", "hunger", "crystal") + (a: "companionCreatedRest", "companionPartnerRestX"))]
(if: $storyController contains "partneredUp")[(set: _chooser to it - (a: "fear", "hunger", "crystal") + (a: "partnerCreatedRest", "partnerRest2", "companionPartnerRestX"))]
(if: $storyController does not contain "sandDecay")[(set: _chooser to it + (a: "relief"))]
(set: _passagechoice to (either: ..._chooser))
(if:_passagechoice is "relief")[(set: $vitality to it +4, $sand to it -1)(set: $friendIMG to "", $partneraIMG to "", $partnerbIMG to "")]
(if:_passagechoice is "intentional")[(set: $vitality to it +5, $sand to it -2)(if: $partnerB's active is 2)[(set: $partnerA's vitality to it +3, $partnerB's vitality to it +3)](else-if: $partnerA's active is 2)[(set: $partnerA's vitality to it +3)]]
(if:_passagechoice is "crystal")[(set: $vitality to it +4, $sand to it -1)(set: $friendIMG to "", $partneraIMG to "", $partnerbIMG to "")]
(if:_passagechoice is "fear")[(set: $vitality to it +5, $sand to it -2)(set: $friendIMG to "", $partneraIMG to "", $partnerbIMG to "")]
(if:_passagechoice is "hunger")[(set: $vitality to it +4, $sand to it -4)(set: $friendIMG to "", $partneraIMG to "", $partnerbIMG to "")]
(if:_passagechoice is "companionCreatedRest")[(set: $vitality to it +4, $sand to it -1)(set: $friend's vitality to it +2)(set: $partneraIMG to "", $partnerbIMG to "")]
(if:_passagechoice is "partnerCreatedRest")[(set: $vitality to it +5, $sand to it -2)(if: $partnerB's active is 2)[(set: $partnerA's vitality to it +3, $partnerB's vitality to it +3)](else-if: $partnerA's active is 2)[(set: $partnerA's vitality to it +3)](set: $friendIMG to "")]
(if:_passagechoice is "partnerRest2")[(set: $vitality to it +5, $sand to it -3)(if: $partnerB's active is 2)[(set: $partnerA's vitality to it +2, $partnerB's vitality to it +2)](else-if: $partnerA's active is 2)[(set: $partnerA's vitality to it +2)](set: $friendIMG to "")]
(if:_passagechoice is "companionPartnerRestX")[(set: $vitality to it +5, $sand to it -2)(if: $partnerB's active is 2)[(set: $partnerA's vitality to it +3, $partnerB's vitality to it +3)(set: $friendIMG to "")](else-if: $partnerA's active is 2)[(set: $partnerA's vitality to it +3)(set: $friendIMG to "", $partnerbIMG to "")](if: $storyController contains "friends")[(set: $friend's vitality to it +3)(set: $partneraIMG to "", $partnerbIMG to "")]]
(if:_passagechoice is "childIsland")[(set: $vitality to it +5, $sand to it -2)(if: $partnerB's active is 2)[(set: $partnerA's vitality to it +3, $partnerB's vitality to it +3)](else-if: $partnerA's active is 2)[(set: $partnerA's vitality to it +3)]]
]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[You find yourself resting against a hard, lumpy surface. You are dazed and unsure how you came to be here.
You shake yourself and feel a unsettling sheet of dry sand shiver down your body and back into the moving current. Some of it skitters across the surface of the dry sandstone to which you cling. Where your body touches the stone, you feel a tingling and unnerving senstation, and you push youself back. However, you're so exhausted, that this just causes you to dip below the sandline and swallow a mouthful of sand. You return to the small island, only gripping the stone enough that you remain afloat. You hold on and let the sand pass over your body until you feel numb and unsure what is sand and what is you.
You still feel queasy when you decide you are rested enough to return to the (link: "sands[ (-time, +sweat, -vitality, +sand)](help|")[(display: "sweat")(go-to: "Swim the sand")], but are mindful that you are likely to need another break soon before you are back to full stength.](passedOut|\
<!--relief and unease-->\
[Something firm brushes against your lower body beneath the sandline. Instinctively, you pull yourself up onto it.
For the first time in a long while, you stop moving.
The current continues flowing around your submerged lower body while your upper form rests against the hardened mass. Relief spreads through your limbs.
At first, you are too [[*](italicized|relieved[*](italicized|]<italics| to examine the structure supporting your weight.
Only after your breathing steadies do you begin tracing the hardened shapes rising above the sandline. Curved forms. Rigid extensions. A bend that resembles a joint.
You freeze.
When you recognize the {(link: "shape...")[
(unless: $storyController contains "sandDecay")[(set: $storyController to it + (a: "sandDecay"))]\
[shape of digits similar in size to your own (link: "fingers[ ( +perception )](help|")[(set: $towardsWisdom to it +1)(if: $towardsWisdom is >=4)[(hide: ?ignorance)(show: ?wisdom)](else:)[(show: ?aware)]fingers] protruding from the mass, you push yourself back into the current.](ignorance|\
[shape of several remaining digits protruding from the mass, you shove yourself violently back into the current.]<wisdom|\
(if: $storyController contains "ignorance")[(hide: ?wisdom)(show: ?ignorance)
](show: ?depart)\
]}
[Part of the structure crumbles beneath your <!--[[Swim the sand]]-->(link: "movement[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] and disappears into the drift. [You tread water for a time, staring at your own fingers.](aware|](depart|](relief|\
<!--restoration-->\
[You (if: $storyController contains "friends" and $storyController contains "partneredUp")[your partner, and your companion](else-if: $storyController contains "partneredUp")[and your partner](else-if: $storyController contains "friends")[and your companion] search for slower currents and eventually find a clump of unmoving sand rising slightly above the surface.
You drape your upper body across it and allow the current to move around you instead of against you. (if: $storyController contains "friends" and $storyController contains "partneredUp")[The others join you.](else-if: $storyController contains "friends")[Your companion floats gently along, one hand lightly holding the clump.](else-if: $storyController contains "partneredUp")[Your partner lays their head next to yours.]
You still work occasionally to keep from drifting away, but the effort is small compared to the relief of pausing your endless movement for a time. However, over time your presence is enough to disrupt whatever held the sandy island together, and as it crumbles, you(if: $storyController contains "friends" or $storyController contains "partneredUp")[ let yourselves](else:)[ let yourself] flow along the same <!--[[Swim the sand]]-->(link: "current[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].](intentional|\
<!--dissolution and euphoria-->\
[You find a clump of unmoving sand rising slightly above the surface. You rest your weight fully against the hardened mass and allow the current to move around your submerged body.
After some time, you notice something strange.
The constant movement beneath the sandline has begun pulling loose portions of accumulated sand away from your body.
You feel lighter. Less burdened.
[The sensation is at first deeply relieving, and then, as your limbs become more agile, the feeling begins to unsettle you.
You push yourself away from the island abruptly.
Part of the structure collapses where your weight had rested moments earlier, dissolving back into the drifting sand as the <!--[[Swim the sand]]-->(link: "current[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] carries you onward.](fear|[You remain still and allow the current to continue stripping weight from your body.
The sensation becomes intoxicating.
You dig your fingers into the hardened surface and laugh as more of the accumulated mass pulls free beneath the sandline.
You feel strangely light.
It is only when you begin coughing sand that you realize you have stopped actively moving altogether, sinking below the sand line. You shake off the haze and pump your lower body with some effort, <!--[[Swim the sand]]-->(link: "moving away[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] in a clumsy line.](hunger|
](excess|\
<!--unsettling relief-->\
[You have passed the hardened formation a few times before.
Something about it has always unsettled you.
At the same time, it is strangely beautiful.
The dried mass curls upward in delicate ribbons and arcs, as though the sand itself had briefly attempted to leap free from the current before hardening in place.
Sometimes you drift beside it simply to follow the shapes with your eyes.
Today, you reach outward and rest against one of the extending forms.
Relief comes quickly, but the unease never leaves.
When your strength returns, you release your hold and allow the <!--[[Swim the sand]]-->(link: "current[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] to carry you onward without looking back.](crystal|\
<!--intimacy and risk-->\
[You and your companion swim together for a long while.
Eventually, you begin falling behind. They slow their movements to match yours, but even that becomes difficult. You gesture for them to continue without you.
They refuse.
After disappearing briefly into the currents, your companion returns pushing a hardened clump of sand ahead of them.
You [(link: "cling[ (++vitality, -sand, -sweat, --time, -companion)](help|")[cling(track: 'sandMovement', 'play')(show: ?dissolution)(replace: ?continue)[continuing](replace: ?away)[away](set: $storyController to it - (a: "friends"), $vitality to it +4, $sand to it -2, $sweat to it -1)(set: _timeLoss to -0.5)(display: "timeLoss")(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
</div>]]]<cling| to it gratefully while [(link: "continuing[ (+vitality)](help|")[(track: 'sandMovement', 'play')(set: $vitality to it +1)(show: ?leave)(replace: ?cling)[cling]]]<continue| to move beneath the surface. [Before they turn to go a fetch more sand, you stop them, pushing yourself back and gesturing for them to follow you [(link: "away[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")]]<away| from your temporary rest.](leave|[
When they return with a second mass and press it against the first, more of your weight rises above the sandline.
For the first time in a very long while, your body is allowed to rest. Time loses shape. Your eyes drift unfocused across the moving currents.
You do not notice how low you have sunk until sand fills your mouth.
You thrash upward desperately and break above the surface coughing.
Your companion is gone.
The island has <!--[[Swim the sand]]-->(link: "dissolved[ (-time, -vitality, +sweat, +sand, -companion )](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "Swim the sand")] beneath you.](dissolution|](companionCreatedRest|\
<!--care versus dependancy-->\
[Your movements become uneven long before your partner’s do.
They circle back repeatedly, slowing their strokes to match your pace whenever the current begins separating you.
For a time, they disappear briefly beneath the sandline. When they rise again, they are pushing a hardened mass ahead of them through the drift. Together, you guide it toward a slower current near the barrier edge.
Your partner steadies the structure while you pull yourself partially above the sandline. Relief spreads through your body almost immediately.
The current flows beneath your submerged lower half while your upper body rests against the hardened formation. For a long while, neither of you moves much. You simply drift together beside the barrier while the current slides around the island and through your limbs. Occasionally, your partner brushes accumulated sand from your shoulders exposing the skin below.
Before long, they place a hand against your arm and gesture back toward the open currents.
Reluctantly, you push away from the tiny island (link: "together[ (-time, +sand, -vitality, +sweat)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].](partnerCreatedRest|\
[When your movements begin failing, your partner guides you toward a cluster of hardened masses drifting near the edge of the current.
Together, you pull yourselves partially above the sandline. The relief is overwhelming.
For the first time in a very long while, most of your body is still.
The two of you (link: "remain[ (+vitality, -sweat, -sand, -companion)](help|")[(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
</div>](show: ?tooLong)(set: $storyController to it - (a: "partneredUp"), $vitality to it +1, $sweat to it -1, $sand to it -2)] there while the <!--[[Swim the sand]]-->(link: "current[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")] pushes steadily against your submerged forms.[
Over time, the movement beneath the sandline begins stripping accumulated layers away from your bodies.
Loose sand peels free and disappears into the drift below.
Your partner rolls their neck and shoulders in ecstasy as more weight leaves them.
Soon you are both digging your fingers deeper into the unstable mass beneath you, encouraging the current to pull harder against your submerged forms.
You feel light.
Loose.
Unburdened.
The island slowly softens beneath your combined weight.
At some point, your partner closes their eyes.
You do not remember whether you closed yours first.
When you finally force your eyes open again, the island has partially collapsed beneath you. The current drags loose clumps steadily away into the surrounding sand.
Your partner is gone.
For a moment, you remain still, watching the place where their body had rested. Then the remaining structure shifts beneath your weight.
You tumble back into the <!--[[Swim the sand]]-->(link: "current[ (-time, -vitality, +sweat, +sand](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "Swim the sand")] before the island fully dissolves around you.](tooLong|](partnerRest2|\
[Your (if: $storyController contains "partneredUp")[partner](else:)[companion] find(unless: $partnerB's active is 2)[s] the island before you do.
They guide your exhausted body toward the hardened mass and hold it steady while you climb partially above the sandline.
The relief makes both of you quieter.
Time passes strangely there.
The current continues moving around you while neither of you moves very much.
Occasionally one of you gestures toward the open currents beyond, but neither leaves immediately.
The island grows softer beneath your weight.
Small sections collapse and drift away each time you adjust your bodies.
Your (if: $storyController contains "partneredUp")[partner](else:)[companion] notice(unless: $partnerB's active is 2)[s] the change and (if: $storyController contains "partneredUp")[presses their forehead briefly against yours](else:)[jostles you with their elbow, gently but insistently]. With visible reluctance, they slip back into the current.
After a long pause, you (link: "follow[ (-time, +sand, -vitality, +sweat)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].](companionPartnerRestX|\
[You pause to rest on a small, hardened chunk of sand. It's surface is smooth but for the shifting sand that is washed over it at your approach. Your fingers slip and struggle to grip the edge to let you rest, so you pull part of your body free and up out of the sand such that most of your body is exposed, facing out on the churning currents beyond.(if: $storyController contains "friends")[ Your companion looks at you with wide, round eyes.] You have never had such a vantage, and but for the extreme discomfort from the hard and sharp protrusions in the island below you, you marvel at the sight.
(if: $storyController contains "partneredUp")[\
You gesture to your partner(if: $storyController contains "friends")[ and companion], who turn(unless: $partnerB's active is 2)[s] to follow your digit.
(if: $partnerB's adopt is 1 or $partnerA's adopt is 1)[\
(if: $partnerB's active is 2)[One of your partners looks from you, to your other partner, and back to the small island. You take action from their aggitation and squint out at the horizon. Then you spy the object of their excitement; a small moving figure also out of the sand, and moving across the island's surface.
Your partner has already started to move away from your resting place, and your other partner helps you to slide back down into the](else:)[Your partner looks back and forth between you and the small island. You take action from their aggitation and squint out at the horizon. Then you spy the object of their excitement; a small moving figure also out of the sand, and moving across the island's surface.
Your partner has already started to move away from your resting place, and you hurry to slide back down into the]\
<!--[[Adoption]]-->(link: "current[ (-time, +sand, -vitality, +sweat, ?child)](help|")[\
(track: 'step', 'play')(track: 'playerExplore', 'play')(display: "sweat")(go-to: "Adoption")
] to follow. (if: $storyController contains "friends")[Your companion just shrugs and gives a wave as you all part ways.]\
]
(else:)[\
As you direct them, you notice movement on the small island. There is a [\
(link: "small figure[ ( +option)](help|")[\
(track: 'sandMovement', 'play')
(replace: ?alone)[alone.]
(show: ?getEm)
]\
]<rescue| there. They are also out and above the sand, but they are moving. And they are [\
(link: "alone")[\
(replace: ?rescue)[small figure]
alone. You turn back to your partner (if: $storyController contains "friends")[and companion, ]and shrug. The hard sand beneath you becomes too much and you slide back into the sand, restored and ready to again swim the
(link: "currents[ (-time, +sweat, -vitality, +sand)](help|")[\
(track: 'step', 'play')(track: 'playerGood', 'play')\
(display: "sweat")\
(go-to: "Swim the sand")\
]\
]\
]<alone|.
]
[You motion to your partner as you slide off the hard sand clump below you. You begin to <!--[[Adoption]]-->(link: "swim[ (-time, +sweat, -vitality, -sand, ?child)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Adoption") towards the mysterious figure.(if: $storyController contains "friends")[ Your friend shrugs non-commitally at you as you gesture for them to follow, and they wave casually over their shoulder as they swim in the opposite direction.]](getEm|]
]\
(else:)[\
And then you spot it. Another hard collection of sand, much like the one you are sitting on. It occassionally catches light and seems to signal it's presence to you. You try to figure out why, when you realize it is also topped by another\
(link: "moving figure[](help|")[moving figure {\
(if: $time <8)[\
(if: $storyController contains "siblings")[\
(show: ?sibling)
](else:)[\
(show: ?weird)
]
](else:)[
(show: ?adoptIsland)
]}], but this one, much smaller than you. (if: $storyController contains "friends")[You gesture at your companion to look, but they just shrug and continue to try and find a place to grab onto so they might rest while remaining in the sands.
]
[From this distance, you're reminded of your smaller siblings when they would ride upon your parent's back. A pang in your chest, both familiar and new. You watch for a time to see if there are any other figures, but you only see the one.
You (link: "wonder")[] at it while you (link: "rest")[rest. When at last you feel ready to swim again, you slide yourself free of the hard sandstone, and drift back into the swifter flowing currents(if: $storyController contains "friends")[ Your companion follows behind]].
](sibling|\
[(if: $storyController contains "friends")[You are distracted by your companion's attempt to find a place to perch, and ignore the the distanced distraction to help them. You both do a few rotations around the island's edge, but you give up before finding a solution, the hard sand beneath you begining the hurt. You slide back into the sand, and together you return to more (link: "active sands[ (-time, +sand, -vitality, +sweat)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].](else:)[You watch for a time, mesmerized by both the light and the form's movement, but after a while, the sandstone beneath you becomes uncomfortable. You slide back into the (link: "sand[ (-time, +sand, -vitality, +sweat)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")], and once again at the sandline, lose track of the strange island and its resident.]
](weird|\
[Something in your chest tightens, and you stare at the figure with a longing. It's loneliness seems to call to you and you begin imagining swimming over and (link: "examining[](help|")[(show: ?getEm2)] it up close. You shift on the stone to find a more comfortable position for dreaming, but it's distractingly (link: "hard[](help|")[hard. You shift and slide, and end up half off of the island, grazing some of the collected sand from your body. You grip the island trying to find purchase, but nothing seems to work. You push away from the island, distracted, sweaty and as tired as when you arrived. You return to the (link: "sands[ (-time, ++sweat, -vitality, -sand ) ](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $sweat to it +2)(display: "sweat")(go-to: "Swim the sand")], the figure in the distance no longer a curiosity or interest.].[You slide back down into the sand and begin swimming towards the (link: "island[ (-time, +sweat, -vitality, +sand, ?child)](help|")[(track: 'step', 'play')(track: 'playerExplore', 'play')(display: "sweat")(go-to: "Adoption")], working to keep it in your sights from back down level with the sandline.](getEm2|](adoptIsland|
]
](childIsland|\
]<contentBox|\
</div>\
</div>\
</div>
{=
(if: $storyController contains "passedOut")[(hide: ?status)(show: ?passedOut)]
(if:_passagechoice is "relief")[(show: ?relief)]
(if:_passagechoice is "intentional")[(show: ?intentional)]
(if:_passagechoice is "crystal")[(show: ?crystal)]
(if:_passagechoice is "fear")[(show: ?excess)(show: ?fear)]
(if:_passagechoice is "hunger")[(show: ?excess)(show: ?hunger)]
(if:_passagechoice is "companionCreatedRest")[(show: ?companionCreatedRest)]
(if:_passagechoice is "partnerCreatedRest")[(show: ?partnerCreatedRest)]
(if:_passagechoice is "partnerRest2")[(show: ?partnerRest2)]
(if:_passagechoice is "companionPartnerRestX")[(show: ?companionPartnerRestX)]
(if:_passagechoice is "childIsland")[(show: ?childIsland)]{
<!--sets the age you are currently at the start of this passage-->
(set: _timeLoss to 0)
(if: $time >9)[(set: $timePlain to "You are an Infant")]
(else-if: $time >8)[(set: $timePlain to "You are a Child")]
(else-if: $time >7)[(set: $timePlain to "You are a Teenager")]
(else-if: $time >6)[(set: $timePlain to "You are an Adult")]
(else-if: $time is >5)[(set: $timePlain to "You are a Middle-Aged Adult")]
(else-if: $time is >4)[(set: $timePlain to "You are experiencing Menopause")(if: $tier is 0)[(set: $storyController to it + (a: "perimenopause"))(unless: (passage:)'s name is "The swirling sand" or (passage:)'s name is "Down a waterfall of sand")[(go-to: "The swirling sand")]]]
(else-if: $time is >3)[(set: $timePlain to "You are an Older Adult")]
(else-if: $time is >2)[(set: $timePlain to "You are a Senior")]
(else-if: $time >1)[(set: $timePlain to "You are an Elder")]
(else-if: $time >=0)[(set: $timePlain to "You are sand")]
(if: $time <=1 and $tier is 1)[(unless: (passage:)'s name is "The final lap" or (passage:)'s name is "Flip the hourglass")[(go-to: "The final lap")]]
(else-if: (history:) does not contain "The sand becomes water")[(set: $vitality to it +0.5)]
(else-if: $vitality is <1 and $tier is 1)[(unless: (passage:)'s name is "The final lap" or (passage:)'s name is "Flip the hourglass")[(go-to: "The final lap")]]
(else-if: $time <=6 and $tier is 0)[(unless: (passage:)'s name is "The swirling sand" or (passage:)'s name is "Down a waterfall of sand")[(go-to: "The swirling sand")]]
(else-if: $vitality is <1 and $tier is 0)[(unless: (passage:)'s name is "Island")[(set: $storyController to it + (a: "passedOut"))(go-to: "Island")]]
(unless: $tier is 0 and $friend's vitality <2)[
(if: $storyController contains "friends")[
(set: $friend's vitality to it -1)
]
]
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[
(unless: $tier is 0 and $partnerB's vitality <2)[
(set: $partnerB's vitality to it -1)
]
]
(unless: $tier is 0 and $partnerA's vitality <2)[(set: $partnerA's vitality to it -1)]
]
(unless: (passage:)'s tags contains "baby")[<!--You are ignorant or without memory-->
(if: $tier is 0 or (history:) does not contain "The sand becomes water")[<!-- upper hourglass: sand sticks / accumulates -->
(if: $sand >=0 and <=4.99)[(set: $sandProse to "In places, loose sand clings to you. (if: $sweat >2)[It becomes a cakey clump when it mixes with your sweat.]")]
<!--You have lived and remember it-->
(else-if: $sand >=5 and <=6.99)[(set: $sandProse to "You are coated in a layer of sand. It collects and covers you such that you sometimes struggle to know where you are relative to the sand that surrounds you.")]
<!--You are burdened with memory and experience-->
(else-if: $sand >= 7)[(set: $sandProse to "You are burdened by a heavy coating of sand that clings to you and impedes your movements.", $vitality to it -0.25)]
(if: $sand >10)[(set: $sand to 10, $sandProse to "Your are caked in sand, so much so that your limbs struggle to move. You are weighted down, and each action causes chunks flying free.", $vitality to it -.5)]]
]
(else:)[
(if: $time <=6)[
(if: $sand >=7)[
(set: $sandProse to "Some sand still clings to you, but unevenly now. Large patches have washed smooth, revealing hard glassy flecks beneath the surface of your body.")
]
(else-if: $sand >=4)[
(set: $sandProse to "Sand gathers only in sheltered places now. Most of your body has become too smooth for it to cling the way it once did.")
]
(else:)[
(set: $sandProse to "Very little loose sand remains on you. Your surface feels smoother now, altered by heat, sweat, and pressure.")
]
]
]
(if: $timePlain is "You are experiencing Menopause")[(append: $sandProse)[
Sometimes, large chunks fall free and you forget what you were doing. It is disorienting and makes you feel sick.](set: $sand to it - (random: 0, 1))]
(if: $timePlain is "You are an Older Adult")[(append: $sandProse)[
Sometimes, large chunks fall free and you forget what you were doing. It is frustrating but it rarely slows you down.](set: $sand to it - (random: 0, 1))]
(if: $timePlain is "You are a Senior")[(append: $sandProse)[
Sometimes, large chunks fall free. This happens fairly often.](set: $sand to it - (random: 0, 1))]
(if: $timePlain is "You are an Elder")[(append: $sandProse)[
Sometimes, large chunks fall free. Sometimes you notice it happening.](set: $sand to it - (random: 0, 3))]
<!-- vitality prose-->
(if: $vitality >=10)[(set: $vitality to 10, $vitalityProse to "You move through the sand with vigour and effortless strength, your movements fluid and powerful.", _timeLoss to 0.2)(display: "timeLoss")]
(else-if: $vitality >=9)[(set: $vitalityProse to "You move through the sand with minimal effort, in easy strokes and gentle sweeps.", _timeLoss to 0.2)(display: "timeLoss")]
(else-if: $vitality >=8)[(set: $vitalityProse to "You pass through the sand with little resistance, though it still requires some light effort to move forward.", _timeLoss to 0.2)(display: "timeLoss")]
(else-if: $vitality >=7)[(set: $vitalityProse to "You work to move through the sand.", _timeLoss to 0.2)(display: "timeLoss")]
(else-if: $vitality >=6)[(set: $vitalityProse to "You move through the sand with steady, focused effort.", _timeLoss to 0.3)(display: "timeLoss")]
(else-if: $vitality >= 5)[(set: $vitalityProse to "You work hard to move through the sand, and the effort is taxing.", _timeLoss to 0.3)(display: "timeLoss")]
(else-if: $vitality >= 4)[(set: $vitalityProse to "You need a break. It takes effort to direct your path through the sand.", _timeLoss to 0.4)(display: "timeLoss")]
(else-if: $vitality >= 3)[(set: $vitalityProse to "You need to rest. It's tiring to move ahead through the sand.", $_timeLoss to 0.4)(display: "timeLoss")]
(else-if: $vitality is 2)[(set: $vitalityProse to "You are in urgent need of rest. You struggle to keep your chin above the sand.", $_timeLoss to 0.5)(display: "timeLoss")]
(else:)[(set: $vitalityProse to "You are pulled by the sand’s current as you desperately tread to keep your breathing above the sandline.", _timeLoss to 0.6)(display: "timeLoss")]
}{<!--This does not move time ahead. Nor does this passage happen automatically - it needs to be called - usually through an action. This calculates your strength/vitality to do a task, and how much sweat you generate (how hard you work and energy you loose), the passage of time to toil, and the experience you generate through these actions. Some additional experience/sand collection might be additionally colllected in traumatic or major events-->
<!-- Upper hourglass exertion: sweat creates sand/experience -->
<!-- Base values -->
(set: _timeLoss to 0.2)
(set: _sweatGain to 1)
(set: _vitalityLoss to 1)
(set: _sandGain to 0.5)
<!-- Slow early life -->
(if: (passage:)'s tags contains "baby")[
(set: _timeLoss to 0.02, _sandGain to 0.125, _sweatGain to 0.5)
]
(else-if: $time >=9)[
(set: _timeLoss to 0.05, _sandGain to 0.25, _sweatGain to 0.5)
]
(else-if: $time >=8)[
(set: _timeLoss to 0.1, _sandGain to 0.5)
]
<!-- Vitality affects exertion and time -->
(if: $vitality >=8)[
(set: _timeLoss to it -0.04, _sweatGain to 1, _vitalityLoss to 1, _sandGain to it +0.25)
]
(else-if: $vitality <=3)[
(set: _timeLoss to it +0.08, _sweatGain to 2, _vitalityLoss to 1, _sandGain to it -0.5)
]
(else-if: $vitality <=5)[
(set: _timeLoss to it +0.04, _sweatGain to 3, _vitalityLoss to 2, _sandGain to it +0.25)
]
<!-- Sweat helps sand stick -->
(if: $sweat >=7)[
(set: _sandGain to it +0.5)
]
(else-if: $sweat >=4)[
(set: _sandGain to it +0.25)
]
<!-- Sand burden slows time -->
(if: $sand >=9)[
(set: _timeLoss to it +0.1)
]
(else-if: $sand >=7)[
(set: _timeLoss to it +0.05)
]
(else-if: $sand <=3)[
(set: _timeLoss to it -0.03)
]
<!-- Exhausted bodies shed more than they gather -->
(if: $vitality <=2)[
(set: _sandGain to _sandGain -0.75)
]
<!-- Parasite modifier -->
(if: $storyController contains "parasite")[
(set: _timeLoss to it +0.05, _vitalityLoss to it +0.5)
]
<!-- Clamp values -->
(if: _timeLoss <0.02)[(set: _timeLoss to 0.02)]
(if: _timeLoss >0.45)[(set: _timeLoss to 0.45)]
(if: _sandGain < -1)[(set: _sandGain to -1)]
(if: _sandGain >1.5)[(set: _sandGain to 1.5)]
<!-- Apply -->
(set:
$sweat to it + _sweatGain,
$vitality to it - _vitalityLoss,
$sand to it + _sandGain
)(display: "timeLoss")
<!-- Keep ranges stable -->
(if: $sand >10)[(set: $sand to 10)]
(if: $sand <0)[(set: $sand to 0)]
(if: $sweat <0)[(set: $sweat to 0)]
(if: $sweat >=7)[(set: $sweat to it - (random: 0,3))]
(if: $time >=10)[(if: $vitality >10)[(set: $vitality to 10)]]
(else-if: $time >=9)[(if: $vitality >10)[(set: $vitality to 10)]]
(else-if: $time >=8)[(if: $vitality >9)[(set: $vitality to 9)]]
(else-if: $time >=7)[(if: $vitality >8)[(set: $vitality to 8)]]
(else-if: $time >=6)[(if: $vitality >7)[(set: $vitality to 7)]]
(else-if: $time >=5)[(if: $vitality >5)[(set: $vitality to 5)]]
(else-if: $time >=4)[(if: $vitality >6)[(set: $vitality to 6)]]
(else-if: $time >=3)[(if: $vitality >5)[(set: $vitality to 5)]]
(else-if: $time >=2)[(if: $vitality >4)[(set: $vitality to 4)]]
(else:)[(set: $vitality to 0)]}{(set: _count to 0)(if: $storyController contains "ignorance")[(set: $vitality to it -1)]
(set: $parentIMG to "")
(set: $siblingIMG to "")
(if: $time >=9)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T06-start-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is mostly full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T06-start-player-edge.png" alt="a figure near the edge of the container" height="300" width="300">')
]
(else:)[
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-edge-player.png" alt="a figure near the edge of the container" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container midway full" height="300" width="300">')
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-edge-player.png" alt="a figure near the edge of the container" height="300" width="300">')
]]
(set: $imgDesc's action to "The player figure is near the outer edge of the upper bowl.")
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[You follow the current toward the edge of the drifting sand.
The flow here is gentle. You do not need to work as hard to keep your mouth above the sandline. The current carries you in long, slow arcs.
Ahead, the sand ends.
Beyond it is (link: "darkness[ (+sand, +vitality)](help|.")[\
(track: 'step', 'play')(set: $sand to it + 0.125, $vitality to it +1)(replace: ?statusBars)[(display: "statusBars")]darkness.
You reach outward and feel resistance beneath your hands. The surface is smooth and cold through the sand coating your skin.
You slide alongside it for a long time. The darkness beyond does not move or change. You stare into it until your head begins to ache.
When you lower your gaze, you notice movement within the dark surface itself.
A (link: "figure[ (+sand)](help|")[(track: 'sandMovement', 'play')\
(set: $sand to it + 0.125)(replace: ?statusBars)[(display: "statusBars")](show: ?story)figure] moves there.[
You raise one arm. The figure does the same.
You turn your head sharply. The figure mirrors you.
You realize the sand-dusted figure is you.
You watch yourself drift beside the barrier while currents move silently beneath you. Your reflection unsettles you, but you continue returning your gaze.
Eventually, stronger currents farther from the edge attract your attention once more.
You leave the barrier <!--[[Swim the sand]]-->(link: "behind[ (-time, -vitality, +sand, +sweat)](help|")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(go-to: "Swim the sand")].](story|]\
]<interpretive|\
[\
You follow the current until your hands strike something hard.
You cover your face instinctively as your body presses against the dark surface.
The current keeps pulling you sideways along the barrier.
Beyond the surface is (link: "darkness[ (+sand, +vitality)](help|.")[\
(track: 'step', 'play')(set: $sand to it + 0.125, $vitality to it +0.25)(replace: ?statusBars)[(display: "statusBars")]darkness.
You stare into it.
(link: "You do not understand what you are seeing.[ (+vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerExplore', 'play')(set: $sand to it + 0.125, $vitality to it +0.25)(show: ?trialByError)You do not understand what you are seeing.]
The current here is slow. You barely need to move to remain above the sandline, and so you continue drifting beside the barrier for a long time.
[
(seq-link: "Sometimes you press your hands against it.[ (+sand, -time)](help|", "Sometimes you stare into the darkness beyond.[ (+sand, -time)](help|", "Sometimes you watch the sand sliding endlessly along the edge.[ (+sand, -time)](help|", "Sometimes you notice movement inside the dark surface itself.[ (+sand, -time)](help|")[(track: 'step', 'play')(set: _count to it +1, $sand to it + 0.5)(set: _timeLoss to 0.125)(display: "timeLoss")(if: _count is 1)[(show: ?next)]]\
[
Your fingers slide across the smooth surface without finding an opening.
](next|\
[
Beyond the barrier there is no sand.
You cannot tell how far the darkness extends.
](next2|\
[
The current presses you gently against the barrier and carries you sideways through the sand.
](3next|\
[
A figure follows your movements there.
You spend a (link: "long time[ (--time)](help|")[(track: 'step', 'play')(set: _timeLoss to -0.5)(display: "timeLoss")(show: ?understanding)(hide: ?surrender)(set: $storyController to it - (a: "ignorance"))long time] trying to understand why.
](4next|\
](trialByError|\
[You stop searching for answers and watch the movements instead.
The figure continues mirroring you.
The darkness beyond the barrier remains unknowable.
Both things can exist at the same time.
Eventually, stronger currents farther from the edge attract your attention once more.
You leave the barrier <!--[[Swim the sand]]-->(link: "behind[ (-time, -vitality, +sand, +sweat)](help|")[(track: 'sandMovement', 'play')(track: 'playerGood', 'play')(go-to: "Swim the sand")].](understanding|\
[
Eventually, the stronger currents pull your attention <!--[[Swim the sand]]-->(link: "elsewhere[ (-time, -vitality, +sand, +sweat)](help|")[(display: "sweat")(go-to: "Swim the sand")].]<surrender|\
]
](perceptionOnly|\
[\
The current pulls you suddenly sideways.
Something hard strikes your face.
Pain flashes through your nose and forehead.
You panic.
Your limbs thrash wildly through the sand as you try pushing yourself away from the unseen surface, but each movement presses some part of your body against it again.
You cough and sputter as the sand rises around your mouth.
The current continues carrying you sideways.
At length, exhausted, you stop struggling.
Your body settles against the hard surface.
Slowly, your breathing (link: "steadies[ (+sand, +perception)](help|")[\
(set: $sand to it +0.5, $storyController to it + (a: "sight"))(show: ?sight)steadies].[
Movement catches your attention inside the dark surface beside you.
You jerk backward. The figure jerks backward too.
Carefully, you raise one hand. The figure raises its hand.
You touch your face. The figure does the same.
You spend a long time repeating small movements beside the barrier. Before <!--[[Swim the sand]]-->(link: "leaving[ (-time, -vitality, +sand, +sweat)](help|")[(display: "sweat")[(go-to:"Swim the sand")]], you raise your hand once more toward the figure in the dark surface.
It waves back.
](sight|
](ignorance|
]<contentBox|\
</div>\
</div>
{=
(if: $storyController contains "ignorance")[(set: $towardsWisdom to 0)
(if: $storyController contains "sight")[(hide: ?interpretive)(show: ?perceptionOnly)]
(else:)[(hide: ?interpretive)(show: ?ignorance)]
]
(if: $help is 1)[(show: ?help)](if: $help is 0)[{<span class="sr-only">Help and Insight Mode is OFF. Click</span>}(link: "[ⓘ]")[(set: $help to 1)(replace: ?statusBars)[(display: "statusBars")](replace: ?notice)[$timePlain](replace: ?helpButton)[(display: "help")](show: ?help)(enchant: ?helpButton, (text-color: #7fee82))(track: 'harpON', 'play')]<span class="sr-only">to toggle</span>]\
(if: $help is 1)[{<span class="sr-only">Help and Insight Mode is ON</span>}(link: "[ⓘ]")[(set: $help to 0)(replace: ?statusBars)[(display: "statusBars")](replace: ?notice)[$timePlain](replace: ?helpButton)[(display: "help")](hide: ?help)(enchant: ?helpButton, (text-color: #eb4e76))(track: 'harpOFF', 'play')]]{(set: $sweat to 5.13, $sand to 6, $time to 4, $vitality to 6, $tier to 2, $childTtl to 1)
(set: $storyController to it + (a: "period", "partneredUp", "friends"))
(set: $partnerA's active to 2)
(set: $partnerA's cling to 1)
(set: $partnerA's patience to 1)
(set: $partnerA's creator to 1)
(set: $partnerA's adopt to 1)
(set: $partnerA's vitality to 0)
(set: $partnerA's poly to 1)
(set: $partnerB's active to 0)
(set: $partnerB's cling to 1)
(set: $partnerB's patience to 1)
(set: $partnerB's creator to 1)
(set: $partnerB's adopt to 1)
(set: $partnerB's vitality to 5)
(set: $partnerB's poly to 1)
(set: $friend's cling to 1)
(set: $friend's patience to 1)
(set: $friend's vitality to 3)
(set: $friend's poly to 1)
(set: $friend's intimacy to 1)}\
[[Swim the sloping sands]]You have encountered an error.
If you're into it, I'd love it if you could tell me what happened. kay@kdot.ca
If not, I'd love it if you'd try (link: "again")[(go-to: "Start/Pause Menu")].You bring the two gathered sands together, your hands touching and pressing to combine the clay into a uniformed (link: "shape[](help|.")[shape.
{
(set: _success to 0, _attempt to 1)
(if: $sand is >=4)[(set: _success to it +1)]<success1|
(if: $vitality is >=5)[(set: _success to it +1)]<success2|
(if: $partnerB's active is 2)[
(if: $partnerB's creator is 1)[(set: _birthPartner to 2)
(if: $partnerB's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerA's vitality >=3)[(set: _success to it +1)]
]
(else-if: $partnerA's creator is 1)[(set: _birthPartner to 1)
(if: $partnerA's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerB's vitality >=3)[(set: _success to it +1)]
]
]<polySuccess|
(else:)[\
(if: $partnerA's vitality >=3)[
(set: _success to it +1)
]
]
}\
(if: _success is >=3)[\
[\
{\
(set: _time to (random: 1,100))
(if: $time >=7)[
(if: _time is <=80)[\
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2, $storyController to it + (a: "attemptedCreation"))
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?attempt2)
]
]
(else-if: $time >=6)[
(if: _time is <=66)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2, $storyController to it + (a: "attemptedCreation"))
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?attempt2)
]
]
(else-if: $time <6)[
(if: _time is <=44)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2, $storyController to it + (a: "attemptedCreation"))
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?attempt2)
]
]
}\
]<attempt1pass1|\
]\
(else:)[{\
(set: $sand to it -2, $storyController to it + (a: "attemptedCreation"))
(replace: ?statusBars)[(display: "statusBars")]
(show: ?attempt2)
}]]You press your hands gently against the form, bracing it against your partner's hands and cradling it when they (link: "push back[](help|.")[push back.
{
(set: _success to 0, _attempt to 2)
(if: $sand is >=3)[(set: _success to it +1)]<success1|
(if: $vitality is >=4)[(set: _success to it +1)]<success2|
(if: $partnerB's active is 2)[
(if: $partnerB's creator is 1)[
(if: $partnerB's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerA's vitality >=3)[(set: _success to it +1)]
]
(else-if: $partnerA's creator is 1)[
(if: $partnerA's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerB's vitality >=3)[(set: _success to it +1)]
]
]<polySuccess|
(else:)[
(if: $partnerA's vitality >=3)[
(set: _success to it +1)
]
]
(if: _success is >=3)[\
(set: _time to (random: 1,100))
(if: $time >=7)[
(if: _time is <=80)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?attempt3)
]
]
(else-if: $time >=6)[
(if: _time is <=66)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?attempt3)
]
]
(else-if: $time <6)[
(if: _time is <=44)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?attempt3)
]
]
]\
(else:)[
(set: $sand to it -2)
(replace: ?statusBars)[(display: "statusBars")]
(show: ?attempt3)
]\
}(show: ?attempt1)(hide: ?attempt1)(show: ?attempt2)(hide: ?attempt2)((show: ?form2)(hide: ?form2)]{{(set: _success to 0, _attempt to 3)
(if: $sand is >=3)[(set: _success to it +1)]<success1|
(if: $vitality is >=3)[(set: _success to it +1)]<success2|
(if: $partnerB's active is 2)[
(if: $partnerB's creator is 1)[
(if: $partnerB's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerA's vitality >=3)[(set: _success to it +1)]
]
(else-if: $partnerA's creator is 1)[
(if: $partnerA's vitality is >=2)[(set: _success to it +1)]
(else-if: $partnerB's vitality >=3)[(set: _success to it +1)]
]
]<polySuccess|
(else:)[
(if: $partnerA's vitality >=3)[
(set: _success to it +1)
]
]}\
(if: _success is >=3)[\
(set: _time to (random: 1,100))
(if: $time >=7)[
(if: _time is <=80)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?fail3)
]
]
(if: $time >=6)[
(if: _time is <=66)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?fail3)
]
]
(if: $time <6)[
(if: _time is <=44)[
(if: $storyController contains "attemptedCreation")[(set: $storyController to it - (a: "attemptedCreation"))](show: ?success)
]
(else:)[
(set: $sand to it -2)
(set: _timeLoss to -0.25)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(show: ?fail3)]
]
]
(else:)[
(set: $sand to it -2)
(replace: ?statusBars)[(display: "statusBars")]
(show: ?fail3)
]}{(display: "through-images")
<!--calculate Death priority: partnerB, partnerA, friend-->
(set: _death to 0, _deathType to "")
(if: $storyController contains "partneredUp" and $partnerB's active is 2 and $partnerB's vitality <1)[
(set: _death to 1, _deathType to "partnerB")
]
(else-if: $storyController contains "partneredUp" and $partnerA's active is 2 and $partnerA's vitality <1)[
(set: _death to 1, _deathType to "partnerA")
]
(else-if: $storyController contains "friends" and $friend's vitality <1)[
(set: _death to 1, _deathType to "friend")
]
}\
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
<div class="centered">(bg:#fff)+(color:#000)[ [( sand, pouring )]<audio|]</div>
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[Before long, the steep rushing slope begins to level.
The violent downward pull weakens enough for your movements to matter again. Your limbs ache as you slowly readjust to the new currents within these lower sands. Above you, the roaring sandfall continues pouring endlessly through the narrow throat high overhead. But here, at the base of the tall, ever shifting, hill, the sands move differently.
The surface rises and folds in constant restless motion beneath a dim reflected light. The outer boundaries curve around this lower plane just as it did above, smooth and dark beyond the (link: "borders[ (continue story)](help|")[(hide: ?1)(show: ?2)] of the shifting sands.]<1|\
[\
You drift closer to the edge instinctively. Your distorted reflection moves across the curved surface beside you. The shape is familiar, but changed. The collected sand of your body hangs differently now. Melted slightly by motion and pressure. Worn by currents that no longer move with youthful softness. (if: $storyController contains "parasite")[You look at the weight around shoulders, a smooth, heavy form that is affixed around your neck. You can feel the pooling sweat and clumping sand that gathers between you and the heavy form, but in the refection, you see how your body is starting to become mishapen, adapting to its weight. ]
For a moment you barely recognize {
(link: "yourself[](help|.")[
yourself.
(if: $storyController does not contain "ignorance")[(show: ?wonder)]
(if: _death is 1)[
(show: ?death)
(if: _deathType is "partnerB")[
(show: ?partner2death)
(if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerB.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The light blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partnerbIMG
$partneraIMG
</div>]
]
(else-if: _deathType is "partnerA")[
(show: ?partner1death)
(if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-die-partnerA.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The dark blue partner figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
(else-if: _deathType is "friend")[
(show: ?friendDeath)
(if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 4)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 3)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else-if: $time >= 2)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-die-friend.png" alt="a figure sinks into the sand" height="300" width="300">')
]
(replace: ?imageDesc)[The orange companion figure is mostly submerged.]
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
]
]
(else:)[
(show: ?life)
(if: $storyController contains "perimenopause")[
(show: ?perimenopause)
]
(else:)[
(show: ?continue)
]
]
(track: 'sandMovement', 'play')
(hide: ?2)]}](2|\
[\
[[*](italicized|Beyond the dark reflective surface, there is only depthless blackness.
No current.
No falling sand.
No bodies.
And yet it does not feel empty.
The darkness beyond feels strangely calm. Endless. Patient.
You cannot tell whether it is absence or possibility. Only that it has always been here beside every current you have ever known.(if: $storyController contains "parasite")[Your eyes begin to sweat, and the small light caught in the barrier's reflection fractures and dances.
For a moment, the hardened form also reflects across the dark barrier in scattered points of brightness. It does not become less heavy. It does not become less terrible. But it is not only terrible.
You remember the love you had for the one you lost.
You take time to grieve. Even in your tears, there are reflections of light.]
You rest there beside it for a long while, watching distorted reflections ripple across the curved boundary while the sands continue shifting endlessly below. Somewhere within the movement, you feel something familiar.
Creation.
The memory of shaping and being shaped.
There is strange comfort in belonging to something ever changing.[*](italicized|]<italics|
](wonder|\
[\
[Your partner begins lagging behind in the current, struggling to keep up with you and your other partner. Eventually, they stop swimming and you and your partner catch them and carry them in the current until they stiffen. You pause in the current and watch as their body dries, the once wet sand scattering free at the edges and returning to the wider current. You each ](partner2death|\
[Your partner begins lagging behind in the current, struggling to keep up with you. Eventually, they stop swimming and you catch them and carry them in the current until they stiffen. You pause and watch as their body dries, the once wet sand scattering free at the edges and returning to the wider current. You ](partner1death|\
[Your companion waves an urgent gesture, and you get close to them in the current. You see them struggling to stay above the sandline. You offer them your arm, and they hold it until they stiffen and stop struggling. You pause and watch as their body dries, the once wet sand scattering free at the edges and returning to the wider current. You ](friendDeath|\
scoop a still-soft mound of wet sand and cradle, pushing the small remains into (if: $storyController contains "ignorance")[yourself ](else:)[(link: "yourself[ (+vitality, +memory)](help| ")[yourself(set: $wonder to it +1, $vitality to it + 1)(replace: ?statusBars)[(display: "statusBars")] [[*](italicized|savoring the memory of having been together[*](italicized|]<italics|] ]before you release them. When they drift back into the loose sands, they float for a time and then sinks under the rising tide. You {
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(set:
$partnerB's active to 0,
$storyController to it + (a: "partnerBsand"),
$vitality to it +0.25,
$partnerbIMG to ""
)
(show: ?life)
(track: 'partnerBbad', 'play')
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(replace: ?imageDesc)[The light blue figure disappears.]
(if: $storyController contains "perimenopause")[
(show: ?perimenopause)
]
(else:)[
(show: ?continue)
]
]
](partner2death|
[
(link: "grieve[ (-time, +vitality, -partner)](help|")[
grieve
(set:
$partnerA's active to 0,
$storyController to it + (a: "partnerAsand"),
$storyController to it - (a: "partneredUp"),
$vitality to it +0.25,
$partneraIMG to ""
)
(show: ?life)
(track: 'partnerAbad', 'play')
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(replace: ?imageDesc)[The dark blue figure disappears.]
(if: $storyController contains "perimenopause")[
(show: ?perimenopause)
]
(else:)[
(show: ?continue)
]
]
](partner1death|
[
(link: "grieve[ (-time, +sweat, -vitality, +sand, -friend)](help|")[
grieve
(set:
$storyController to it + (a: "friendSand"),
$storyController to it - (a: "friends"),
$vitality to it +0.25,
$friendIMG to ""
)
(show: ?life)
(track: 'friendBad', 'play')
(replace: ?image)[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$friendIMG
$partneraIMG
$partnerbIMG
</div>]
(replace: ?imageDesc)[The orange figure disappears.]
(if: $storyController contains "perimenopause")[
(show: ?perimenopause)
]
(else:)[
(show: ?continue)
]
]
](friendDeath|
} and keep swimming.
](death|\
[\
[\
Just as you recover your equilibrium, you feel a familiar tugging. The sands beneath your body again pull harder, but this time, it feels different. Rather than being pulled, you feel pressure from all directions at once.
You strain against it and the effort causes you to <!--[[The sand becomes water]]-->(link: "sweat[ (++sweat, -sand)](help|")[(track: 'step', 'play')(track: 'playerMenopause', 'play')(go-to: "The sand becomes water")] in sheets. You try to steady yourself against it, but your body no longer responds with the same certainty it once did. You begin to bob, spin and dip in place.
](perimenopause|\
[\
At length, the lower currents pull at your body again.
The sands ahead churn endlessly across steep rolling slopes beneath the dim reflected light. You take a slow breath and continue <!--[[Swim the sloping sands]]-->(link: "forward[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(go-to: "Swim the sloping sands")].
](continue|
](life|
]<contentBox|\
</div>\
</div>\
</div>{<!-- Lower hourglass / post-menopause exertion -->
(set: _timeLoss to 0.25)
<!-- Vitality modifier: tired bodies lose more time -->
(if: $vitality >=8)[
(set: _timeLoss to it -0.04)
]
(else-if: $vitality <=3)[
(set: _timeLoss to it +0.1)
]
(else-if: $vitality <=5)[
(set: _timeLoss to it +0.05)
]
<!-- Low sand means thinning/less interest, but not faster aging by itself -->
(if: $sand <=2)[
(set: _timeLoss to it +0.03)
]
<!-- Parasite modifier -->
(if: $storyController contains "parasite")[
(set: _timeLoss to it +0.08, $vitality to it -0.5)
]
<!-- Clamp -->
(if: _timeLoss <0.15)[
(set: _timeLoss to 0.15)
]
(if: _timeLoss >0.45)[
(set: _timeLoss to 0.45)
]
<!-- Apply lower-tier effects -->
(set:
$sweat to it + (random: 1,3),
$vitality to it -1,
$time to it - _timeLoss
)
<!-- Sand sheds, but never below 1 -->
(if: $sand >1)[
(set: $sand to it -0.5)
]
(if: $sand <1)[
(set: $sand to 1)
]
(if: $time >=10)[(if: $vitality >10)[(set: $vitality to 10)]]
(else-if: $time >=9)[(if: $vitality >10)[(set: $vitality to 10)]]
(else-if: $time >=8)[(if: $vitality >9)[(set: $vitality to 9)]]
(else-if: $time >=7)[(if: $vitality >8)[(set: $vitality to 8)]]
(else-if: $time >=6)[(if: $vitality >7)[(set: $vitality to 7)]]
(else-if: $time >=5)[(if: $vitality >5)[(set: $vitality to 5)]]
(else-if: $time >=4)[(if: $vitality >6)[(set: $vitality to 6)]]
(else-if: $time >=3)[(if: $vitality >5)[(set: $vitality to 5)]]
(else-if: $time >=2)[(if: $vitality >4)[(set: $vitality to 4)]]
(else:)[(set: $vitality to 0)]}sandMovement: ./audio/sandMovement.mp3,
./audio/sandMovement.ogg
sandImpact: ./audio/sandImpact.mp3,
./audio/sandImpact.ogg
slowON: ./audio/slowON.mp3,
./audio/slowON.ogg
slowOFF: ./audio/slowOFF.mp3,
./audio/slowOFF.ogg
back: ./audio/back.mp3,
./audio/back.ogg
menu: ./audio/asiandrums.mp3,
./audio/asiandrums.ogg
sandStorm: ./audio/sandStorm.mp3,
./audio/sandStorm.ogg
sandExplore: ./audio/sandExplore.mp3,
./audio/sandExplore.ogg
sandRustling: ./audio/sandRustling.mp3,
./audio/sandRustling.ogg
sandPour: ./audio/sandPour.mp3,
./audio/sandPour.ogg
harpON: ./audio/harpON.mp3,
./audio/harpON.ogg
harpOFF: ./audio/harpOFF.mp3,
./audio/harpOFF.ogg
step: ./audio/step.mp3,
./audio/step.ogg
child: ./audio/child.mp3,
./audio/child.ogg
friendBad: ./audio/friendBad.mp3,
./audio/friendBad.ogg
friendGood: ./audio/friendGood.mp3,
./audio/friendGood.ogg
parentBad: ./audio/parentBad.mp3,
./audio/parentBad.ogg
parentGood: ./audio/parentGood.mp3,
./audio/parentGood.ogg
partnerAbad: ./audio/partnerAbad.mp3,
./audio/partnerAbad.ogg
partnerAgood: ./audio/partnerAgood.mp3,
./audio/partnerAgood.ogg
partnerBbad: ./audio/partnerBbad.mp3,
./audio/partnerBbad.ogg
partnerBgood: ./audio/partnerBgood.mp3,
./audio/partnerBgood.ogg
partnerBbad: ./audio/partnerBbad.mp3,
./audio/partnerBbad.ogg
playerGood: ./audio/playerGood.mp3,
./audio/playerGood.ogg
playerBad: ./audio/playerBad.mp3,
./audio/playerBad.ogg
playerMenopause: ./audio/playerMenopause.mp3,
./audio/playerMenopause.ogg
playerExplore: ./audio/playerExplore.mp3,
./audio/playerExplore.ogg<a href="#letter" class="skip-link" aria-label="Skip to general credits">Skip to General Credits</a><a href="#dedication" class="skip-link" aria-label="Skip to dedication">Skip to Dedication</a><a href="#technology" class="skip-link" aria-label="Skip to technology">Skip to Tech Credits</a><a href="#thanks" class="skip-link" aria-label="Skip to Thank Yous">Skip to Thank Yous</a><a href="#audio" class="skip-link" aria-label="Skip to Audio Credits">Skip to Audio Credits</a><a href="#audio" class="skip-link" aria-label="Skip to About the Artist">Skip to Artist Bio</a><a href="#footerCredits" class="skip-link" aria-label="Skip to Footer">Skip to Footer</a>\
<div class="content" style="background-color:rgba(35, 31, 32, 1);">\
<div class="adminHead">\
##Credits
</div>\
<div class="adminBody">\
<span id="letter">[\
<a href="https://kdot.ca/sick-and-residency/">Falling Sand</a> © 2026 by <a href="https://kdot.ca/">Kay Slater</a> is licensed under <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/">CC BY-NC-SA 4.0</a>
Concept, writing and development: Kay Slater.
It is possible for me to make the things I make because I am loved and cared for by my partner, friends and co-workers. In other words, this labour of love was fuelled by love. I am very lucky indeed.
Share love, care, and hope by donating to the <a href="https://www.irsss.ca/donate">IRSSS (Indigenous Residential School Survivors)</a> if you can. If not, spend and give freely to those in your community. Give more than you take, but demand the same from others. Mutual aid and community codependency are the way. [[*](italicized|Rest. Love. Repeat[*](italicized|]<italics|.
This story and game was created for The Papercut Arcade Collective (society) exhibition [[*](italicized|CYOW: Sweat[*](italicized|]<italics|, and first exhibited publically in colonially named Vancouver, BC, on the unceeded and ancestral lands of the <span aria-hidden="true">hən̓q̓əmin̓əm̓ and Sḵwx̱wú7mesh Sníchim</span><span class="sr-only">Hunquminum and Squamish language</span> speaking peoples.
]</span>
<span id="dedication">[\
###Dedication
I dedicate this game to every body who is agender, genderqueer or non-binary (and those who overlap). This game was an expression of my frustration towards the lack of gender-affirming care and literature available to aging non-binary, agender and trans bodies, and I wanted to write something that expressed the confusion, possibility, and joy of existing outside of the binary. Whatever you are going through, whatever you think you are, you know best. What you feel is real. Trust yourself.
]</span>
<span id="technology">[\
###Technology
The story was created using Twine, an interactive fiction tool created and maintained by Chris Klimas, using the story format Harlowe, created and maintained by Leon Arnott. Twine is a registered trademark of the
(link: "Interactive Technology Foundation (opens new tab)")[(open-url: "https://iftechfoundation.org/")]. Sound has been added through the use of HAL, the (link: "Harlowe Audio Library (opens new tab)")[(open-url: "https://twinelab.net/harlowe-audio/#/")] with thanks to Chapel.
I use Antidote 12 for my grammar and spelling.
I use Procreate 2025 to create my title image.
I use chatGTP 5.X to assist with the javascript and to find where I was missing square brackets (troubleshooting)!
I used a tutorial by (link: "@HowtoWebDev on YouTube (opens new tab)")[(open-url: "https://www.youtube.com/watch?v=C9Rbmsnb-dk")] for the shifting css animation.
A full list of audio credits for the sound is listed at the bottom of this page.
]</span>
<span id="thanks">[\
###Thank you
To my collective, the Papercut Arcade. We took a hiatus through 2024-2025 after working through pandemic distancing online, and I was elated that we still had the energy to continue making together. It is a honour to make art, games, and interactive fiction with you all.
To Kevin MacLeod for releasing his music for creative commons use. I bought an inventory of his free music tracks a few years ago when I started working with a blind friend who expressed how boring text can be without sound. For me, sound can be a nuisance, a trigger, and altogether inaccessible; however, now I try to straddle the line in my creative practice to push my own limits and see what is possible when multiple access needs intersect or conflict. I want to thank Kevin and others who make content available for share-alike. My games are attribution share-alike, just like Kevin's inventory on incompetech. If you want to build from my framework, I encourage you to do so.
To my partner, Chris. I love you.
]</span>
<span id="audio">[\
###Audio Credits and Track List
Royalty-free music and sound effects used in [[*](italicized|Falling Sand[*](italicized|]<italics|. Please note - clicking these links will navigate you away from the game.
* <a href="https://silverplatteraudio.com/products/sand">Sand Sound Effects</a> audio library from Silverplatter audio.
* Asian Drums, Kevin MacLeod (incompetech.com), Licensed under Creative Commons: By Attribution 3.0 <a href="http://creativecommons.org/licenses/by/3.0/">License</a>
* Shifting sand Sound Effect by <a href="https://pixabay.com/users/dragon-studio-38165424/?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=482891">DRAGON-STUDIO</a> from <a href="https://pixabay.com//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=482891">Pixabay</a>
* Clarinet Sound Effect by freesound community from <a href="https://pixabay.com/sound-effects//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=39383">Pixabay</a>
* Oboe Sound Effect by freesound community from <a href="https://pixabay.com/sound-effects//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=76205">Pixabay</a>
* Bassoon Sound Effect by freesound community from <a href="https://pixabay.com/sound-effects//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=85419">Pixabay</a>
* Bassoon 2 Sound Effect by Penny Modesto from <a href="https://soundboard.com/sb/Basoon_Sounds">Soundboard.com</a>
* Sand storm end Sound Effect by freesound community from <a href="https://pixabay.com/sound-effects//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=68938">Pixabay</a>
* sandMovement Sound Effect generated by AI, credited to <a href="https://pixabay.com/users/ribhavagrawal-39286533/?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=230554">Ribhav Agrawal</a> from <a href="https://pixabay.com//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=230554">Pixabay</a>
* confirm On Sound Effect by <a href="https://pixabay.com/users/sergequadrado-24990007/?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=103885">Sergei Chetvertnykh</a> from <a href="https://pixabay.com//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=103885">Pixabay</a>
* confirm Off Sound Effect by <a href="https://pixabay.com/users/sergequadrado-24990007/?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=103886">Sergei Chetvertnykh</a> from <a href="https://pixabay.com/sound-effects//?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=103886">Pixabay</a>
* UI back sound Sound Effect from <a href="https://pixabay.com/?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=100590">Pixabay</a>
]</span>
<span id="artist">[\
###The Artist
Kay Slater is a white, queer, hard of hearing, mad multidisciplinary artist and arts worker living and working in Vancouver, BC, on the unceded territories of <span aria-hidden="true">xʷməθkʷəy̓əm</span> (Musqueam), <span aria-hidden="true">Sḵwx̱wú7mesh</span> (Squamish) and <span aria-hidden="true">səlilwətaɬ</span> (Tsleil-Waututh) nations. Their practice is grounded in five evolving themes: value, access, process, silence, and care. Learn more about the artist at <a href="https://kdot.ca">kdot.ca (external link)</a>.
]</span>
<span id="footerCredits">[(button:)[(link: "Return to Menu")[(track: 'back', 'play')(go-to: "Start/Pause Menu")]]]</span>\
</div></div>\<a href="#game" class="skip-link" aria-label="Skip to Game UI">Skip to Game UI</a><a href="#graphic" class="skip-link" aria-label="Skip to Intro Graphic">Skip to Intro Graphic</a><a href="#footerCredits" class="skip-link" aria-label="Skip to Footer">Skip to Footer</a>\
<div class="content">\
<div class="adminHead">\
##Expanded visual description
</div>\
<div class="adminBody">\
The following passage describes the visual elements in the game.
This is intended to assist blind and low-vision players to navigate[[*](italicized|Falling Sand[*](italicized|]<italics|,, but also for anyone engaged in troubleshooting or who wants to better understand the layout of the game.
<span id="game">[\
###The game UI
When played on a desktop, the game interface is divided into three horizontal sections: a top menu, a main content area, and a footer. The main content area is further divided into two vertical columns. When played on a smaller mobile device the main content area stacks on top of each other.
The top menu contains an information button represented by a circled “i” icon, [ⓘ], and a Start/Pause menu link. The information button toggles Help and Insight Mode, which reveals additional accessibility and gameplay information. When the game begins, the icon is displayed in orange-red. If half time mode is engaged (toggled in the [[settings|Settings]] panel) a honey pot icon, [🍯], will appear. The top menu and footer are visually framed by pairs of thin yellow horizontal lines. The footer displays the title: Falling Sand – Kay Slater, 2026.
The left column (or top on a mobile device) of the main content area contains the image, audio caption, and player resources status bar. At the top is a square image area where layered illustrations visually display the sand level and characters that appear as the player progresses through the game. Because image alt text is generally limited to the uppermost, layered image, additional image descriptions can be revealed through the Help and Insight Mode. Beneath the image is a caption describing the current background audio. At the bottom of the column is a resource table showing the player’s current values.
The resource table is organized by four icons: an hourglass [⏳], twinkling stars [✨], a teardrop [💧], and three dots [∴]. These represent Time, Vitality, Sweat, and Sand. On a desktop and by default, resources are displayed graphically within a table chart. For screen readers and mobile device users, the table is hidden and the same information is presented numerically. Numeric values are also displayed when Help and Insight Mode is enabled.
The right column contains the main narrative text. Interactive links appear in bold and slightly enlarge when hovered over. When Help and Insight Mode is active, additional text appears beside interactive links describing how a choice will affect the player character or their resources.
The left column occupies approximately one quarter of the available width, while the narrative text column occupies the remaining three quarters.
]</span>
<span id="graphic">[\
###The introduction graphic
<img src="https://kdot.ca/images/FS-logo.png" alt="intro graphic" height="300" width="300">
A stylized graphic depicts a seated figure above curling waves. The lower half of the figure’s body is filled with small dots, some of which drift outward around the form. The title, Falling Sand, is written in cursive and integrated into the illustration, sharing the same flowing line quality as the figure and waves. A small signature appears below the graphic: a lowercase “k.” followed by “2026.”
The image is drawn in turmeric yellow against a black background using smooth, rounded lines resembling felt-tip marker. The figure is shown in profile. The face is suggested with a pointed nose and a simple mouth before the line continues into the chin, neck, and shoulder in a single stroke. A pointed ear sits beneath a sweeping curl of hair that arches backward and then curls forward. Below the waist, the figure merges into a single rounded form that disappears beneath the waves, making it unclear whether the lower body represents folded legs, a skirt, or a tail-like shape.
The capital letters “F” and “S” in Falling Sand are connected. The lower curve of the “S” loops upward into the lower bowl of the “F,” intertwining the two letters as part of the overall composition.
]</span>
<span id="footerCredits">[(button:)[(link: "Return to Menu")[(track: 'back', 'play')(go-to: "Start/Pause Menu")]]]</span>
</div></div><a href="#footerCredits" class="skip-link" aria-label="Skip to Footer">Skip to Footer</a>\
<div class="content">\
<div class="adminHead">\
##Content Warning:
</div>\
<div class="adminBody">\
This game explores themes of aging, mortality, death, grief, parenthood, pregnancy, miscarriage, and bodily change. Players may encounter depictions of loss, disability, caregiving, and the quick passage of time.
While this game contains themes of aging and death, it also explores care, connection, wonder, body acceptance, and transformation.
<span id="footerCredits">[(button:)[(link: "Return to Menu")[(track: 'back', 'play')(go-to: "Start/Pause Menu")]]]</span></div></div><a href="#footerCredits" class="skip-link" aria-label="Skip to Footer">Skip to Footer</a>\
<div class="content">\
<div class="adminHead">\
##About[[*](italicized|Falling Sand[*](italicized|]<italics|,, artist statement\
</div>\
<div class="adminBody">\
//Falling Sand// is a text-based game about aging and the passage of time.
The project began as an attempt to confront my own fears around menopause. As a trans, non-binary person approaching middle age, I found myself surrounded by stories about menopause that felt incomplete, contradictory, or rooted in assumptions about womanhood that did not reflect my own experiences. Searching for answers was frustrating and contributed to my anxiety and body dysmorphia. I still dread thinking about what will eventually happen to my body. It is like puberty all over again, but rather than a sense of anticipation, it is mostly dread and uncertainty.
I decided to focus on that uncertainty for this project: how do we navigate change when the language and resources available to us feel insufficient, do not match our gender (or lack thereof), and when we lack a community or system of care to support our needs?
In[[*](italicized|Falling Sand[*](italicized|]<italics|,, players inhabit a body made of sand moving through a vast hourglass. Relationships form and dissolve. Children are raised, lost, adopted, and remembered. Bodies accumulate experience, wear down, transform, and eventually return to the larger cycle. While the game contains themes of grief and mortality, it is equally concerned with wonder, companionship, creativity, and the small moments of meaning that persist even as time moves quickly forward.
//Falling Sand// reflects nearly seven years of work designing interactive artworks and experimental games. During a three-year hiatus from producing digital work with my collective, I continued writing and designing games within my personal practice. I am elated to return to a collaborative digital presentation, which gives me the chance to flex the skills I have developed solo within shared constraints and with peers who embrace the understanding that games are art. They are a worthy artistic endeavour, whether they are intended for a gallery or salon, or whether they are shared at a kitchen table among friends.
While the subject matter of my games changes from project to project, they often return to similar questions. I am interested in forces that shape our lives but cannot be easily confronted or defeated: grief, generosity, memory, time, uncertainty, and care. Rather than presenting these ideas as problems to solve, I use games to create temporary spaces where players can sit with them, explore them, and occasionally challenge them. My work frequently replaces traditional game currencies, such as money, power, or victory, with alternate forms of value, including sensory language, generosity, memory, light and shadow, and wonder. Across these projects, I return again and again to the belief that transformation is inevitable, that care is communal, and that value is not determined by permanence. The question is rarely how to win. It is how to continue participating in a changing world while remaining open to curiosity, connection, and possibility.
I am especially interested in how games can communicate through systems, repetition, and participation rather than profound-sounding dialogue or spectacle. In[[*](italicized|Falling Sand[*](italicized|]<italics|,, this manifests through non-punitive systems, restorative approaches to failure, and a willingness to leave questions unresolved. The project contains no spoken language. Instead, meaning emerges through movement, touch, rhythm, and choice. As someone who is hard of hearing, I find particular joy in creating non-verbal experiences that do not rely on auditory information to carry emotional weight.
Ultimately, the game is an invitation to sit with uncertainty, to grieve what changes, to celebrate what remains, and to imagine how we might continue moving forward even when we cannot see where the current leads.
<span id="footerCredits">[(button:)[(link: "Return to Menu")[(track: 'back', 'play')(go-to: "Start/Pause Menu")]]]</span>\
</div>\
</div><div class="desktop-only">(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-logo-title.png" alt="A styalized graphic of a figure sitting above waves, their body half filled with dots which also escape and float lightly about their body. The title, Falling Sand, is written in cursive. A signature below the graphic is a single letter k with a period followed by 2026.">')\
<!--[[Start/Pause Menu]]-->(link: "$backgroundIMG")[(go-to: "Start/Pause Menu")]\
(align: "=><=")[<!--[[Start/Pause Menu]]-->[(link: "Start game")[(go-to: "Start/Pause Menu")]]]<start|</div><div class="mobile-only">(set: _backgroundIMG to '<img src="https://kdot.ca/images/FS-logo-title-mobile.png" alt="A styalized graphic of a figure sitting above waves, their body half filled with dots which also escape and float lightly about their body. The title, Falling Sand, is written in cursive. A signature below the graphic is a single letter k with a period followed by 2026.">')\
<!--[[Start/Pause Menu]]-->(link: "_backgroundIMG")[(go-to: "Start/Pause Menu")]\
(align: "=><=")[<!--[[Start/Pause Menu]]-->[(link: "Start game")[(go-to: "Start/Pause Menu")]]]<start|</div>\
{=
(enchant: ?start, (text-color: #48B7DC)){
(set: $imgDesc's action to "The player figure is in the centre of the hourglass. ")
(if: $storyController contains "friends")[(set: $imgDesc's action to it + "The companion figure is nearby. ")]
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[
(set: $imgDesc's action to it + "The two partner figures are in close proximity to the player figure. ")
]
(else:)[
(if: $partnerA's active is 2)[
(set: $imgDesc's action to it +"The partner figure is in close proximity to the player figure. ")
]
]
]
(if: $time >=9)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T06-start-player-adult.png" alt="a single figure" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is mostly full of sand. ")
]
(else-if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-swim-friend.png" alt="a second figure" height="300" width="300">')
]
(else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-swim-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-swim-partnerB.png" alt="another affectionate figure" height="300" width="300">')
]
(else:)[(set: $partnerbIMG to "")]
]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-swim-friend.png" alt="a second figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to "")
]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-swim-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-swim-partnerB.png" alt="another affectionate figure" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to "")
]
]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-swim-friend.png" alt="a second figure" height="300" width="300">')
]
(else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-swim-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-swim-partnerB.png" alt="another affectionate figure" height="300" width="300">')
]
(else:)[(set: $partnerbIMG to "")]
]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-third full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-swim-friend.png" alt="a second figure" height="300" width="300">')
]
(else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-swim-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-swim-partnerB.png" alt="another affectionate figure" height="300" width="300">')
]
(else:)[(set: $partnerbIMG to "")]
]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is nearly empty. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-swim-friend.png" alt="a second figure" height="300" width="300">')
](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-swim-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-swim-partnerB.png" alt="another affectionate figure" height="300" width="300">')
](else:)[(set: $partnerbIMG to "")]
]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
}{
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-island-player.png" alt="a single figure among small dark floating islands" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-island-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-island-player.png" alt="a single figure among small dark floating islands" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-island-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-island-player.png" alt="a single figure among small dark floating islands" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-island-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-third full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-island-player.png" alt="a single figure among small dark floating islands" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-island-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is nearly empty. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-island-player.png" alt="a single figure among small dark floating islands" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-island-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(set: $imgDesc's action to "The player figure is positioned near a trio of small dark floating islands. ")
(if: $storyController contains "friends")[(set: $imgDesc's action to it + "The companion figure is nearby. ")]
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[
(set: $imgDesc's action to it + "The two partner figures are in close proximity to the player figure. ")
]
(else:)[
(if: $partnerA's active is 2)[
(set: $imgDesc's action to it + "The partner figure is in close proximity to the player figure. ")
]
]
]
}{
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-adopt-player.png" alt="a single figure lingers near a floating island holding a tiny figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-adopt-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-adopt-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-adopt-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-adopt-player.png" alt="a single figure lingers near a floating island holding a tiny figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-adopt-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-adopt-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-adopt-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-adopt-player.png" alt="a single figure lingers near a floating island holding a tiny figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-adopt-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-adopt-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-adopt-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-third full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-adopt-player.png" alt="a single figure lingers near a floating island holding a tiny figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-adopt-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-adopt-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-adopt-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is nearly empty. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-adopt-player.png" alt="a single figure lingers near a floating island holding a tiny figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-adopt-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-adopt-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-adopt-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(set: $imgDesc's action to "The player figure lingers near a floating island holding a tiny pin-shaped figure")
(if: $storyController contains "friends")[(set: $imgDesc's action to it + "The companion figure is nearby.")]
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[
(set: $imgDesc's action to it + "The two partner figures are in close proximity to the player figure. ")
]
(else:)[
(if: $partnerA's active is 2)[
(set: $imgDesc's action to it + "The partner figure is in close proximity to the player figure. ")
]
]
]
}{
(set: $imgDesc's action to "The player figure is positioned near the centre of the sands. ")
<!--set default background and player-->
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-friend-player.png" alt="a single figure among others" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-friend-player.png" alt="a single figure among others" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-friend-player.png" alt="a single figure among others" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-third full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-friend-player.png" alt="a single figure among others" height="300" width="300">')
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is nearly empty. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-friend-player.png" alt="a single figure among others" height="300" width="300">')
]
(if: _surroundScene is "pod" or _surroundScene is "siblings")[
(if: $storyController contains "friends")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
]
(if: $time >= 8)[
(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T05-friend-sibling.png" alt="a cluster of figures nearby" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T04-friend-sibling.png" alt="a cluster of figures nearby" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T03-friend-sibling.png" alt="a cluster of figures nearby" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T02-friend-sibling.png" alt="a cluster of figures nearby" height="300" width="300">')
]
(else:)[
(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T01-friend-sibling.png" alt="a cluster of figures nearby" height="300" width="300">')
]
(set: $environmentIMG to "")
(set: $imgDesc's action to it + "A cluster of small figures surrounds the player. ")
]
(if: _surroundScene is "fling" or _surroundScene is "missedConnection")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-friend-failFriend.png" alt="an orange figure with a round, black head" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-friend-failFriend.png" alt="an orange figure with a round, black head" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-friend-failFriend.png" alt="an orange figure with a round, black head" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-friend-failFriend.png" alt="an orange figure with a round, black head" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-friend-failFriend.png" alt="an orange figure with a round, black head" height="300" width="300">')
]
(set: $siblingIMG to "")
(set: $environmentIMG to "")
]
(if: _surroundScene is "sweetHearts" or _surroundScene is "enticement")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(set: $siblingIMG to "")
(set: $environmentIMG to "")
(set: $imgDesc's action to it + "An orange figure appears. ")
]
(if: _surroundScene is "pals" or _surroundScene is "pals2")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-friend-friend.png" alt="an orange figure" height="300" width="300">')
]
(set: $siblingIMG to "")
(set: $environmentIMG to "")
(set: $imgDesc's action to it + "An orange figure appears. ")
]
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[
(if: $time >= 8)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-friend-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-friend-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-friend-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-friend-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-friend-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(set: $imgDesc's action to it + "The two partner figures are also nearby. ")
]
(else:)[(set: $imgDesc's action to it + "The partner figure is nearby. ")]
(if: $time >= 8)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-friend-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-friend-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-friend-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-friend-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-friend-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
]
}{
<!--hourglass bowl--!>\
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-third full of sand. ")
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is nearly empty. ")
]
<!--default player set--!>\
(if: $time >= 8)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-breed-player.png" alt="a white outlined figure with a round, gold head" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-breed-player.png" alt="a white outlined figure with a round, gold head" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-breed-player.png" alt="a white outlined figure with a round, gold head" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-breed-player.png" alt="a white outlined figure with a round, gold head" height="300" width="300">')
]
(else:)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-breed-player.png" alt="a white outlined figure with a round, gold head" height="300" width="300">')
]
<!--player is too young - hasn't had period--!>\
(if: _syncScene is "voyeur")[
(if: $storyController contains "friends")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The companion figure appears close to the player. ")
]
(else:)[(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player figure is positioned near the centre of the surrounding couples. ")]
(set: $partneraIMG to "")
(set: $partnerbIMG to "")
]
<!--all npc slots are full - variables $partnerA's active and $playerB's active are both 2, and $storyController contain both "partneredUp" & "friends"--!>\
(else-if: _syncScene is "full")[
(if: $time >= 8)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-breed-all.png" alt="a quartet of player and non-player characters" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-breed-all.png" alt="a quartet of player and non-player characters" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-breed-all.png" alt="a quartet of player and non-player characters" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-breed-all.png" alt="a quartet of player and non-player characters" height="300" width="300">')
]
(else:)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-breed-all.png" alt="a quartet of player and non-player characters" height="300" width="300">')
]
(set: $friendIMG to "")
(set: $partneraIMG to "")
(set: $partnerbIMG to "")
(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player, their companion and two partner figures are positioned near the centre of the surrounding couples. ")
]
<!--Friend has the potential to become a lover-there might be another partner here-->\
(else-if: _syncScene is "friends2lovers" or _syncScene is "friends2loversPOLY")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(if: $partnerA's active is 2)[
(if: $time >= 8)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
]
(if: $partnerA's active is 2)[(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player and dark blue partner fitures are positioned near the centre of the surrounding couples. The companion figure appears close to the player. Its circular head is replaced by a heart shape. ")]
(else:)[(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The companion figure appears close to the player. Its circular head is replaced by a heart shape.")]
(set: $partnerbIMG to "")
]
<!--more friend to lover stuff (basically repeating-->\
(else-if: _syncScene is "couldHaveBeen" or _syncScene is "worthaShot")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(if: $partnerA's active is 2)[
(if: $time >= 8)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
]
(if: $partnerA's active is 2)[(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player and dark blue partner figures are positioned near the centre of the surrounding couples. The companion figure appears close to the player. Its circular head is replaced by a heart shape. ")]
(else:)[(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The companion figure appears close to the player. Its circular head is replaced by a heart shape.")]
(set: $partnerbIMG to "")
]
<!--friend might be there, not a lover - either partnerA or partner B dance-->
(else-if: _syncScene is "partnershipCreationProse1" or _syncScene is "partnershipCreationProse2")[
(if: $storyController contains "friends")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
]
(else:)[(set: $friendIMG to "")]
(if: $time >= 8)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(if: $partnerB's active is 1)[
(if: $time >= 8)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
]
(else:)[(set: $partnerbIMG to "")]
(if: $partnerB's active is 1)[
(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player and partner figures are positioned near the centre of the surrounding couples. A light blue figure appears. ")
]
(else:)[
(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player figure is positioned near the centre of the surrounding couples. A dark blue figure appears. ")
]
(if: $storyController contains "friends")[(set: $imgDesc's action to it + "The companion figure is also nearby. ")]
]
<!--friend might be there, might be a lover - either partnerA or partner B dance-->
(else-if: _syncScene is "partnershipCreationProse3")[
(if: $storyController contains "friends" and $friend's intimacy is "interested")[
(if: $partnerB's active is 1)[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player and dark blue partner figures are positioned near the centre of the surrounding couples. The companion figure appears close to the player. Its circular head is replaced by a heart shape. ")
(set: $partnerbIMG to "")
]
(else:)[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend1.png" alt="an orange heart-shaped figure" height="300" width="300">')
]
(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The companion figure appears close to the player. Its circular head is replaced by a heart shape.")
(set: $partneraIMG to "")
(set: $partnerbIMG to "")
]
]
(else-if: $storyController contains "friends")[
(if: $time >= 8)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend0.png" alt="an orange figure" height="300" width="300">')
]
(else:)[
(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend0.png" alt="a second amorous figure" height="300" width="300">')
]
(if: $partnerB's active is 1)[
(if: $time >= 8)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player figure is positioned near the centre of the surrounding couples. The partner and companion figures are here. A single light blue, pin-shaped figure appear. r")
]
(else:)[(set: $partnerbIMG to "")(set: $imgDesc's action to "Several pairs of pin-shaped figures appear throughout the sand. The player and companion figures are positioned near the centre of the surrounding couples. A single dark blue, pin-shaped figure appears. ")]
(if: $time >= 8)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
]
(else:)[
(if: $partnerB's active is 1)[
(if: $time >= 8)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
(else:)[
(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerB.png" alt="a light blue figure" height="300" width="300">')
]
]
(else:)[(set: $partnerbIMG to "")]
(if: $time >= 8)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 7)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 6)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else-if: $time >= 5)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
(else:)[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerA.png" alt="a dark blue figure" height="300" width="300">')
]
]
]
<!--The background characters in the sync swim passage across sand heights-->\
(if: $time is >=8)[
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T05-breed-roam.png" alt="couples move together" height="300" width="300">')
]
(else-if: $time is >=7)[
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T04-breed-roam.png" alt="couples move together" height="300" width="300">')
]
(else-if: $time is >=6)[
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T03-breed-roam.png" alt="couples move together" height="300" width="300">')
]
(else-if: $time is >=5)[
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T02-breed-roam.png" alt="couples move together" height="300" width="300">')
]
(else:)[
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T01-breed-roam.png" alt="couples move together" height="300" width="300">')
]
}{
(if: $storyController contains "perimenopause")[
(set: $imgDesc's action to "Dark spiralling lines form a whirlpool-like pattern. The player figure is caught within the spiral ")
]
(else:)[
(set: $imgDesc's action to "Dark spiralling lines form a whirlpool-like pattern. The player figure is nearby but outside the spiral. ")
]
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "The companion and two partner figures are nearby but outside the spiral.")]
(else:)[(set: $imgDesc's action to it + "The companion and partner figures are nearby but outside the spiral.")]
]
(else:)[(set: $imgDesc's action to it + "The companion figure is nearby but outside the spiral.")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "The two partner figures are nearby but outside the spiral.")]
(else:)[(set: $imgDesc's action to it + "The partner figure is nearby but outside the spiral.")]
]
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(if: $storyController contains "perimenopause")[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-swirling-player-down.png" alt="a single figure caught in the swirling sands" height="300" width="300">')](else:)[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-swirling-player.png" alt="a single figure near swirling sands" height="300" width="300">')]
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-island-friend.png" alt="a friendly figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
(if: $storyController contains "perimenopause")[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-swirling-player-down.png" alt="a single figure caught in the swirling sands" height="300" width="300">')](else:)[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-swirling-player.png" alt="a single figure near swirling sands" height="300" width="300">')]
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-island-friend.png" alt="a friendly figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
(if: $storyController contains "perimenopause")[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-swirling-player-down.png" alt="a single figure caught in the swirling sands" height="300" width="300">')](else:)[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-swirling-player.png" alt="a single figure near swirling sands" height="300" width="300">')]
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-island-friend.png" alt="a friendly figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-third full of sand. ")
(if: $storyController contains "perimenopause")[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-swirling-player-down.png" alt="a single figure caught in the swirling sands" height="300" width="300">')](else:)[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-swirling-player.png" alt="a single figure near swirling sands" height="300" width="300">')]
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-island-friend.png" alt="a friendly figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is nearly empty. ")
(if: $storyController contains "perimenopause")[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-swirling-player-down.png" alt="a single figure caught in the swirling sands" height="300" width="300">')](else:)[(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-swirling-player.png" alt="a single figure near swirling sands" height="300" width="300">')]
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-island-friend.png" alt="a friendly figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-island-partnerA.png" alt="an affectionate figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-island-partnerB.png" alt="another affectionate figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
}{
(set: _tier to "")
(set: $playerIMG to "", $partneraIMG to "", $partnerbIMG to "", $friendIMG to "", $environmentIMG to "")
(if: $time >= 8)[
(set: _tier to "T05")
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
]
(else-if: $time >= 7)[
(set: _tier to "T04")
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
]
(else-if: $time >= 6)[
(set: _tier to "T03")
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
]
(else-if: $time >= 5)[
(set: _tier to "T02")
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a partially empty container" height="300" width="300">')
]
(else:)[
(set: _tier to "T01")
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a mostly empty container" height="300" width="300">')
]
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-' + _tier + '-newBaby-partnerB.png" alt="a tiny figure atop another larger figure alongside an affectionate figure" height="300" width="300">')
]
(else:)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-' + _tier + '-newBaby-partnerA.png" alt="a tiny figure atop another larger figure alongside an affectionate figure" height="300" width="300">')
]
]
(else:)[
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-' + _tier + '-newBaby-solo.png" alt="a tiny figure atop another larger figure" height="300" width="300">')
]
}{
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-breed-player.png" alt="a single figure among others" height="300" width="300">')
(if: $partnerA's active is 2)[(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerA.png" alt="an affectionate figure" height="300" width="300">')]
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T05-breed-partnerB.png" alt="another affectionate figure" height="300" width="300">')]
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-breed-player.png" alt="a single figure among others" height="300" width="300">')
(if: $partnerA's active is 2)[(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerA.png" alt="an affectionate figure" height="300" width="300">')]
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T04-breed-partnerB.png" alt="another affectionate figure" height="300" width="300">')]
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-breed-player.png" alt="a single figure among others" height="300" width="300">')
(if: $partnerA's active is 2)[(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerA.png" alt="an affectionate figure" height="300" width="300">')]
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T03-breed-partnerB.png" alt="another affectionate figure" height="300" width="300">')]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-third full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-breed-player.png" alt="a single figure among others" height="300" width="300">')
(if: $partnerA's active is 2)[(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerA.png" alt="an affectionate figure" height="300" width="300">')]
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T02-breed-partnerB.png" alt="another affectionate figure" height="300" width="300">')]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is nearly empty. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-breed-player.png" alt="a single figure among others" height="300" width="300">')
(if: $partnerA's active is 2)[(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerA.png" alt="an affectionate figure" height="300" width="300">')]
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T01-breed-partnerB.png" alt="another affectionate figure" height="300" width="300">')]
]
}{
(if: $time >= 8)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T05-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full of yellow sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T05-newBaby-drown.png" alt="a tiny figure atop another larger figure sinking into the sand" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend0.png" alt="a supportive figure nearby" height="300" width="300">')(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T05-breed-friend0.png" alt="a supportive figure nearby" height="300" width="300">')](else:)[(set: $friendIMG to "", $environmentIMG to "")]
(if: $childTtl >1)[(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T05-friend-sibling.png" alt="a pod of smaller figures nearby" height="300" width="300">')](else:)[(set: $siblingIMG to "")]
]
(else-if: $time >= 7)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T04-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T04-newBaby-drown.png" alt="a tiny figure atop another larger figure sinking into the sand" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T04-breed-friend0.png" alt="a supportive figure nearby" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $childTtl >1)[(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T04-friend-sibling.png" alt="a pod of smaller figures nearby" height="300" width="300">')](else:)[(set: $siblingIMG to "")]
]
(else-if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T03-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full of sand. ")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T03-newBaby-drown.png" alt="a tiny figure atop another larger figure sinking into the sand" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T03-breed-friend0.png" alt="a supportive figure nearby" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $childTtl >1)[(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T03-friend-sibling.png" alt="a pod of smaller figures nearby" height="300" width="300">')](else:)[(set: $siblingIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T02-bg.png" alt="a partially empty container" height="300" width="300">')
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T02-newBaby-drown.png" alt="a tiny figure atop another larger figure sinking into the sand" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T02-breed-friend0.png" alt="a supportive figure nearby" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $childTtl >1)[(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T02-friend-sibling.png" alt="a pod of smaller figures nearby" height="300" width="300">')](else:)[(set: $siblingIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T01-bg.png" alt="a mostly empty container" height="300" width="300">')
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T01-newBaby-drown.png" alt="a tiny figure atop another larger figure sinking into the sand" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T01-breed-friend0.png" alt="a supportive figure nearby" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $childTtl >1)[(set: $siblingIMG to '<img src="https://kdot.ca/images/FS-T01-friend-sibling.png" alt="a pod of smaller figures nearby" height="300" width="300">')](else:)[(set: $siblingIMG to "")]
]
}{
(if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T16-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours down a thin neck into the lower hourglass. The sand filled bowl is one-sixths full.")
]
(if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T15-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours down a thin neck into the lower hourglass. The sand filled bowl is one-thirds full.")
]
(else-if: $time >= 4)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T14-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours down a thin neck into the lower hourglass. The sand filled bowl is half full.")
]
(else-if: $time >= 3)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T13-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours down a thin neck into the lower hourglass. The sand filled bowl is two-thirds full.")
]
(else-if: $time >= 2)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T12-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours down a thin neck into the lower hourglass. The sand filled bowl is five-sixths full.")
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T11-bg.png" alt="a container almost full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours down a thin neck into the lower hourglass. The sand filled bowl is almost full.")
]
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-sand-neck-player.png" alt="a single, falling figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-sand-neck-friend.png" alt="a second figure, falling" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-sand-neck-partnerA.png" alt="another figure, falling" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-sand-neck-partnerB.png" alt="another another figure, falling" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
(set: $imgDesc's action to "The player figure appears within the downpour of sand descending through the hourglass spout. ")
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to "The player, companion, and two partner figures are clustered together within the downpour of sand descending through the hourglass spout. ")]
(else:)[(set: $imgDesc's action to it + "The player, companion, and partner figures are clustered together within the downpour of sand descending through the hourglass spout. ")]
]
(else:)[(set: $imgDesc's action to it + "The player and companion figures are clustered together within the downpour of sand descending through the hourglass spout. ")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "The player and two partner figures are clustered together within the downpour of sand descending through the hourglass spout. ")]
(else:)[(set: $imgDesc's action to it + "The player and partner figures are clustered together within the downpour of sand descending through the hourglass spout. ")]
]
}{
(if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T16-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours from above. The hourglass bowl is one-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T15-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours from above. The hourglass bowl is one-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 4)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T14-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours from above. The hourglass bowl is half full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T14-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 3)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T13-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours from above. The hourglass bowl is two-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T13-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 2)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T12-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours from above. The hourglass bowl is five-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T12-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T11-bg.png" alt="a container almost full" height="300" width="300">')
(set: $imgDesc's hourglass to "Sand pours from above. The hourglass bowl is almost full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T11-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(set: $imgDesc's action to "The player figure appears at the base of the pouring column of sand. ")
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the companion, and two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "Nearby are the companion, and partner figures. ")]
]
(else:)[(set: $imgDesc's action to it + "The companion figure is nearby. ")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "The partner figures is nearby. ")]
]
}{
(if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T16-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T15-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 4)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T14-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T14-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 3)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T13-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T13-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 2)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T12-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T12-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T11-bg.png" alt="a container almost full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is almost full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T11-swim-player.png" alt="a single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(set: $imgDesc's action to "The player figure appears at the base of the pouring column of sand. ")
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the companion, and two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "Nearby are the companion, and partner figures. ")]
]
(else:)[(set: $imgDesc's action to it + "The companion figure is nearby. ")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "The partner figures is nearby. ")]
]
}{
(if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T16-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-menop-phase1.png" alt="a sweaty single figure" height="300" width="300">')
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T16-menop-crystal.png" alt="a transluscent rock formation" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T15-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-menop-phase1.png" alt="a sweaty single figure" height="300" width="300">')
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T16-menop-crystal.png" alt="a transluscent rock formation" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 4)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T14-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T14-menop-phase1.png" alt="a sweaty single figure" height="300" width="300">')
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T14-menop-crystal.png" alt="a transluscent rock formation" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 3)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T13-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T13-menop-phase1.png" alt="a sweaty single figure" height="300" width="300">')
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T13-menop-crystal.png" alt="a transluscent rock formation" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 2)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T12-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T12-menop-phase1.png" alt="a sweaty single figure" height="300" width="300">')
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T12-menop-crystal.png" alt="a transluscent rock formation" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T11-bg.png" alt="a container almost full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is almost full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T11-menop-phase1.png" alt="a sweaty single figure" height="300" width="300">')
(set: $environmentIMG to '<img src="https://kdot.ca/images/FS-T11-menop-crystal.png" alt="a transluscent rock formation" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(set: $imgDesc's action to "The player figure sweats, a column of orange fire behind them. ")
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the companion, and two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "Nearby are the companion, and partner figures. ")]
]
(else:)[(set: $imgDesc's action to it + "The companion figure is nearby. ")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "The partner figures is nearby. ")]
]
}{
(if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T16-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-menop-phase2.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T15-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-menop-phase2.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 4)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T14-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T14-menop-phase2.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 3)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T13-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T13-menop-phase2.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 2)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T12-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T12-menop-phase2.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T11-bg.png" alt="a container almost full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is almost full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T11-menop-phase2.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(set: $imgDesc's action to "The player figure appears perched on an angular crystal formation. ")
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the companion, and two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "Nearby are the companion, and partner figures. ")]
]
(else:)[(set: $imgDesc's action to it + "The companion figure is nearby. ")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "The partner figures is nearby. ")]
]
}{
(if: $time >= 6)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T16-bg.png" alt="a container mostly empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-swim-player.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 5)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T15-bg.png" alt="a container partially empty" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is one-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T16-swim-player.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T16-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T16-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 4)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T14-bg.png" alt="a container half full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is half full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T14-swim-player.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T14-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T14-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 3)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T13-bg.png" alt="a container partially full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is two-thirds full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T13-swim-player.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T13-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T13-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else-if: $time >= 2)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T12-bg.png" alt="a container mostly full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is five-sixths full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T12-swim-player.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T12-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T12-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(else:)[
(set: $backgroundIMG to '<img src="https://kdot.ca/images/FS-T11-bg.png" alt="a container almost full" height="300" width="300">')
(set: $imgDesc's hourglass to "The hourglass bowl is almost full.")
(set: $playerIMG to '<img src="https://kdot.ca/images/FS-T11-swim-player.png" alt="a sweaty single figure" height="300" width="300">')
(if: $storyController contains "friends")[(set: $friendIMG to '<img src="https://kdot.ca/images/FS-T11-swim-friend.png" alt="a second figure" height="300" width="300">')](else:)[(set: $friendIMG to "")]
(if: $storyController contains "partneredUp")[
(set: $partneraIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerA.png" alt="another figure" height="300" width="300">')
(if: $partnerB's active is 2)[(set: $partnerbIMG to '<img src="https://kdot.ca/images/FS-T11-swim-partnerB.png" alt="another another figure" height="300" width="300">')](else:)[(set: $partnerbIMG to "")]]
(else:)[(set: $partneraIMG to "", $partnerbIMG to "")]
]
(set: $imgDesc's action to "The player figure appears centrally within the sands. ")
(if: $storyController contains "friends")[
(if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the companion, and two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "Nearby are the companion, and partner figures. ")]
]
(else:)[(set: $imgDesc's action to it + "The companion figure is nearby. ")]
]
(else-if: $storyController contains "partneredUp")[
(if: $partnerB's active is 2)[(set: $imgDesc's action to it + "Nearby are the two partner figures. ")]
(else:)[(set: $imgDesc's action to it + "The partner figures is nearby. ")]
]
}<a href="#footerCredits" class="skip-link" aria-label="Skip to Footer">Skip to Footer</a>\
<div class="content">\
<div class="adminHead">\
###Optional settings
</div>\
<div class="adminBody">\
<div class="flex-container">\
<div class="flex-item">[(button:)[(link-repeat: "Help and insight mode")[(track: 'harpON', 'play')(hide: ?helpOff)(show: ?helpOn)(set: $help to 1)] (text-color: #eb4e76)[Currently OFF]]]<helpOff|\
[(button:)[(link-repeat: "Help and insight mode")[(track: 'harpOFF', 'play')(show: ?helpOff)(hide: ?helpOn)(set: $help to 0)] (text-color: #7fee82)[Currently ON - ⓘ]]](helpOn|\
</div>\
<div class="flex-item">Additional image descriptions and interation outcome insight.
Note: This can be toggled within the game via the ⓘ or circle with an i icon in the upper right corner.\
</div>
</div><hr />
<div class="flex-container">\
<div class="flex-item">[(button:)[(link-repeat: "Half time")[(track: 'slowON', 'play')(hide: ?halfTimeOff)(show: ?halfTimeOn)(set: $halfTime to 1)] (text-color: #eb4e76)[Currently OFF.]]]<halfTimeOff|\
[(button:)[(link-repeat: "Half time")[(track: 'slowOFF', 'play')(show: ?halfTimeOff)(hide: ?halfTimeOn)(set: $halfTime to 0)] (text-color: #7fee82)[Currently ON - ]🍯.]](halfTimeOn|\
</div>\
<div class="flex-item">Slow the sands in the upper bowl.
Note: It's recommended you play through the game once at regular speed first before enabling this mod. Time will resume it's regular speed once in the lower bowl.\
</div>
</div><hr />
<div class="flex-container">\
<div class="flex-item">[(button:)[(link-repeat: "Higher contrast links")[(track: 'harpON', 'play')(hide: ?highContrastOff)(show: ?highContrastOn)(set: $highContrast to 1)(go-to: "Settings")] (text-color: #eb4e76)[Currently OFF.]]]<highContrastOff|\
[(button:)[(link-repeat: "Higher contrast links")[(track: 'harpOFF', 'play')(show: ?highContrastOff)(hide: ?highContrastOn)(set: $highContrast to 0)(go-to: "Settings")]] (text-color: #7fee82)[Currently ON - ]✅.](highContrastOn|\
</div>\
<div class="flex-item">The game is designed to make interactive options a little challenging to find as you search the sand for your next move. This turns ALL links in the game sandy golden yellow.\
</div>
</div><hr />
<div class="flex-container">\
<div class="flex-item">[(button:)[(link-repeat: "Italics")[(track: 'harpOFF', 'play')(hide: ?italicsOff)(show: ?italicsOn)(set: $italicsOFF to 1)(go-to: "Settings")] (text-color: #7fee82)[Currently ON.]]]<italicsON|\
[(button:)[(link-repeat: "Italics")[(track: 'harpON', 'play')(show: ?italicsOff)(hide: ?italicsOn)(set: $italicsOFF to 0)(go-to: "Settings")] (text-color: #eb4e76)[Currently OFF ]]](italicsOFF|\
</div>\
<div class="flex-item">Toggle [[*](italicized|italics[*](italicized|]<italics| in the game.\
</div>\
</div><hr />
<div class="flex-container">\
<div class="flex-item">[(button:)[(link-repeat: "Shifting background")[(track: 'harpOFF', 'play')(hide: ?bgOff)(show: ?bgOn)(set: $motionBG to 0)(go-to: "Settings")] (text-color: #7fee82)[Currently ON.]]]<bgON|\
[(button:)[(link-repeat: "Shifting background")[(track: 'harpON', 'play')(show: ?bgOff)(hide: ?bgOn)(set: $motionBG to 1)(go-to: "Settings")] (text-color: #eb4e76)[Currently OFF ]]](bgOFF|\
</div>\
<div class="flex-item">Toggle the atmospheric, animated backgound.\
</div>\
</div>
<span id="footerCredits">[(button:)[(link: "Return to Menu")[(track: 'back', 'play')(go-to: "Start/Pause Menu")]]]</span>\
</div>\
</div>\
{=
(if: $halfTime is 1)[(hide: ?halfTimeOff)(show: ?halfTimeOn)]
(if: $help is 1)[(hide: ?helpOff)(show: ?helpOn)]
(if: $highContrast is 1)[(hide: ?highContrastOff)(show: ?highContrastOn)]
(if: $motionBG is 0)[(hide: ?bgON)(show: ?bgOFF)]
(if: $italicsOFF is 1)[(hide: ?italicsON)(show: ?italicsOFF)]{
(if: $halfTime is 1 and $tier is 0 and $time <=8)[
(set: $time to it - (_timeLoss / 2))
]
(else:)[
(set: $time to it - _timeLoss)
]
}<!--Game Stats--!>\
(set:
$tier to 0,
$time to 10,
$timePlain to "You are an Infant",
$vitality to 10,
$sweat to 0,
$sand to 1,
$wonder to 0,
$childTTl to 0,
$last to "",
$storyController to (a: "ignorance"),
$friend to (dm: "intimacy", "", "cling", 0, "patience", 0, "vitality", 0, "poly", 0),
$partnerA to (dm: "active", 0, "cling", 0, "patience", 0, "creator", 0, "adopt", 0, "vitality", 0, "poly", 0),
$partnerB to (dm: "active", 0, "cling", 0, "patience", 0, "creator", 0, "adopt", 0, "vitality", 0, "poly", 0),
$backgroundIMG to "",
$playerIMG to "",
$parentIMG to "",
$siblingIMG to "",
$friendIMG to "",
$partneraIMG to "",
$partnerbIMG to "",
$environmentIMG to "",
$imgDesc to
(dm:
"action", "A small circular gold shape outlined in white is surrounded by pale yellow sand. Dark spiralling lines curve around it, creating a whirlpool-like pattern.",
"hourglass", "",
)
)<a href="#firstTime" class="skip-link" aria-label="Skip to general credits">Skip to General Credits</a><a href="#resources" class="skip-link" aria-label="Skip to resource management">Skip to Resource Management</a><a href="#tips" class="skip-link" aria-label="Skip to tips">Skip to Tips</a><a href="#footerCredits" class="skip-link" aria-label="Skip to Footer">Skip to Footer</a>\
<div class="content" style="background-color:rgba(35, 31, 32, 1);">\
<div class="adminHead">\
##How to play
</div>\
<div class="adminBody">\
<span id="firstTime">[\
If this is your first time playing an interactive fiction story, welcome!
Unlike a traditional novel, interactive fiction lets you choose what your character does. Every decision shapes your own version of the story. If you enjoy [[*](italicized|Falling Sand[*](italicized|]<italics|, I encourage you to explore the other games created by the artists of The Papercut Arcade.
Instead of turning pages, you’ll click links.
Some links take you to a new passage. Others reveal extra information without leaving the page.
For example, click (link:"reveal")[reveal(show: ?reveal)].
[
👻 "Boo!"
That link has now become plain text because there is nothing left for it to do. Some links disappear after one click, while others remain available and may even change each time you use them. Part of the fun is discovering which is which.
](reveal|\
I designed [[*](italicized|Falling Sand[*](italicized|]<italics| so that your choices are guided by curiosity rather than by trying to find the "correct" path. Trust your instincts and see where they lead. Every playthrough is a little different.
]</span>
<span id="resources">[\
###Resource management
Throughout the game you will manage four resources:
* (text-color: #48B7DC)[Time] [⏳]
* (text-color: #FDE369)[Vitality] [✨]
* (text-color: #98AEB6)[Sweat] [💧]
* (text-color: #EA990E)[Sand] [∴]
On desktop these appear in the lower-left corner of the screen. On mobile they appear near the top of each passage.
Your choices increase and decrease these resources. Some story paths only become available if you have enough of a particular resource.
Want a small spoiler? Click (link:"hint")[hint(show:?hidden)].
[
Creating a baby requires sand. Curious how much? Click (link:"hint two")[hint two(show:?hidden2)].
[
You need at least 3 Sand, although success also depends on chance and other factors.
](hidden2|\
](hidden|\
If you prefer to see exact values instead of discovering them through play, turn on Help & Insight Mode using the [ⓘ] info icon in the upper-right corner of the screen. It displays numerical resource values, explains the effects of many choices, and includes image descriptions for each illustration.
]</span>
<span id="tips">[\
###Helpful Tips
0. Light blue italic text near the top of a passage describes how your body and resources are changing. You can disable italics in Settings if you prefer.
0. You can return to the Start/Pause Menu at any time to begin a new playthrough.
0. There are different story paths to discover. You are not expected to find everything in one game.
0. Toggle the [ⓘ] info icon for Help and insight mode. It also contains visual descriptions of the images per page.
]</span>
<span id="footerCredits">[(button:)[(link: "Return to Menu")[(track: 'back', 'play')(go-to: "Start/Pause Menu")]]]</span>\
</div></div>\{(display: "baby-images")
<!--Set relationship erosion-->
(set: _fade to (random: 1,6))}
<div class="content">\
<div class="HUDimage" id="sidebar" role="details" aria-live="polite" aria-atomic="false">\
[<div class="image-layer-container">
$backgroundIMG
$playerIMG
$partneraIMG
$partnerbIMG
</div>]<image|
[ID: [(print: $imgDesc's hourglass) (print:$imgDesc's action)
]<imageDesc|
](help|\
(align: "=><=")[(bg:#fff)+(color:#000)[ [( wind )]<audio|]]
[(display: "statusBars")]<statusBars|
</div>{<!--// END OF PICTURE BOX //-->}\
\
<div class="HUDText">\
<div id="main" role="document" aria-live="polite" aria-atomic="false">\
(box: "X", 22)[\
[[[* ](italicized|$vitalityProse $sandProse[*](italicized|]<italics|
]<status|
[\
[The small body trembles between your hands. You lift them carefully above the sandline. Their skin is almost free of grit, only lightly dusted where your fingers touched them.
For a moment, they are impossibly still. Then they move. Their limbs search blindly until they find your shoulder.]
(if: $storyController contains "partneredUp")[\
(if: $partnerB's active is 2)[\
Your partners move close on either side of you. One steadies your shoulders while the other guides the child onto your back.
For a short while, all four of you move as one careful (link: "formation[ (continue story)](help|")[(show: ?continue1)(hide: ?start)] through the current.\
]\
(else:)[\
Your partner steadies the child while you turn your body beneath them.
Together, you guide their small limbs around your shoulders. When they settle against your back, your partner keeps one hand near them until your (link: "movements[ (continue story)](help|")[(show: ?continue1)(hide: ?start)] become steady again.\
]\
]\
(else:)[\
You are alone when you balance the child against your back, and it takes time. (if: $storyController contains "friends")[(set: _friendTime to (random: 1, 6))(if: _friendTime >3)[Occassionally, your companion swims up and helps the two of you, but often swims off again after a brief assist.](else:)[You search the sandline for your companion, but for once they are nowhere in sight.]
Each movement threatens to shift them too far to one side, but eventually their small body settles between your shoulders. You begin (link: "swimming[ (continue story)](help|")[(show: ?continue1)(hide: ?start)] slowly, careful not to dip too low beneath the sandline.
]]]<start|\
[For a time, the child rides on your back. Their weight changes everything.
You swim more carefully now. You rise higher above the sandline when the current shifts. You avoid rougher currents that once would have carried you quickly through the sands.
Sometimes the child is joyful.
Sometimes they scream into your neck.
Sometimes they sleep while you (link: "labour[ (continue story)](help|")[(show: ?continue2)(hide: ?continue1)] to keep the both of you above the sandline.](continue1|\
[You are tired. You are amazed. You continue. (if: $childTtl >1)[Sometimes, your other children swim nearby. They circle you in playful bursts, rising and sinking through the sand with ever-growing confidence. The child on your back watches them closely.]
{(if: $vitality <5)[\
Eventually, your energy begins to wane and you]
(else:)[\
Eventually, the child begins reaching toward the sand. At first, only with curiosity. Then with insistence.
You]} slow your movements and lower your body just enough for the current to brush against body. They recoil. You rise again. Later, you try once (link: "more[ (?child)](help|.")[more. \
(set: _babyRelease to (random: 1,100))\
(if: _babyRelease is <=75)[\
<!--success-->This time they push weakly against the drifting surface.
Little by little, they learn.
They slip from your back into the sand and panic at first, their small limbs churning wildly beneath the surface. You remain close. When they sink, you lift them. When they tire, you offer your shoulder. When they steady, you let go.
Over time, they need you less often.
Their movements become their (link: "own[ (-time, -child)](help|")[(track: 'sandMovement', 'play')(show: ?away)(hide: ?continue2)].
]\
(else:)[\
(if: $storyController contains "partneredUp")[\
<!--failAssist-->When the child clings too tightly, stronger hands reach in beside yours.
Your partner steadies your body while the child is gently pulled back from your neck.
The child cries without sound, limbs reaching for you again. Together, you lower them toward the sand. No one (link: "lets go[ (-time, -child)](help|")[(show: ?away)(hide: ?continue2)(track: 'sandMovement', 'play')] all at once.
]\
(else:)[\
<!--failSolo-->When you try to lower them into the sand, the child grips tighter.
Their arms lock around your neck. Their small body presses hard against your back, refusing the current below. You try to shift gently, but they cling with growing panic.
Sand rises around both of you.
Your breathing <!--[[Around your neck]]-->(link: "changes[ (-time, ++sweat, --vitality, +sand, ?child)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "Around your neck")].
]\
]\
]](continue2|\
[<!--start of AWAY-->\
(if: $storyController contains "partneredUp")[\
One day, the child swims farther than before. You and your partner watch them go.
For a while, you remain close together in the current, your bodies still shaped by the work of carrying them.
Eventually, you begin moving again. Sometimes together. Sometimes apart. Forever {(if: _fade is 6)[
(link: "changed[ (-time, ?partner)](help|")[
changed.
(if: $partnerB's active is 2 and cling is 0)[
(show: ?fadePoly)
(set: $partnerB's active to 0)
]
(else-if: $partnerA's cling is 0)[
(show: ?fadeMono)
(set: $partnerA's active to 0, $storyController to it - (a: "partneredUp"))
]
(else:)[(display: "sweat")(go-to: "Swim the sands")]
(if: $time <=6)[(show: ?perimenopause)]
].
]
(else:)[
(if: $time <=6)[
(show: ?perimenopause)
]
(else:)[
(display: "sweat")
(go-to: "Swim the sands")
]
]}\
]\
(else:)[\
One day, the child swims farther than before.
You follow at a distance until they turn back and see you watching. They pause and then they continue outward.
You remain where you are, sad and proud, letting the <!--[[Swim the sand]]-->{
(if: $time >7 and $storyController contains "selfCling")[
(link: "current[ (-time)](help|")[
(track: 'sandMovement', 'play')
(set: _timeLoss to 0.125)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?desperate)
]
]
(else-if: $time <7)[
(link: "current[ (-time)](help|")[
(track: 'sandMovement', 'play')
(set: _timeLoss to 0.125)(display: "timeLoss")
(replace: ?statusBars)[(display: "statusBars")]
(replace: ?notice)[$timePlain](if: $help is 1)[(show: ?help)]
(show: ?perimenopause)
]
]
(else-if: $vitality <5)[
(link: "current[ (-time, +sweat, +/+vitality, +sand)](help|")[
(track: 'step', 'play')(track: 'playerExplore', 'play')
(display: "sweat")
(go-to: "Island")
]
]
(else:)[
(link: "current[ (-time, +sweat, -vitality, +sand)](help|")[
(track: 'step', 'play')(track: 'playerGood', 'play')
(display: "sweat")
(go-to: "Swim the sand")
]
]
} hold you in place. You can only carry them so far. (if: $vitality <5)[You are exhausted.]
]
[\
After the child learns to swim alone, one of your partners' movements begins changing. They still travel near you, occasionally with your other partner, but less often in the same current at the same time.
One day, one of your partners touches your shoulder. The gesture is gentle, but final.
You do not (if: $time>6)[(link: "follow[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $partnerB's active to 0)(display: "sweat")(go-to: "Swim the sand")]](else:)[follow] when they turn away, and you hold hands with your other partner with intensity for a time.\
](fadePoly|\
[\
After the child learns to swim alone, your partner’s movements begin changing. They still travel near you, but less often in the same current.
One day, your partner touches your shoulder. The gesture is gentle, but final.
You do not (if: $time>6)[(link: "follow[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(set: $partnerA's active to 0, $storyController to it - (a: "partneredUp"))(display: "sweat")(go-to: "Swim the sand")]](else:)[follow] when they turn away.\
](fadeMono|
[\
When the child finally swims beyond your reach, the space on your back feels strangely cold.
In the distance, near the islands, you notice <!--[[Adoption]]-->(link: "small figures[ (-time, +sweat, +/-vitality, +sand, ?child)](help|")[(track: 'step', 'play')(track: 'playerExplore', 'play')(display: "sweat")(go-to: "Adoption")] waiting just above the sandline.
You know you cannot carry every child.
Still, you look for a (link: "long time[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerGood', 'play')(display: "sweat")(go-to: "Swim the sand")].\
](desperate|
[\
Once you have a moment (if: $storyController contains "partneredUp")[to reflect](else:)[to yourself], you notice another current. It has always been there, but never with this force.
It catches beneath your body and pulls you away from the birthing sands and calmer outer edges. Ahead, the sand churns more violently than anything you have known.
The current does not ask. It takes hold. (if: $storyController contains "partneredUp")[(if: $partnerB's active is 2)[You clutch at your partners' hands as you are all swept <!--[[The swirling sand]]-->(link: "away[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "The swirling sand")].](else:)[You clutch at your partner's hand as you are both swept <!--[[The swirling sand]]-->(link: "away[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "The swirling sand")].]](else-if: $storyController contains "friends")[Your companion swims up as you flail through the aggressive sands. They reach out to pull you free, but are instead pulled along with you in the fast-moving <!--[[The swirling sand]]-->(link: "current[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "The swirling sand")].](else:)[You <!--[[The swirling sand]]-->(link: "swim[ (-time, +sweat, -vitality, +sand)](help|")[(track: 'step', 'play')(track: 'playerBad', 'play')(display: "sweat")(go-to: "The swirling sand")].]\
](perimenopause|\
](away|
]<contentBox|\
</div>\
</div>\
</div>