Part - Blue Flashes
Instead of examining the sun when sunset and location is regionally in Lacuna (this is the Blue Flash rule): process blue flash.
A flash-room is a kind of room.
To say blueflashcommandprompt: say "[if location is Blue Flash 1]and you say[else if location is Blue Flash 2]so you[else if location is Blue Flash 3]and you wonder if you should[else if location is Blue Flash 3a]and you tell [himher] that you[else if location is Blue Flash 4] and you[else if location is Blue Flash 5]and it tastes[else if location is Blue Flash 6]and you know [kidsname] is[else if location is Blue Flash 7]and you realize now that decision was[else]so you[end if]: >>".
To process Blue Flash:
if topics-window is g-present, shut down topics-window;
if the number of entries in flash list < 1:
say "You stare towards the sun as it sinks into the ocean, a brilliant ball, but as it sinks into the waves and vanishes, you see nothing further.";
stop;
if The-Path-Of-Love is happening:
if Blue Flash 3a is not listed in flash list and the number of entries in flash list is 7, add Blue Flash 3a at entry 4 in flash list;[ add a scene referencing player's inability to let the painting go.]
let flash stage be entry 1 of flash list;
move Rume to flash stage;
now Rume is idle;
move player to flash stage, without printing a room description;
say "[line break][bold type][location][roman type][line break][description of location][line break]";
change the command prompt to "[blueflashcommandprompt]";
otherwise if location is indoorsy:
say "You can't see the sun from in here.";
stop;
otherwise if sun over ocean:
miss Rume;
say "You stare towards the sun as it sinks into the ocean, a brilliant ball of red and gold, and suddenly, just as the last sliver vanishes into the waves, a surge of intense blue";
reset the boredom meter with "Blue Flash";
change saved location to location;
if The-Path-Of-Love has ended:
move Rume to location;
say "[paragraph break][paragraph break]";
say "[one of][tpl7][or][tpl2][or][tpl3][or][tpl4][or][tpl5][or][tpl6][in random order]";
say "[paragraph break][paragraph break]";
remove Rume from play;
aftersunbit;
else:
let flash stage be entry 1 of flash list;
move Rume to flash stage;
move player to flash stage, without printing a room description;
say "[line break][bold type][location][roman type][line break][description of location][line break]";
change the command prompt to "[blueflashcommandprompt]";
otherwise:
say "The sun is hidden from this vantage point; you can't see where it's touching the ocean.".
To say tpl2: say "'There is a bedtime story for mountain children,' Rume murmurs, [hisher] [if Rume is male]strong[else]soft[end if] shoulder cupped in your hand, 'about a pilgrim and the wisest man in the world. The pilgrim wanted to know why the world was the way it was. To each question the wise man would only say, [']Because it is.[']' [CHeShe] breathes against you. 'I have never decided whether to love or hate that story.' And you hold [himher] tighter.".
To say tpl3: say "'What do you see?' asks Rume, as you gaze up at the clouds circling the peak together. 'Do you see shapes behind the clouds? Stories behind the shapes? Worlds behind the stories and luminous truths behind the worlds?' [CHeShe] smiles wryly, touching your eyelids lightly. 'Or do you see only clouds?'".
To say tpl4: say "'Look,' Rume says, holding it out to you, 'Isn't he beautiful?' but [heshe] sees in your eyes that all you can see is a tiny green caterpillar, and [heshe] tries again. 'It was just born from filth and rot and darkness,' [heshe] says as it inches tentatively over [hisher] hand, 'and has a whole life to lead. Then, when it's grown weary and ready to die, it will be reborn to begin all over again.' [CHeShe] sighs. 'And look how happy he is, regardless.'".
To say tpl5: say "'I'd think you would have learned by now,' Rume says, features etched by the frigid winter breeze into smooth contours of wind-channeled surface. 'I am never cold. I feel cold, yes, sometimes so much that it's hard to ignore. Cold could kill my body if I do not protect myself from it. But cold is only one way of perceiving the snow and the winter. Cold is a state of mind.' [CHeShe] smiles, breath crystallizing in the air. 'I am not cold.'".
To say tpl6: say "'Here is home,' Rume says to [kidsname], touching a point on the old map, 'and here is the spur of the mountains, and here the seven glaciers. And beyond, the uplands. And farther...' [CHisHer] hand traces delicate lines towards a smooth and blank section of the map. 'Here we have never been, nor known anyone to go. Imagine that. Only four days away lies the Unknown.' [CHeShe] smiles, hugging your [if kidismale is true]son[else]daughter[end if] close. 'We are such small creatures. I wonder what the world makes of us.'".
To say tpl7: say "Rume carries another heavy pile of firewood inside, framed by the ugly black and green clouds, and must see some fear deep in your face, for [heshe] pauses and touches your hand. 'My love,' [heshe] says, 'there is nothing to worry about. Blizzards are out of our hands, you and I. All we can do is take what comes, no matter how fierce, and survive.'".
Blue Flash 1 is a flash-room with printed name "Ice Shelf Near Home" and description "ice, you call to Rume, but [if Rume is female]s[end if]he knows that, knows to stay on the blue ice, but the mammoth skeleton gleams within the glacier and [if Rume is female]s[end if]he's almost there and suddenly the shelf gives way beneath [himher] and [heshe]'s falling, skidding down the slope and you trip after [himher] snowshoes catching and heart thumping and finally reach [hisher] side".
Blue Flash 2 is a flash-room with printed name "Outside The Tumble" and description "eyes, [gf2kidbit1], and [if children are possible]the two of you hold [kidhimher] in your arms[otherwise]you can see how scared [kidheshe] is but hungry at last to finally have a home, holding the two of your hands tight[end if], little [kidsname], as the [if children are possible]fat little doctor[otherwise]pompous official[end if] [gffr2]". To say gffr2: say "from town out of breath from the bumpy sleigh ride up [if children are possible]coos reassuringly[else]signs paperwork[end if], and [if children are possible]the baby cries[otherwise if kidismale is true]the boy swallows nervously[otherwise]the girl trembles nervously[end if]".
To say gf2kidbit1:
if The-Path-Of-Love has not happened:
if children are possible:
if a random chance of 1 in 2 succeeds, now kidismale is true;
otherwise now kidismale is false;
otherwise:
if player is male, now kidismale is false;
otherwise now kidismale is true;
if player is male and Rume is female:
say "just like [kidhisher] mother's";
otherwise if player is female and Rume is male:
say "just like [kidhisher] father's";
otherwise if Rume is male:
say "like Rume's, [kidhisher] adopted father";
otherwise:
say "like Rume's, [kidhisher] adopted mother".
To say kidhisher: if kidismale is true, say "his"; otherwise say "her". To say kidheshe: if kidismale is true, say "he"; otherwise say "she". To say kidhimher: if kidismale is true, say "him"; otherwise say "her".
Blue Flash 3 is a flash-room with printed name "The Tumble, [kidsname]'s Room" and description "of the sky fades in the darkling window as night breezes rustle while [kidsname] listens with wide eyes to Rume's bedtime story, tucked in bed under warm furs, and you watch and listen fondly at the way your love weaves the words, [hisher] voice dancing and lilting through the old tale".
Blue Flash 3a is a flash-room with printed name "The Cellar" and description "in the painting, covered in a faint layer of dust now but still potent, powerful, and you wonder why you never destroyed it and you wonder why you keep coming down here and pulling back the dusty burlap and staring at it, and Rume comes down the stairs behind you while [kidsname] recites above and Rume closes the cellar door and puts [hisher] arms around you, the wooden bracelet hard against your stomach, and stares at the painting with you and [heshe] asks if you still hear the Call".
Blue Flash 4 is a flash-room with printed name "Your Bedroom" and description "eyes flash as [heshe] screams at you in fury, each of Rume's words hammering into the ache in your head like nails, each argument rising to the surface and being sucked under again by momentum, like jetsam in a river eddy, again and again, and finally you can't take any more".
Blue Flash 5 is a flash-room with printed name "At Dinner Around The Fire" and description "-green leaves from the garden and Rume's buttered red potatoes and [kidsname]'s fresh meat, and [kidheshe] boasts to the grizzled trapper about the kill again and again, reliving the details of the flushing and the flintlock and the thrill of victory, [kidhisher] first successful hunt, and you take your first bite of the smoked meat".
Blue Flash 6 is a flash-room with printed name "The Garden" and description "eyes blaze as [heshe] tells your child [kidheshe]'s absolutely forbidden, but [kidsname], almost a [if kidismale is true]man[otherwise]woman[end if] now, kicks over a corn stalk savagely and shouts that you don't understand what it's like living up here alone, you're a couple of rooted hermits, you've forgot what adventure even is, and Rume flushes".
Blue Flash 7 is a flash-room with printed name "Your Bedroom" and description "shadows between the pine boughs that Rume still hangs from the rafters through twenty winters now, the old loft room now filled with treasures and mementos and the scuffs and scratches and sweat of a lifetime, and the wind beats against the old timbers of the house where the two of you have spent this past quiet year, alone again, and you remember the night like this those dim and distant years ago when you chose between [if we chose love]love and art and chose love[otherwise]art and love and chose art[end if]".
The flash list is a list of rooms that varies. The flash list is {Blue Flash 1, Blue Flash 2, Blue Flash 3, Blue Flash 4, Blue Flash 5, Blue Flash 6, Blue Flash 7}.
After reading a command when location is a flash-room (this is the Homeworld Blue Flash trickery rule):
let pcmd be indexed text;
let pcmd be the player's command;
say line break;
if location is Blue Flash 1:
if pcmd matches the regular expression "(all right|alright|allright|ok|hurt|help|alive)":
say "but Rume is laughing, brushing the snow from [hisher] face and saying yes, I'm fine, I'm fine, ";
otherwise if pcmd matches the regular expression "(what|how|happen)":
say "but Rume is laughing, saying nothing happened, nothing happened, just a bit of a tumble, ";
otherwise if pcmd matches the regular expression "(careful|fall|fell|slip)":
say "but Rume laughs and says [heshe]'s always exactly as careful as the situation requires, ";
otherwise if pcmd matches the regular expression "love":
say "and Rume laughs, kissing you back, says [heshe] loves you too and [heshe]'s alright, all right, ";
otherwise if pcmd matches the regular expression "why":
say "but you know why and Rume knows you know; [heshe]'s an explorer, an adventurer to the bone, like you, and you can't stay mad... ";
otherwise:
say "but Rume doesn't hear you over [hisher] laughter, whooping and scraping the snow from [hisher] face and saying it's okay, it's okay, I'm fine, ";
say "and you feel such an intense rush of gratefulness and love and kiss [himher] between [hisher] eyes, so beautiful and blue";
otherwise if location is Blue Flash 2:
if pcmd matches the regular expression "(hug|hold|shoulder|kiss)":
let actionword be 1;
otherwise if pcmd matches the regular expression "(smile|grin)":
let actionword be 2;
otherwise if pcmd matches the regular expression "(say|tell|explain|talk)":
let actionword be 3;
otherwise if pcmd matches the regular expression "(rock|shake|nurse|shush)":
let actionword be 4;
otherwise if pcmd matches the regular expression "(slap|hit|punch|drop|kick|hurt|smack)":
let actionword be 9;
otherwise:
let actionword be 5;
if actionword is 9, say "or at least you want to, because life here is hard, and it's a lesson that must be learned quickly";
else say "and [kidheshe] [if children are possible]smiles and gurgles up at you [otherwise]looks up at you bravely, [end if][if actionword is 1]hugging you back[otherwise if actionword is 2]smiling back[otherwise if actionword is 3]listening gratefully[otherwise if actionword is 4]quieting down again[otherwise]holding your hand tight[end if], and";
say " you look up into Rume's eyes and reflected there is your joy and terror and trepidation and concern at this new frontier of parenthood, reflected in the blue";
otherwise if location is Blue Flash 3:
if pcmd matches the regular expression "(go|leave|exit)":
say "but no, you'll stay, stay and hear the end of the story";
otherwise if pcmd matches the regular expression "(stay|listen|intrude|wait)":
say "and decide you should, stay and hear the end of the story";
otherwise if pcmd matches the regular expression "(join|tell|help|participate|speak|story|say|talk|act|sing)":
say "and when Rume pauses for a moment you step forward and add your own pieces to the story, and Rume squeezes your hand fondly and [kidsname] listens to you eagerly";
otherwise if pcmd matches the regular expression "(kiss|hug|caress|touch)":
say "and you want to but want to keep from interrupting the flow of the story more, so you wait and let Rume go on";
otherwise if pcmd matches the regular expression "(stop|interrupt|punish|intervene)":
say "but decide no, [kidheshe]'s old enough now to hear the real stories, all their terror and wonder and fantasies and realities";
otherwise:
say "but no, you'll stay, stay and hear the end of the story";
say ", and Rume tells and the story lives in the spaces between you three and you're content, at peace here in your home in the blue";
otherwise if location is Blue Flash 3a:
if pcmd matches the regular expression "(don't know|dont know|not know|not sure|unsure|can't tell|cant tell)":
say "and [heshe] hugs you and says if you can't tell doesn't that mean you can't? But you don't know, don't know";
otherwise if pcmd matches the regular expression "(can't|no|don't|never hear)":
say "and [heshe] squeezes your arm and asks why you don't burn it then but you can't explain, can't explain how each painting is a part of you, even or especially those left unfinished";
otherwise:
say "and there is a long silence before Rume hugs you silently, and you feel [hisher] tears seep into the back of your shirt, and you wish you could destroy the painting but you can't, it would be like burning a part of yourself";
say ", and Rume asks you to come back upstairs and help [kidsname] with [kidhisher] poem and you roll the burlap back over the canvas and the last color you see is a shade of blue";
otherwise if location is Blue Flash 4:
if pcmd matches the regular expression "(hit|strike|attack|slap|punch|kill|strangle|choke|murder|push)":
say "and Rume stumbles to a halt, holding a hand to [hisher] face and staring at you in shock";
otherwise if pcmd matches the regular expression "(scream|yell|shout)":
say "and Rume stops in mid-word, face pale in the lamp light, before sinking to the bed and your throat hurts from the sound";
otherwise if pcmd matches the regular expression "(give up|give in|concede|cease|stop|let him|let her|sorry)" or pcmd matches the regular expression "(apolog|wait)":
say "and Rume quiets, thinking, and finally comes to you and holds you, tears wettening your shoulder, and murmuring that it doesn't matter, doesn't matter who's right, doesn't...";
otherwise if pcmd matches the regular expression "(leave|go|exit|west|out|outside|run|away|walk)":
say "but [heshe] yells after you telling you to come back this isn't finished but you keep walking down the stairs anyway, the stream barely audible over [hisher] voice";
otherwise if pcmd matches the regular expression "(cry|weep|tears|sob)":
say "and Rume stops in mid-word, as if catching, tripping on your tears, and suddenly there are tears in [hisher] eyes too";
otherwise if pcmd matches the regular expression "(hug|kiss|hold)":
say "and Rume stops in mid-word, trembling for a long moments before holding you back, tears suddenly seeping into your shoulder";
otherwise:
say "and the argument keeps going, ill-fitting circles of words screeching and abrading against each other";
say ", and you wonder if this is what you stayed for, if you gave up your greatest gift for this, for the tears in Rume's blue";
otherwise if location is Blue Flash 5:
if pcmd matches the regular expression "(terrib|aweful|awful|bad|gross|bitter|rancid|nasty|foul)" or pcmd matches the regular expression "(off|disgusting|crap|shit|ash)":
say "but you keep chewing and smiling because this is [kidsname]'s moment and you see the trapper's eyes go wide as he chews his first bite through his beard but he does the same";
otherwise if pcmd matches the regular expression "(average|bland|undercooked|normal|typical|unexceptional)":
say "but you keep chewing and smiling because this is [kidsname]'s moment and across the table the trapper praises it and maybe he's being kind or maybe after weeks in the woods he really does like it";
otherwise if pcmd matches the regular expression "(great|good|delicious|fantastic|wonderful|flavor|yum|tasty|nice|fine)":
say "and the trapper says through his bushy beard it's the best venison he's had in months and [kidsname] beams";
otherwise:
say "and the trapper thanks you all again for putting him up";
say " and across the table you catch Rume's glance and the two of you share a secret smile, [hisher] eyes absorbing the crackling fire but still the same blue";
otherwise if location is Blue Flash 6:
if pcmd matches the regular expression "(havent|not|no|false|wrong|lie|impossible|never|isnt|cant)":
say "because you do remember, you do know, and of course your [if kidismale is true]boy[otherwise]daughter[end if] feels it too, and you can't ask [kidhimher] to stay here with the two of you forever";
otherwise if pcmd matches the regular expression "(right|yes|true|have|correct)":
say "but how could [if kidismale is true]he[else]she[end if] be, how, how could a Wayfarer forget";
otherwise if pcmd matches the regular expression "(growing up|old|grown|grow|almost|man|woman|leave|ready|boy|girl)":
say "and soon [if kidismale is true]he[else]she[end if] will be leaving, setting out into the world";
otherwise if pcmd matches the regular expression "(sad|frustrat|lone|alone|angry|bitter|rebel|bad|vent)":
say "and you wonder again whether you did right to raise [if kidismale is true]him[else]her[end if] in this lonely valley of a lonely world";
otherwise:
say "and you don't know what to say";
say ", and [kidsname] turns and angrily stalks off into the forest, and you look at Rume, [hisher] face more deeply lined than it seemed even this morning, but [hisher] eyes only deepening with age into richer and richer shades of blue";
otherwise if location is Blue Flash 7:
if pcmd matches the regular expression "(flawed|unfair|not fair|rigged|stupid)":
say "because life is not divided into extremes, blacks and whites";
otherwise if pcmd matches the regular expression "(hard|difficult|not easy|challenging)":
say "so hard that you still to this day wonder how things might have happened if you had chosen differently";
otherwise if pcmd matches the regular expression "(irrelevant|inconsequential|unimportant|not important|meaningless|trivial|pointless)":
say "because even the Call could not change the fact that you'd already made your choice to stay with Rume";
otherwise if pcmd matches the regular expression "(wrong|incorrect|not|bad|poor)":
say "[if we chose love]because you should have followed your heart and answered the Call and not left Rume tied to someone flawed and imperfect[otherwise]because losing Rume even then would have scarred you for the rest of your life[end if]";
otherwise if pcmd matches the regular expression "(right|correct|ok|good|simple|inevitable)":
say "[if we chose love]because losing Rume even then would have scarred you for the rest of your life[otherwise]that you should have followed your heart and answered the Call and not left Rume tied to someone flawed and imperfect[end if]";
otherwise:
say "and you toss and turn";
say " and Rume sleeps beside you and [if The-Path-Of-Love has happened]in a flash you remember that this is your last night here, your last night before you finally answered the Call and left Rume here alone and suddenly [hisher] eyes fly open and[otherwise]in a flash you realize this never happened, you didn't stay here, this is just a dream, and Rume's eyes suddenly open and[end if] [heshe] looks at you desperately and you try to hold on to the look in those eyes, those beautiful blue";
change the command prompt to ">";
if the number of entries in flash list > 0, remove entry 1 from flash list;
if The-Path-Of-Love is happening:
if the number of entries in flash list > 0:
say "[paragraph break]blue";
process Blue Flash;
else:
print a section break;
say "[paragraph break]...but you shake your head. It was just a dream. You're still here today, and Rume is still at the Tumble, and if you don't make this shot you're going to be eating more of last year's freezer-burned venison again.";
change the time of day to 9:00 AM;
now player carries flintlock pistol;
move player to The North Vale;
else:
move player to saved location, without printing a room description;
say "[line break][bold type][location][roman type][line break]";
aftersunbit;
reject the player's command.
To aftersunbit:
say "flash fades, and the sun vanishes below the waves.[paragraph break]";
pass 16 minutes of time;
remove the sun from play;
if The-Path-Of-Love has happened:
say "[one of]The memory was intense and vivid, and you take a deep breath, shaken. For the color of that flash was precisely the shade of Rume's eyes[or]Again, the memory was as real as the first time you lived it, and the color of the flash the precise shade you remember[stopping].";
otherwise:
say "[one of]The vision was intense and vivid, as if from some equally real world where you chose to stay with Rume, rather than answer the Call, and you can't help but grieve. For the color of that flash was precisely the shade of Rume's eyes[or]Again, the vision was so intense you almost can't believe it's not a memory, and the color... the shade is exactly what you remember[stopping].".