"Tea and Toast" by Maria del Pangolin [This is the exact version of "Tea and Toast" that was released in Shufflecomp, except for the directions to release with source code and these comments. Oh, and I also ended one commment in the middle apparently so I've fixed that. Look for a post-comp release... sometime! Please disregard any snarky comments, which were made under time pressure. Right now there are some not very sound design decisions made. For instance, I spent most of the beginning of my design time working on the complex room description... and then I realized that people aren't going to keep looking in a one-room game. So I never got around to making interacting with an object increase its prominence, or writing descriptions for when an object is more prominent than the supporter it's on, or like that. Another issue is that the memories associated with the bread slices and teacups never work, because those are kind names in the associated thing column of Table of Associations which will never work. I think they're effectively blank. This will take a bit of trickery to accomplish. This is an Inform 6G60 source text. Thanks to Sam Ashwell and everyone who participated in ShuffleComp!] Release along with a website and the source text. The story headline is "A Slice of Life". The release number is 1. Include Variable Time Control by Eric Eve. Include Plugs and Sockets by Sean Turner. Include Plurality by Emily Short. Include Complex Listing by Emily Short. Include Disambiguation Control by Jon Ingold. Use no scoring, American dialect, and the serial comma. Chapter - Things in the Kitchen A thing can be significant or insignificant. A thing is usually significant. A tchotchke is a kind of thing. A tchotchke is usually insignificant. The Kitchen is a room. The countertop is a supporter in the Kitchen. Understand "counter" or "counters" or "top" as the countertop. The wall is scenery in the Kitchen. Two PS-sockets are part of the wall. Understand "outlet" as the wall. For printing the name of the wall when plugging or unplugging: say "wall outlet". The description of the wall is "The most important thing about the wall is that you can plug things into it." An electric kettle is a device on the countertop. Every device incorporates a PS-plug. The description of a PS-plug is usually "When plugged into a socket, it allows electricity to flow to an appliance." The description of a PS-socket is usually "You can plug plugs into the wall here." A toaster is a container on the countertop. The toaster can be switched on or switched off. The toaster incorporates a PS-plug. The carrying capacity of the toaster is 2. A bread knife is on the countertop. The bread knife is privately-named. Understand "breadknife" or "bread knife" or "knife" as the bread knife. [So "bread" doesn't keep disambiguating to the ding bing bread knife.] The description of the bread knife is "The bread knife has serrated edges like waves on the lake." Understand "serrated" or "edges" as the bread knife. Waves on the lake is insignificant scenery in the kitchen. Before doing anything when the current action involves the waves on the lake: say "You can't actually see the lake from here." instead. A breadbox is a closed openable container on the countertop. A loaf of bread is in the breadbox. Understand "box" or "bread" as the breadbox. [Gonna have to use Disambiguation Control rules to choose the loaf or bread slices over it.] The description of the breadbox is "It's as big as a breadbox." The description of the loaf of bread is "A bumpy homemade loaf, mushrooming out at the top where it overflowed the bread pan." Understand "bumpy" or "homemade" or "home-made" as the loaf. A bread slice is a kind of thing. There are four bread slices. Understand "of" as a bread slice. A bread slice can be toasted or untoasted. A bread slice is usually untoasted. There is a toasted bread slice. [This lets "think about toast" work and is a bit of a hack.] Understand "toast" as a bread slice when the item described is toasted. Understand "toast" as a bread slice when thinking about. The printed name of a bread slice is "slice of [if toasted]toast[otherwise]bread[end if]". [This is going to lead to bugs if there are both HEY THIS IS THE COMMENT THAT I ABANDONED IN THE MIDDLE AT RELEASE TIME toasted and untoasted bread slices together in the player's inventory, as Inform will try to pluralize them . ] Understand "slices" as the plural of a bread slice. The printed plural name of a bread slice is "slices of [if the item described is toasted]toast[otherwise]bread[end if]". The description of the bread slice is "[if untoasted]A bit crumbly[otherwise]Nicely toasted[end if]." A tea tin is a container on the countertop. Some loose tea is a thing in the tea tin. The loose tea is singular-named. The indefinite article of the loose tea is "some". The description of the tea tin is "A twee little thing, in the shape of an open-topped red trolley, filled with loose tea." Understand "twee" or "little" or "trolley" or "red" or "open-topped" or "open" or "topped" as the tea tin. The description of the loose tea is "Loose tea, you're not quite sure what kind." A tea strainer is a container on the countertop. The description is "It's like a pair of tongs with a mesh ball at the end." Understand "tongs" or "pair" or "of" or "ball" as the tea strainer. Some tea leaves are a thing. [This is going to be what winds up in the tea strainer when you put loose tea in it.] The tea leaves can be dry, steeping, or used (this is its consistency property). The tea leaves are dry. The description of the leaves is "[if dry]Dry tea leaves, ready for their apotheosis into tea[otherwise if steeping]The tea leaves are happily leaching their essence into the hot water[otherwise if used]The tea leaves are quite soggy now[end if]." A stove is a scenery supporter in the kitchen. The stove can be switched on or switched off. The description of the stove is "You don't actually need to do anything with the stove to make your tea; the electric kettle will do fine." A cabinet is a fixed in place closed openable container in the kitchen. Understand "cabinets", "shelf", or "shelves" as the cabinet. A teacup is a kind of container. Four teacups are in the cabinet. Understand "cup", "tea cup", "of tea", or "mug" as a teacup. Understand "cups" or "mugs" as the plural of a teacup. The description of the teacup is "Plain and brown, with a simple loop of a handle." A koosh is a tchotchke in the cabinet. The description of the koosh is "Sort of a rubber hairball. You're not sure what it[if the item described in the cabinet][']s[otherwise] was[end if] doing in the cabinet." Understand "rubber" or "hairball" as the koosh. A sink is a fixed in place thing in the kitchen. The sink can be switched on or switched off. Understand "spigot" or "faucet" as the sink. A rice cooker is a tchotchke in the kitchen. The home of the rice cooker is the sink. The rice cooker incorporates one PS-plug. The description of the rice cooker is "You left it to dry after cooking the rice last night." The rice cooker can be switched on. Check filling the rice cooker with something: say "You don't need to make rice this morning." instead. Check plugging the rice cooker into something: say "The rice cooker will just set itself to warm the empty air inside it, and what good would that do?" instead. Check switching on the unplugged rice cooker: say "If the rice cooker were plugged in and filled with rice and water, you could switch it from warm mode to cook mode. But there's no need to plug it in, or fill it with water, let alone rice." The Chopster is a tchotchke in the kitchen. The home of the Chopster is the sink. The description of the Chopster is "The Chopster is a surprisingly useful miniature food processor. It's currently disassembled and drying out." The Chopster incorporates one PS-plug. Understand "miniature" or "food" or "processor" or "pieces" or "rubber" or "seal" as the Chopster. The indefinite article of the Chopster is "the". Before doing anything other than examining when the current action involves the Chopster: say "The Chopster is in too many pieces to put together right now, and you don't need to chop anything, as much fun as it would be." instead. A table is a supporter in the kitchen. A teapot is a container on the table. Understand "pot" or "tea pot" as the teapot. The description of the teapot is "A really impossibly twee object, in the form of a red London double decker bus with an elephant-trunk spout[one of][or]. It's labeled 'THE T POTTS BUS CO,' for heaven's sake[or][stopping]." Understand "red" or "london" or "double" or "decker" or "bus" or "elephant" or "trunk" or "elephant-trunk" or "spout" or "t" or "potts" or "co" as the teapot. [Note to self; don't write descriptions that long again.] The Complete Poems of Elizabeth Bishop is a tchotchke on the table. The description is "What you always notice is its salmon color." The indefinite article of Complete Poems of Elizabeth Bishop is "The". Understand "book" or "salmon" or "color" or "collected" [I keep saying "collected" instead of "complete"] or "poem" or "Lily's" [lily's book] as The Complete Poems of Elizabeth Bishop. Lily's wallet is a tchotchke on the table. It is proper-named. The description of Lily's wallet is "Lily's wallet, open to the university ID that doubles as her bus pass." Understand "ID" or "bus pass" or "university" as Lily's wallet. The refrigerator is insignificant scenery in the kitchen. Understand "fridge" as the refrigerator. Before when the current action involves the refrigerator: say "Lily has used a magnetic poetry set to spell out 'not implemented yet' on the refrigerator door. Where did she get a magnetic poetry set with 'implemented' in it?" instead. The floor is privately-named scenery in the kitchen. [For accounting for things that aren't near anything major.] The void is a thing. [For accounting for things that aren't even in the room, or are liquids, or something.] Maria is a woman in the kitchen. The player is Maria. The description of Maria is "You're awake and mostly conscious[first time]. It's a gift[only]." Section - The Kettle The description of the kettle is "A tall metal cylinder with a button in the handle[if the kettle is switched on], pressed in and lit up blue[otherwise], not pressed in at the moment[end if][first time]. It stretches your reflection out into a horse-faced old schoolmarm. At least, that's how you look when you're making your horse-faced old schoolmarm face[only][if the steam is on-stage]. Steam rushes from its spout[end if]." Understand "button" or "cylinder" or "metal" or "spout" as the kettle. The reflection is part of the kettle. It is insignificant. The description of the reflection is "Maybe it looks a bit more like George on the cover of Rubber Soul, with shorter hair." Before doing anything other than examining when the current action involves the reflection: say "[take no time]It's just a reflection." instead. Instead of pushing the kettle: try switching on the kettle. The examine devices rule is not listed in any rulebook. [The kettle is the only device and its description tells you whether it's switched on.] Before inserting something into the kettle when the noun is not a liquid: say "You could try filling the kettle with water, but it won't really hold anything that isn't a liquid." instead. Before inserting the strainer into the kettle when the noun is not a liquid: say "[take no time]You almost put the strainer into the kettle before remembering that goes into the teapot instead." instead. [This tricks me, it tricks my testers, better catch it. The "when the noun is not a liquid" clause is just there to get it before the other rule in the "Before" rulebook. This is the sort of thing you do when you're short of sleep.] Check switching on the unplugged kettle: say "The kettle isn't plugged in." instead. Check switching on the kettle when the kettle is not filled with something: say "The kettle's button won't stay depressed when the kettle isn't filled with water." instead. Check switching on the kettle when the kettle is filled with hot water: say "The kettle immediately switches itself back off. The water must have boiled already." instead. After taking the kettle when the kettle was on the countertop: say "You lift the kettle from its [if the kettle is plugged-in]plugged-in [end if]base." The base is insignificant scenery on the countertop. The description of the base is "The base of the kettle plugs in to the wall and heats up the kettle itself. You almost never have to deal with it by itself; it just fades into the scenery until something draws your attention to it." Instead of plugging the base into something: try plugging the kettle into the second noun. Before putting the kettle on the base: try putting the kettle on the countertop instead. After putting the kettle on the countertop: say "You put the kettle back on its base." The steam is scenery. The description of the steam is "Steam rushes from the kettle's spout." Carry out switching on the kettle: The kettle steams in four minutes from now; The kettle boils in six minutes from now. At the time when the kettle steams: say "Steam begins to pour from the mouth of the kettle. It'll be boiling in a couple of minutes."; now the steam is in the kitchen. At the time when the kettle boils: say "The kettle switches itself off; the water must have boiled."; empty cold water from the kettle; fill the kettle with hot water; now the kettle is switched off; remove the steam from play. Section - Cutting the Bread Cutting it with is an action applying to two things. Understand "cut [something] with [something]" as cutting it with. Check cutting the loaf of bread when the player does not hold the knife: try silently taking the knife; if the player does not hold the knife, stop the action; say "You pick the bread knife up to cut the bread." Check cutting when the noun is not the loaf: say "The loaf of bread is what you want to cut[if the loaf of bread is not visible] (and you can't see it right now; perhaps it's in the breadbox?).[otherwise].[end if]" instead. Instead of cutting something with something when the second noun is not the knife: say "The bread knife is what's for cutting, and it's for cutting bread." Instead of cutting something with the knife: try cutting the noun. The block cutting rule is not listed in any rulebook. Check cutting when every untoasted bread slice is on-stage: say "You already have enough slices of bread." instead. Carry out cutting the loaf of bread: now the loaf is on the countertop; now a random off-stage untoasted bread slice is on the countertop. [Need to make sure the new bread slice is untoasted, because of the ghost toast slice and also any bread that may have been eaten] Report cutting the loaf of bread: say "A slice of bread separates itself from the loaf and topples to the countertop." Does the player mean cutting the loaf: it is very likely. Does the player mean cutting the loaf with the knife: it is very likely. Section - The Toaster The description of the toaster is "There's something cheerful about its rounded corners; it's like a metal oblong gumdrop[if the toaster is switched off]. Its lever is up[end if][if the toaster is switched on and something is in the toaster]. [A list of things in the toaster] [is-are of toaster contents] toasting in it[otherwise if something is in the toaster]. [A list of things in the toaster] [is-are of toaster contents] in it[end if]." To say is-are of toaster contents: if the number of things in the toaster is 1: say "is"; otherwise: say "are". [i for one welcome our new adaptive text overlords.] Understand "lever" as the toaster. Instead of pushing the toaster: try switching on the toaster. Instead of pushing the toaster to down: try switching on the toaster. [This catches "push lever down."] Instead of pushing the toaster to up: try switching off the toaster. [And this catches "push lever up."] Report inserting a bread slice into the toaster: say "[one of]You jam the bread into the toaster. A few crumbs flake off[or]You slide [the noun] into the toaster[stopping]." instead. Check inserting something into the toaster when the noun is not a bread slice: say "You can only toast bread in the toaster." instead. Check switching on the unplugged toaster: say "The lever refuses to catch; the toaster isn't plugged in." instead. Check switching on the toaster when the toaster contains nothing: say "There's nothing to toast in there." instead. After switching on the toaster: say "The lever slides down with a satisfying click, and the bread retreats to within the toaster." Carry out switching on the toaster: the toast pops in four minutes from now. At the time when the toast pops: say "The toast pops up with a ding!"; now every bread slice in the toaster is toasted; now the toaster is switched off. Check removing something from the switched on toaster: say "Your mother told you never to stick your fingers in the toaster. About this one thing you have always listened to her." instead. Check inserting a bread slice into the switched on toaster: say "You'll have to wait until the toaster pops." instead. Check switching off the toaster: say "Oh, there's no call to interrupt a good toast." instead. Check taking the toaster: say "No need to move the toaster." instead. Check switching on the toaster when a toasted bread slice is in the toaster: say "The toast is done already! You don't want to burn it." instead. Definition: a bread slice is toastered rather than untoastered if it is in the toaster. Before inserting a toastered bread slice into the toaster when an untoastered bread slice is visible: if an untoasted untoastered bread slice (called raw) is visible: try inserting raw into the toaster instead; otherwise: say "It looks like all the slices of bread you've cut either are toasted or already in the toaster!" instead. Section - Loose Tea and the Tea Strainer Instead of taking the loose tea: say "The tea would make a mess. Better to fill the tea strainer with it." Before inserting the loose tea into the tea strainer: try filling the tea strainer with the loose tea instead. Carry out filling the tea strainer with the loose tea: now the tea leaves are in the tea strainer. After filling the tea strainer with the loose tea: say "You scoop some tea leaves into the strainer." Instead of inserting something into the tea strainer: say "The tea strainer only holds tea." Check filling the tea strainer with something when the tea strainer hold something: say "The tea strainer is already filled with [the tea leaves]." instead. Before doing anything other than examining with the dry tea leaves: say "The leaves are happy in the tea strainer, longing only for the embrace of hot water in the teapot." instead. Before doing anything other than examining with the steeping tea leaves: say "You could leave the leaves to steep, or take the strainer from the teapot." instead. Before doing anything other than examining with the used tea leaves: say "These tea leaves have served their purpose, and are enjoying their retirement as a soggy mass that someone will deal with later." Section - The Teapot Instead of inserting anything into the teapot when the noun is not the tea strainer: say "To make tea, put the tea strainer full of tea leaves in the pot and fill it with hot water from the kettle." Instead of inserting the tea strainer into the teapot when the tea strainer does not contain the tea leaves: say "The tea strainer is empty!" Instead of filling the teapot with something when the second noun is not the hot water: say "Making tea requires hot water!" Instead of filling the teapot with hot water when the tea strainer is not in the teapot: say "You should put the strainer full of tea leaves into the teapot first." Every turn when the tea strainer is in the teapot and the teapot is filled with hot water and the dry tea leaves are in the tea strainer: say "The tea begins to steep in the teapot."; now the tea leaves are steeping; the tea steeps in two turns from now. At the time when the tea steeps: empty the hot water from the teapot; fill the teapot with hot tea. The hot tea has a number called steep count. Every turn when the teapot is filled with hot tea and the strainer is in the teapot: increase the steep count of the hot tea by 1; if the steep count of the hot tea is at least 3: say "The tea has steeped long enough! Better take out the strainer."; now the tea leaves are used. Understand "take out [something]" or "take [something] out" as taking. Section - Teacups Before inserting something into a teacup when the noun is not hot tea: say "The teacups are for filling with tea. Hot tea." instead. Before filling a teacup with something when the second noun is not hot tea: say "The teacups are for filling with tea. Hot tea." instead. Check filling a teacup when the noun is in the cabinet: say "You should take the teacup out of the cabinet before you fill it." instead. Definition: a teacup is parched if it is not filled with something. Before filling a teacup with something when the noun is filled with something or the noun is in the cabinet: [something like this is necessary or Inform will try to fill the same teacup over and over] if a visible parched teacup is not in the cabinet: let the target be a random visible parched teacup that is not in the cabinet; try filling the target with the second noun instead; otherwise if a parched teacup is in the cabinet: say "It looks like all the empty teacups are in the cabinet. Better take one out." instead; otherwise: say "You can't see any empty teacups." instead. Chapter - Some World-Modely Stuff Section - Plugging stuff Understand "plug [something] in" or "plug in [something]" or "plug [something]" or "plug [something] in [something]" as plugging it into. For supplying a missing second noun when plugging: now the second noun is the wall. Definition: A thing is plugged-in rather than unplugged if it is inserted into the wall. [And let's just make those the only outlets] [Before filling the plugged-in kettle with water: say "(first unplugging the kettle, then plugging it back in afterward)[command clarification break]"] [No, this is stupid; the base is what plugs in, and you don't unplug that to fill it. Implementing the base and kettle separately would be *madness*.] Definition: A thing is pluggable rather than unpluggable if it encloses a PS-plug. The printed name of a PS-plug is usually "plug of [the random thing incorporating the item described]". Understand "plug" as a PS-plug. Understand "of [something related by reversed incorporation]" as a PS-plug. Instead of examining a PS-plug: [this preempts a rule from Plugs and Sockets] say "It's a plug; when plugged into an outlet it allows electricity to flow to a device. It is [if the attachment of the noun is nothing]unplugged[else]plugged into [the holder of the attachment of the noun][end if]." Section - Liquids and Vessels [What was I thinking?] A liquid is a kind of thing. A liquid is scenery. Some cold water is a liquid in the Kitchen. The description of the cold water is "Cool, clear water." Understand "cool" or "clear" as cold water. Some hot water is a liquid. The description of the hot water is "Hot water, ready to be poured over tea leaves to make tea." Some hot tea is a liquid. The description of the hot tea is "Tea. No more need be said." [Some cold tea is a liquid.] Vessel-containment relates various things to one liquid (called the filling). The verb to be filled with implies the vessel-containment relation. Before doing something when the current action involves the cold water and nothing is filled with the cold water and the sink is switched off: say "(first switching on the sink)[command clarification break]"; try silently switching on the sink. To fill (vessel - a thing) with (fluid - a liquid): now the vessel is filled with the fluid; now the fluid is in the kitchen. To empty (fluid - a liquid) from (vessel - a thing): now the vessel is not filled with the fluid; unless something is filled with the fluid or the fluid is the cold water, remove the fluid from play. After examining a liquid: if something is filled with the noun, say "Currently there is [noun] in [the list of things filled with the noun]." A thing can be fillable or unfillable. A thing is usually unfillable. The kettle is fillable. The teapot is fillable. The tea strainer is fillable. A teacup is fillable. The rice cooker is fillable. Filling is an action applying to one thing. Understand "fill [something]" as filling. Filling it with is an action applying to two things. Understand "fill [something] with [something]" as filling it with. Understand "fill [something] up with [something]" as filling it with. Understand "pour [something] in/into [something]" as inserting it into. [This is going to get redirected to filling anyway.] Filling it from is an action applying to two things. Understand "fill [something] from [something]" as filling it from. Understand "fill [something] up from [something]" as filling it from. Before inserting a liquid into something: try filling the second noun with the noun instead. First before inserting something into something when the noun is filled with something and the second noun is fillable: add the noun to the things encountered, if absent; try inserting the filling of the noun into the second noun instead. [This should catch "pour kettle into teapot"] Check filling it with when the noun is unfillable: say "That's not something you can fill up." instead. Check filling the tea strainer with something when the second noun is not the loose tea: say "The strainer is for holding tea." instead. Check filling it with when the second noun is not a liquid and the noun is not the tea strainer: say "You can't fill [the noun] with [the second noun]." instead. Check filling when the noun is unfillable: say "That's not something you can fill." instead. Check filling it with when the noun is filled with something: say "[The noun] is already filled with [ filling of the noun]." instead. Carry out filling it with when the noun is fillable: if the second noun is a liquid: fill the noun with the second noun; otherwise: now the noun is filled with the second noun. Report filling it with: say "You fill [the noun] up with [second noun]." Carry out filling the teapot with hot water when the kettle is filled with hot water: empty the hot water from the kettle. Before filling something from the sink: if the sink is switched off: say "(first switching the sink on)[command clarification break]"; now the sink is switched on; try filling the noun with cold water instead. Before filling the tea strainer from the tea tin: try filling the tea strainer instead. Check filling it from when the second noun is unfillable: say "The [second noun] won't hold anything that you could fill something up with." instead. Check filling it from when the second noun is fillable and the second noun is not filled with something: say "[The second noun] is empty." instead. Carry out filling it from: try filling the noun with the filling of the second noun. A thing has a thing called the preferred filling. [This assigns a preferred liquid to everything, but hopefully it won't matter.] The preferred filling of the kettle is cold water. The preferred filling of the teapot is hot water. The preferred filling of the strainer is loose tea. The preferred filling of a teacup is hot tea. The preferred filling of the rice cooker is cold water. Instead of filling something: [this needs to be "instead" rather than "carry out" so an unsuccessful "fill teapot" doesn't run the after rules and discover a tchotchke] if the preferred filling of the noun is not enclosed by the kitchen: say "You don't have any [preferred filling of the noun] to fill [the noun] with."; otherwise: try filling the noun with the preferred filling of the noun. Section - Miscellaneous Actions Instead of going: say "No need to go anywhere yet; you have enough time to wait for Lily." Instead of singing: say "[radio text] you sing quietly." [radio text is capitalized and with a comma in quotation marks] Understand the command "read" as something new. Reading is an action applying to one thing. Understand "read [something]" as reading. Check reading when the noun is not The Complete Poems of Elizabeth Bishop: say "[The noun] doesn't make great reading." instead. Report reading The Complete Poems of Elizabeth Bishop: say "[60 secs]You read a bit of the poem about the moose. That's your favorite." Understand "* [text]" as a mistake ("Thanks for the comment!"). Understand "xyzzy" or "plugh" or "plover" as a mistake ("Fourth-wall breaking is Lily's job."). The loaf of bread is edible. A bread slice is always edible. Instead of eating the loaf of bread: say "Oh dear, cut it first!" Instead of eating an untoasted bread slice: say "You're not in enough of a hurry to eat plain untoasted bread." After eating a toasted bread slice: now the noun is untoasted; [since it's going back off-stage to be recycled the next time you cut bread] say "You eat plain toast. Not that appetizing, but you usually don't get the butter and jam out until Lily wakes up. [pb](Too much to implement, she says. Sometimes she really makes no sense.)" The block drinking rule is not listed in any rulebook. [these are carry out and after rules to allow the noticing and memory rules to take effect] Carry out drinking something when the noun is filled with a liquid: if the filling of the noun is cold water: say "You're not thirsty enough to drink water from [the noun]."; otherwise: try drinking the filling of the noun. After drinking hot tea: say "Oh, you can wait for Lily." After drinking cold water: say "You stick your head under the tap and drink some cold water. Refreshing." After drinking a liquid: say "[The noun] doesn't seem that appetizing; why not wait to drink some tea with Lily?" Section - Carrying Capacity [We don't want "take all" to break things, but we do want to allow things like "take all the teacups," so we'll set carrying capacity at 4.] The carrying capacity of Maria is 4. This is the only announce items from the multiple object lists when not exceeding carrying capacity rule: unless (taking or removing) and (the number of entries in the multiple object list plus the number of things held by the player) is greater than the carrying capacity of the player: abide by the announce items from multiple object lists rule. The only announce items from the multiple object lists when not exceeding carrying capacity rule is listed instead of the announce items from multiple object lists rule in the action-processing rules. Corrected grabbiness is a truth state that varies. Corrected grabbiness is false. [Flags whether we've already printed the correction once this turn.] Every turn: now corrected grabbiness is false. First before taking when the number of entries in the multiple object list plus the number of things held by the player is greater than the carrying capacity of the player: take no time; if corrected grabbiness is false: say "You can't hold all those things, and you won't need to pick so many things up to make tea and toast."; now corrected grabbiness is true; stop the action. [This won't print anything if corrected grabbiness is true; that's deliberate/ we only want to print the message once per multiple item take.] First before removing when the number of entries in the multiple object list plus the number of things held by the player is greater than the carrying capacity of the player: take no time; if corrected grabbiness is false: say "You can't hold all those things, and you won't need to pick so many things up to make tea and toast."; now corrected grabbiness is true; stop the action. Section - Revisions for Examining Containers After examining when the noun is filled with something (this is the describe the fillings rule): say "[The noun] is filled with [filling of the noun]."; now examine text printed is true; continue the action. The describe the fillings rule is listed before the list attached things when examining receiver or inserter rule in the after rulebook. [Otherwise the examining receiver or insterter rule cuts off the describe the fillings rule when, say, the kettle is filled with water] Carry out examining a container (this is the don't always examine containers rule): unless the noun is the toaster or the noun is the tea tin or the noun is a teacup: if the noun is not filled with something or the noun contains something: follow the examine containers rule. The don't always examine containers rule is listed instead of the examine containers rule in the carry out examining rulebook. Chapter - Describing the Room Section - Prominence-Ordered Lists [trust me, you do not want to see the horrible kludges I had in place before I figured the following trick out] To say A prepared list: let T be indexed text; now T is "[a prepared list]"; replace character number 1 in T with character number 1 in T in upper case; say T. To say The prepared list: let T be indexed text; now T is "[the prepared list]"; replace character number 1 in T with character number 1 in T in upper case; say T. To say A list of (OS - description of objects): let T be indexed text; now T is "[a list of OS]"; replace character number 1 in T with character number 1 in T in upper case; say T. To say A prominence-ordered (catalogue - list of things): now everything is not marked for special listing; repeat with the item running through the catalogue: now the item is marked for special listing; register things marked for listing; repeat through the Table of Scored Listing: now the assigned score entry is (0 - the prominence of the output entry); [rather than try to cajole Complex Listing into saying things with the biggest score first, since "invert scored listing" isn't really explained in the documentation, we just make the score negative so ascending order works.] say "[A prepared list]". To say The prominence-ordered (catalogue - list of things): now everything is not marked for special listing; repeat with the item running through the catalogue: now the item is marked for special listing; register things marked for listing; repeat through the Table of Scored Listing: now the assigned score entry is (0 - the prominence of the output entry); [as above] say "[The prepared list]". Section - Major Things and Their Descriptions A thing can be major. The sink, the cabinet, the countertop, and the table are major. [Big loci for writing the room description.] After writing a paragraph about a major thing (called the fixture): now everything enclosed by the fixture is mentioned. For writing a paragraph about the countertop: if a significant thing is on the countertop: say "[countertop things description]"; otherwise if something is on the countertop: say "The countertop is bare of anything you need right now."; otherwise: say "For some reason the countertop is completely bare." To say countertop things description: let L be the list of significant unpluggable things on the countertop; [If I don't create a temporary variable the is-are of phrase isn't called, for reasons I do not understand] say "[if a significant unpluggable thing is on the countertop][A prominence-ordered L] [is-are of L] scattered on the counter. [end if][If a pluggable thing is on the countertop][The prominence-ordered list of pluggable things on the countertop] sit[s of the list of pluggable things on the countertop] by the wall outlet.[end if]" Carry out examining the countertop: say "The countertop has a few nicks from vegetables sliced straight on it when no cutting board was at hand, a faint brown tinge from a teabag left to bleed out, all the little marks of inhabitation. [if something significant is on the countertop][countertop things description][otherwise][line break]"; rule succeeds. [These have to be carry out rules rather than instead rules so tchotchkes in the vicinity can get noticed, and the rules have to succeed so we can go to the After rulebook where tchotchkes get noticed.] To say s of (catalogue - a list of things): if the number of entries in the catalogue is 1, say "s". To say is-are of (catalogue - a list of things): if the number of entries in the catalogue is 1: say "is"; otherwise: say "are". To say cabinet things description: if the cabinet are open: if a significant thing is in the cabinet: say "On the cabinet shelves [is-are a list of significant things in the cabinet]."; otherwise: say "The cabinet is full of glasses, bowls, tiny trays[first time], an inexplicable rubber koosh[only]; the sort of thing you might need for another meal[first time]. Well, not the koosh[only]."; now the koosh is significant; [don't want to notice it again] For writing a paragraph about the open cabinet: say cabinet things description. For writing a paragraph about the closed cabinet: say "The closed cabinets are above the countertop." Carry out examining the closed cabinet: say "Perhaps when brand new the cabinets gleamed white, but years of cooking smoke and steam have dulled their shine. A relief, really."; rule succeeds. Carry out examining the open cabinet: say cabinet things description; rule succeeds. Report opening (this is the reveal significant things in the interior rule): if the noun is an opaque container and a significant thing is in the noun and the noun does not enclose the player: let L be the list of significant things in the noun; say "You open [the noun]. In [it-them of the noun] [is-are a list of significant things in the noun]." instead. The reveal significant things in the interior rule is listed instead of the reveal any newly visible interior rule in the report opening rulebook. For writing a paragraph about the table: if a significant thing is on the table: let L be the list of significant things on the table; say "[The list of significant things on the table] [is-are of L] on the table."; otherwise: say "The table awaits its tea and toast." Carry out examining the table: say "It's the light brown wooden table from Lily's parents['] kitchen. They got a new one and it was nicer than anything you had. [run paragraph on]"; carry out the writing a paragraph about activity with the table; rule succeeds. For writing a paragraph about the sink: if the sink is switched on: say "Water is rushing from the sink's faucet."; otherwise: say "The sink is off." Carry out examining the sink: carry out the writing a paragraph about activity with the sink instead. Section - What Things Are Near A thing has a thing called the home. The home of a thing is usually the void. The home of the stove is the sink. When play begins: repeat with the fixture running through major things: now the home of the fixture is the fixture; repeat with the item running through things enclosed by the fixture: now the home of the item is the fixture; repeat with the item running through things enclosed by the player: now the home of the item is the player. To decide what thing is the vicinity of (item - a thing): if the item is off-stage: decide on the void; if the item is water: if nothing is filled with water: if the sink is switched on: decide on the sink; otherwise: decide on the void; otherwise: decide on a random thing that is filled with water; if the item is a liquid: decide on a random thing that is filled with the item; if the player encloses the item: decide on the player; if the item is a major thing: decide on the item; if a major thing (called fixture) encloses item: decide on the fixture; if something (called the enclosure) encloses item: decide on the enclosure; decide on the home of the item. Propinquity relates a thing (called X) to a thing (called Y) when Y is the vicinity of X. The verb to be near implies the propinquity relation. Nearishness relates a thing (called X) to a thing (called Y) when the vicinity of Y is the vicinity of X. The verb to be nearish implies the nearishness relation. Section - Prominence The stove is insignificant. A PS-socket is always insignificant. A PS-plug is always insignificant. The void is insignificant. [I seem to have done something odd that causes it to appear in the room description otherwise.] The steam is insignificant. The clock radio is insignificant. Lily is insignificant. [Say it ain't so!] A thing has a number called prominence. The prominence of a thing is usually 1. Definition: A thing is prominent if its prominence is 2 or more. [Prominent, prominenter, prominentest.] When play begins: repeat with the item running through insignificant things: now the prominence of the item is 0; repeat with the item running through major things: now the prominence of the item is 2. To decide what number is the salience of (item - a thing): if something that is near the item is prominenter than the item: decide on the prominence of the prominentest thing that is near the item; decide on the prominence of the item. A thing can be queued for description. After choosing notable locale objects: now everything is not queued for description; repeat with the item running through insignificant things: now item is queued for description; set the locale priority of the item to 0; let the counter be a number; now the counter is 1; while a thing enclosed by the location is not queued for description: let the candidate be the prominentest ((thing enclosed by the location) that is not queued for description); if the candidate is enclosed by something not queued for description (called the holder): now the candidate is the holder; if the vicinity of the candidate is not queued for description: now the candidate is the vicinity of the candidate; set the locale priority of the candidate to the counter; now the candidate is queued for description; now everything enclosed by the candidate is queued for description; now everything near the candidate is queued for description; increment the counter. Section - Discovering Tchotchkes [Warning; Don't ever call a kind of thing "tchotchkes." It's too hard to spell.] The tchotchke discovered is a thing that varies. The tchotchke discovered is the void. [Just a dummy item.] First after when a visible insignificant tchotchke is nearish the noun or a visible insignificant tchotchke is nearish the second noun: if a random chance of 1 in 3 succeeds: let L be the list of visible insignificant tchotchkes that are nearish the noun; add the list of visible insignificant tchotchkes that are nearish the second noun to L; sort L in random order; now the tchotchke discovered is entry 1 of L; now the tchotchke discovered is significant; say the discovery text for the tchotchke discovered; continue the action. First before when the noun is an insignificant tchotchke (called the discovery): now the discovery is significant. [If the player's already messing around with something we don't want it to be discovered.] First before when the second noun is an insignificant tchotchke (called the discovery): now the discovery is significant. To say the discovery text for (item - a thing): say "While [the current action] you notice [an item][vicinity text for the item]." To say the discovery text for (item - Complete Poems of Elizabeth Bishop): say "There's Lily's Elizabeth Bishop book[vicinity text for the Complete Poems of Elizabeth Bishop]." To say the discovery text for (item - Lily's wallet): say "Lily's wallet is[if the vicinity of Lily's wallet is the void] there[otherwise][vicinity text for Lily's wallet][end if], lying open to display her UWM ID. Her stare is grave, her hair pulled back." To say the discovery text for (item - koosh): say "There's a koosh right there!" To say the discovery text for (item - rice cooker): say "You bump up against the rice cooker[vicinity text for the rice cooker]." To say the discovery text for (item - chopster): say "You almost knock the rubber seal from Chopster down. It's drying[vicinity text for the Chopster] with all the rest of the Chopster pieces." To say vicinity text for (item - a thing): if the item is on the vicinity of the item or the vicinity of the item is the floor: say " on [the vicinity of the item]"; otherwise if the item is in the vicinity of the item: say " in [the vicinity of the item]"; otherwise if the vicinity of the item is the void: do nothing; otherwise: say " near [the vicinity of the item]" Chapter - Mission-Critical Things [Mission-critical stuff is what you need to make tea and toast. The mission-criticalities concern whether they've fulfilled their role, whether they aren't in a position to fulfill their role yet, or whether they need to be used now.] A mission-criticality is a kind of a value. The mission-criticalities are irrelevant, pending, critical, and fulfilled. A thing can be mission-irrelevant or mission-critical. A thing is usually mission-irrelevant. The kettle, the toaster, the loose tea, the tea strainer, the hot water, the teapot, the hot tea, the bread knife, the cold water, and the loaf of bread are mission-critical. A teacup is always mission-critical. A bread slice is always mission-critical. To decide what mission-criticality is the mission status of (item - a thing): decide on the mission-criticality produced by the mission assessment rules for the item. Section - Specific Mission Assessment Rules and Prompting Rules [These rules are together to make it easier to keep track of them. It's a lot easier to see how to prompt something when you can see how it's assessed.] Mission assessment rules is a thing based rulebook producing a mission-criticality. Prompting something is an activity on things. For prompting a thing (called the item): say "It seems to you that there's something you can do with [the item]...." [Hopefully this will never actually print.] First for prompting a thing (called the item) when the player cannot see the item: if the item is in something (called the sheath): say "It occurs to you that [the item] [is-are] in [the sheath]. You might need it."; otherwise: say "There's [an item] around here somewhere, isn't there?" A mission assessment rule for a mission-irrelevant thing: rule succeeds with result irrelevant. A mission assessment rule for the toaster: if the toaster is switched on or a toasted bread slice is on-stage: [if the toaster is toasting or toast is made, nothing more need be done] rule succeeds with result fulfilled; otherwise if every bread slice is off-stage: [nothing to toast yet] rule succeeds with result pending; otherwise: rule succeeds with result critical. For prompting the toaster: if the toaster is unplugged: say "You'll have to plug in the toaster."; otherwise unless a bread slice is in the toaster: say "You'll want to put bread in the toaster."; otherwise: say "The toaster is ready to be switched on." A mission assessment rule for the kettle: if the kettle is switched on or the hot water is on-stage or the hot tea is on-stage: [the kettle has made its hot water or is doing so] rule succeeds with result fulfilled; otherwise: rule succeeds with result critical. For prompting the kettle: if the kettle is not filled with something: say "You'll have to fill the kettle up with water."; otherwise if the kettle is unplugged: say "You'll have to plug in the kettle."; otherwise: say "The kettle is ready to be switched on." A mission assessment rule for the cold water: if the kettle is filled with cold water or the mission status of the kettle is fulfilled: rule succeeds with result fulfilled; otherwise: rule succeeds with result critical. For prompting the cold water: say "You'll have to fill the kettle up with water." A mission assessment rule for the loose tea: if the tea leaves are in the tea strainer: rule succeeds with result fulfilled; otherwise: rule succeeds with result critical. For prompting the loose tea: say "There isn't any tea in the tea strainer! You'll have to put the loose tea in the strainer." A mission assessment rule for the tea strainer: if the tea leaves are in the strainer and the strainer is in the teapot: rule succeeds with result fulfilled; if the hot tea is on-stage: rule succeeds with result fulfilled; rule succeeds with result critical. [could've used this format instead of the "otherwises" in the above rules too.] For prompting the tea strainer: if the tea leaves are not in the tea strainer: say "The tea strainer doesn't have any tea in it! You'll have to fill the tea strainer up."; otherwise: say "You'll have to put the strainer in the teapot." A mission assessment rule for the hot water: if the hot tea is on-stage: rule succeeds with result fulfilled; if the teapot is filled with hot water: rule succeeds with result fulfilled; if the hot water is off-stage: rule succeeds with result pending; if the strainer is not in the teapot: rule succeeds with result pending; rule succeeds with result critical. For prompting the hot water: say "You can pour the hot water into the teapot to make tea." A mission assessment rule for the teapot: if the hot tea is on-stage: rule succeeds with result fulfilled; if the teapot is filled with hot water and the strainer is in the teapot: rule succeeds with result fulfilled; if the hot water is off-stage: rule succeeds with result pending; if the tea leaves are not in the strainer: rule succeeds with result pending; rule succeeds with result critical. For prompting the teapot: if the tea strainer is not in the teapot: say "You'll have to put the strainer in the teapot."; otherwise: say "The teapot is ready to be filled with hot water." A mission assessment rule for the hot tea: if the hot tea is off-stage: rule succeeds with result pending; if a teacup is filled with hot tea: rule succeeds with result fulfilled; rule succeeds with result critical. For prompting the hot tea: say "The hot tea is ready to pour into a teacup." A mission assessment rule for the bread knife: if a bread slice is on-stage: rule succeeds with result fulfilled; rule succeeds with result critical. For prompting the bread knife: say "You could cut some bread with the bread knife." A mission assessment rule for the loaf of bread: if a bread slice is on-stage: rule succeeds with result fulfilled; rule succeeds with result critical. For prompting the loaf of bread: say "You could cut some bread." A mission assessment rule for a teacup: if the hot tea is off-stage: rule succeeds with result pending; if a teacup is filled with hot tea: rule succeeds with result fulfilled; rule succeeds with result critical. For prompting a teacup: say "The teacup longs to be filled with tea." A mission assessment rule for a bread slice: if every bread slice is off-stage: rule succeeds with result pending; if a bread slice is toasted: rule succeeds with result fulfilled; if a bread slice is in the toaster: rule succeeds with result fulfilled; rule succeeds with result critical. For prompting a bread slice: say "You could put a slice of bread in the toaster." Section - Doing Some Stuff With Mission Ratings A thing can be promoted. A thing is usually not promoted. [Has it been given a prominence bump due to mission-criticality?] Last every turn (this is the promote critical things rule): repeat with item running through mission-critical things: if the mission status of the item is critical and the item is not promoted: increase the prominence of the item by 2; now the item is promoted; if the mission status of the item is fulfilled and the item is promoted: decrease the prominence of the item by 2; now the item is not promoted. When play begins: follow the promote critical things rule. Definition: a thing (called X) is primed if the mission status of X is critical. Section - Is Our Player Progressing? [This is a big list of things the player can do to progress. Not entirely happy with that.] Opening the breadbox is progressing. Cutting the loaf of bread is progressing. Plugging is progressing. [For some reason the action is getting evaluated as "plugging the toaster into nothing" but plugging stuff in is always progress, and if something else gets added that isn't productive to plug in, well, at least it shows the player has the concept of plugging something in.] Inserting a bread slice into the toaster is progressing. Switching on the toaster is progressing. Filling the kettle with cold water is progressing. Switching on the sink is progressing. Switching on the kettle is progressing. Filling the tea strainer with loose tea is progressing. Inserting the strainer into the teapot is progressing. Filling the teapot with hot water is progressing. Filling a teacup with hot tea is progressing. Putting a teacup on the table is progressing. Taking a mission-critical thing is progressing. The clue count is a number that varies. The clue threshold is a number that varies. The clue threshold is 5. After progressing (this is the reset the clue count rule): now the clue count is -1; [this will get set back to 0 in the every turn rules] continue the action. The reset the clue count rule is listed first in the after rulebook. [Necessary so it doesn't get cut off when there's another after rule.] Every turn (this is the increment the clue count rule): increment the clue count. Asking for help is an action out of world applying to nothing. Understand "help" or "hint" or "hints" or "walkthru" or "walkthrough" as asking for help. Report asking for help: if something on-stage is primed: carry out the prompting activity with a random on-stage primed thing; otherwise: say "It looks as if there isn't anything vital for you to do right now. You might have to wait for something to happen, or maybe you've made your tea and toast already. You might try looking around at things while you wait, or thinking about things." Chapter - Lily, Time, and the Radio When play begins: say "As you slip out of bed, Lily murmurs and settles back into sleep. A few minutes till the alarm clock goes off. Time enough to make some". [followed by the title, "Tea and Toast"] When play begins: now seconds_per_turn is 30. [Need to allow enough time to do everything.] Before examining or looking: take 5 seconds. Before waiting: take 60 seconds. The time of day is 6:55 AM. When play begins: now the left hand status line is "Tea and Toast"; now the right hand status line is "[time of day]". At 7:00 AM: say "From the bedroom comes a brief burst from the clock radio, [radio text] which abruptly cuts off, like a clock radio whose snooze button has been slapped."; now the clue threshold is 4. At 7:07 AM: say "The clock radio blares [radio text] then cuts off again. You can hear Lily shambling about the bedroom."; now the clue threshold is 2. At 7:09 AM: say "Lily drags herself in, brushing the hair back from her eyes. [if hot tea is on-stage]'Ooh, tea, lovely,' she says. 'Just what I need to make me human this morning.'[otherwise]'Making tea, darling?' she says. 'How nice.'[end if][if a toasted bread slice is on-stage]'And toast too!' she says. 'My cup runneth over! Only I hope not, because that'd be messy and hot.' Though that doesn't sound like the worst thing.[end if]"; end the story finally saying "Ah, tea and toast". To say radio text: say "[one of]'Meow, meow, kitties,'[or]'Yes, but it's all wrong,'[or]'I'm sweating so much,'[or]'Leave your body alone,'[or]'I don't find it irritating,'[or]'White horses and ladies by the score,'[or]'The taste of your skin,'[in random order]". The clock radio is scenery in the Kitchen. Instead of doing anything when the current action involves the clock radio: say "The clock radio is in the bedroom. Best to leave it be." Lily is a woman in the Kitchen. Lily is scenery. Instead of doing anything when the current action involves Lily: say "Lily will emerge when she emerges and not before." Chapter - Memories [hoo boy.] Section - Specific Memories and Their Associations To say pb: say paragraph break. Coveredness is a kind of value. The coverednesses are covered, uncovered, and used up. A memory is a kind of object. Some memories are defined by the Table of Reminiscence. Table of Reminiscence memory memory-text coveredness [this is a bit of a misnomer, as it records not only whether a memory is uncovered but whether it's used up] Bus 1 "It was at the bus stop you first saw her. The first week, you stole glances as you walked past. The second week, you tried to figure out if she was stealing glances back. The third week, you decided to start taking the bus to work... even though it'd be a bit of a walk back." uncovered Bus 2 "A week in and she was definitely eyeing you across the bus aisle. Talking to you, she wasn't. You took a deep breath to say... 'Some weather, huh?' God no. You puffed the breath into your cheeks, crossed your eyes, and held it till she looked up again. She burst out laughing. 'Maria,' she'd say to you later, 'I never even knew being ladylike was a thing until I met someone who was so not it." covered Bus 3 "You thought you'd been talking five minutes and you were halfway to Whitefish Bay. You yanked the rope for the next stop and walked off, trying to look purposeful till the bus was out of sight. Then you dashed across the street for the next bus back. Lily was on it. 'You rode past your stop too?' she said." covered Sliced Bread "'Why does everyone say [']The best thing since sliced bread?[']' she says. 'Bread you slice yourself is so much nicer.'[pb]'Maybe they got tired of the crumbs?'" uncovered Semiotics of the Toaster "'The toaster,' she intones. 'Perfect rectangular slots presuppose perfect rectangular bread, uniformly thick. The bread itself is made by the toaster as much as by the ovens it's baked in.'[pb]'It's not the only thing that's uniformly thick around here, hey.'" uncovered Toaster Oven "You've never quite understood why you don't have a toaster oven. 'The toaster's so sleek and shiny,' she says. 'There's something about a thing that's designed for one thing and does it well,' she says. 'It'd be a disambiguation nightmare,' she says. Sometimes you can't understand her at all." uncovered Toast Conflict "She loves lumpy hand-cut bread in thick slices and the smooth clean toaster they don't fit into. But when you pointed that out she seemed genuinely disturbed, like she'd just uncovered a hard truth about the world." covered O Breath "She read to you from the Elizabeth Bishop book once. Beneath that loved / and celebrated breast. 'Don't know why what's beneath is so interesting,' she said, 'it's....' She moved her hand up to cup you. You never did find out how the poem ended." uncovered O Snap "She likes the tea ball strainer because it makes the tea just right. You like the tea ball strainer because you can squeeze it open and get her nose." uncovered Chopping Onions "It had been an awful day and you were chopping onions and the tears became real tears. Then she was there, murmuring, 'These old tears in the chopping-bowl.'[pb]'Will you stop quoting shit and just hold me?'[pb]'I'm sorry. I'm sorry.' She put her arms around you and laid her head on your shoulder. The tears ran into her hair." uncovered Varieties of Tea "Tea was always just tea to you -- hot, strong, a little swampy. But Lily luxuriates in tea. 'Darjeeling, Constant Comment, Lapsang Souchong,' she says, her eyes closed.[pb]'Aren't you Orientalizing?'[pb]'Laaaap-sannng Soouuu-chong. I'm in a place your cruel words can't reach.[pb]She's learned to make sure the one she wants for breakfast is out where you'll use it." uncovered The Tea Bag "Lily is quite understanding about tea bags, really. Sometimes you're just too tired for more than a quick boil and steep. And you've learned that the other kind of tea really can be nicer." uncovered Twenty Questions "'Is it bigger than a breadbox?' she asks.[pb]'I'd never have known how big that was till you brought that breadbox here.'[pb]'It's a little bigger than a loaf of bread, you silly.'" uncovered Fortune "You suddenly freeze, staring intently into her teacup. 'Outlook hazy,' you say at last. 'I'll need to read your palm.'[pb]'It'd be a little more convincing if you didn't quote the Magic 8 Ball,' she says. But she holds your hand out.'[pb]'I see that you aaaaarrreee... very ticklish!' and you skitter her fingers in her palm. She shrieks and tries to twist away, but you've got her hip, and her ribs, and she collapses to the floor." uncovered Grading "She's sitting at the table, drifts of papers around her. 'Oh no oh no oh no oh fuck you,' she mumbles to them. 'You think you're connecting to the students,' she says. 'That there's some spark behind those stares. And then you find out that you've been wasting your sweetness on the desert air, because they don't seem to have understood the simplest thing I've said. What am I doing with my life?'" uncovered Night "Her absence awakens you. Diamond-shaped slices of moonlight on the floor. She's standing in the kitchen, eyes closed. She murmurs, 'I can't stop thinking about it.' Her back is unyielding as you rub it. 'Can't stop turning it over in my mind. Why did she let that asshole abuse me like that?' You rub gently then firmly, but she stays hunched and rigid." uncovered Form and Function "'The red double-decker teapot. Why?'[pb]'I had an Italian teapot once,' she says. 'Chic as anything, but the spout dribbled. Say what you will about the English, they know how to drink tea.' She scoots it across the table like a kid with a truck. 'Anyway it's cute.'" uncovered Kooshie Koo "She's absently rolling the koosh in her palm as she reads. Its rubber tendrils slip through her fingers like hair. Like your hair. You can't stop watching." uncovered Chopstering "'This is called a Chopster?' you say. 'That's the greatest name ever.'[pb]'It's great for little chop-up jobs. Dressings and tiny batches of pesto.'[pb]'Couldn't hear you, I'm too busy saying Chopster Chopster Chopster. Oh listen to that cute little whirr! I'm in love.'[pb]And it turns out it's just right for the little batches you bring home from the supermarket." uncovered Table of Associations [which memories are associated with which other memories; doing each association as a separate row of the table because lists are hogs] prompt associated memory associated thing a memory a memory a thing Bus 1 Bus 2 -- Bus 1 -- tea tin Bus 1 -- teapot Bus 2 Bus 3 -- Bus 2 -- tea tin Bus 2 -- teapot Bus 2 -- kettle [because making faces] Bus 2 -- reflection [even more so] Bus 3 -- tea tin Bus 3 -- teapot Sliced Bread -- bread knife Sliced Bread -- loaf of bread Sliced Bread -- bread slice [this may not even work, because bread slices are a kind of thing and I don't know how to get an anonymous instance] Sliced Bread Semiotics of the Toaster -- Sliced Bread Toast Conflict -- Semiotics of the Toaster Sliced Bread -- Semiotics of the Toaster Toast Conflict -- Semiotics of the Toaster Toaster Oven -- Semiotics of the Toaster -- Bread Slice Semiotics of the Toaster -- Toaster Toaster Oven Semiotics of the Toaster -- Toaster Oven Toast Conflict -- Toaster Oven -- Toaster Toast Conflict Sliced Bread -- Toast Conflict Semiotics of the Toaster -- Toast Conflict Toaster Oven -- Toast Conflict -- loaf of bread Toast Conflict -- bread slice Toast Conflict -- toaster O Breath -- Complete Poems of Elizabeth Bishop O Breath Varieties of Tea -- [Varities of Tea was a bit sexy before I thought better of it] O Snap -- tea strainer O Snap Bus 2 -- [because goofiness? eh] O Snap Fortune -- Chopping Onions -- Complete Poems of Elizabeth Bishop [it's an Adrienne Rich poem, actually] Chopping Onions -- countertop Chopping Onions Night -- Chopping Onions -- bread knife [knives is knives] Varieties of Tea -- tea tin Varieties of Tea -- tea leaves Varieties of Tea -- loose tea Varieties of Tea -- tea strainer Varieties of Tea -- teapot Varieties of Tea -- hot tea Varieties of Tea The Tea Bag -- Varieties of Tea O Breath -- The Tea Bag -- tea tin The Tea Bag -- tea leaves The Tea Bag -- loose tea The Tea Bag -- tea strainer The Tea Bag -- teapot The Tea Bag -- hot tea The Tea Bag -- countertop [tea bag stain in description] The Tea Bag Varieties of Tea -- Twenty Questions -- breadbox Twenty Questions -- loaf of bread Fortune -- tea leaves Fortune -- teacup Fortune -- hot tea Fortune O Snap -- [goofiness, definitely] Grading -- table Grading Night -- Night -- floor Night Chopping Onions -- Night Grading -- Form and Function Toaster Oven -- Form and Function Toast Conflict -- Form and Function The Tea Bag -- Toaster Oven Form and Function -- Toast Conflict Form and Function -- The Tea Bag Form and Function -- Form and Function -- teapot Bus 1 -- Lily's wallet Bus 2 -- Lily's wallet Bus 3 -- Lily's wallet Grading -- Lily's wallet [university stuff] Night -- Lily's wallet Kooshie Koo -- koosh Kooshie Koo Grading -- [that's what she's reading] Kooshie Koo O Breath -- [sexiness AND reading; this should be extra-strength if I implement strength] [no reverse connection in case the koosh is undiscovered] Chopstering -- chopster Chopstering Toaster Oven -- [again, no reverse connection] Table of Uncovering [which memories uncover which memories] trigger unlockable Bus 1 Bus 2 Sliced Bread Toast Conflict Semiotics of the Toaster Toast Conflict Bus 2 Bus 3 Section - Free Association The free association rules are a rulebook producing an object. We need prompting is a truth state that varies. The thing to be prompted is a thing that varies. The memory threshold is a number that varies. The memory threshold is 6. Memory chosen for the tchotchke is a truth state that varies. [Measures whether we've found a memory associated with the tchotchke uncovered. If we haven't, then we don't want to foreclose any other memory. We could just check to see whether there's a memory that has a high enough score but that would require running through memories an extra time.] Definition: A memory is available if the coveredness of it is uncovered. Every turn (this is the free association rule): let the chosen memory be the object produced by the free association rules; if the chosen memory is not nothing: now the last memory is the chosen memory; say "[italic type][memory-text of the chosen memory][roman type][paragraph break]"; now the coveredness of the chosen memory is used up; repeat through the Table of Uncovering: if the trigger entry is the chosen memory and the coveredness of the unlockable entry is covered: now the unlockable entry is uncovered; now the memory threshold is 6; otherwise: if the current action is thinking or the current action is thinking about something: say "Nothing comes to mind."; if the memory threshold is at least 2: decrement the memory threshold; if we need prompting is true: carry out the prompting activity with the thing to be prompted; now the clue count is the clue threshold minus 3; [give the player a break from clues after issuing one] now the things encountered is {}; [and we need to clear the variables] repeat with quip running through memories: now the relevance of the quip is 0; now the tchotchke discovered is the void; now memory chosen for the tchotchke is false. The things encountered is a list of things that varies. [Everything encountered during the turn.] The last memory is an object that varies. [The last memory printed.] First before (this is the remark the nouns rule): [it's the first before so it runs whenever there's an action, including ones generated by try phrases] if the noun is a thing: add the noun to the things encountered, if absent; if the second noun is a thing: add the second noun to the things encountered, if absent. A memory has a number called the relevance. [Defined here because it's used during the free association rules only.] Definition: A memory is relevant if its relevance is 3 or more. [Relevanter, relevantest.] [ Every turn when the clue count is at least the clue threshold: let L be the list of on-stage primed things; if L is non-empty: let n be a random number from 1 to the number of entries in L; carry out the prompting activity with entry n of L.] First free association rule (this is the do we need prompting rule): if the clue count is at least the clue threshold and a primed thing is on-stage: [see the clue threshold stuff back in the Is the Player Progressing section] now we need prompting is true; otherwise: now we need prompting is false. A free association rule (this is the scoring memories rule): repeat through the Table of Associations: let the memory in question be the prompt entry; if the memory in question is available: if there is an associated memory entry and the associated memory entry is the last memory: increase the relevance of the memory in question by 4; if there is an associated thing entry and the associated thing entry is listed in the things encountered: if the current action is thinking about: increase the relevance of the memory in question by 6; otherwise: increase the relevance of the memory in question by 3; if we need prompting is true and the relevance of the memory in question is less than 100 and there is an associated thing entry and the associated thing entry is on-stage and the associated thing entry is primed: [this is a flag that, if we need prompting, only memories that are associated with prompts need apply] increase the relevance of the memory in question by 100; if we need prompting is false and the tchotchke discovered is not the void and there is an associated thing entry and the associated thing entry is the tchotchke discovered: increase the relevance of the memory in question by 50; now memory chosen for the tchotchke is true. A free association rule when we need prompting is true (this is the reset irrelevant memories rule): repeat with quip running through memories: if the relevance of the quip is at least 100: decrease the relevance of the quip by 99; otherwise: now the relevance of the quip is 0. [So if the quip was never associated with one of the things we need prompting about, it gets set to 0.] The reset irrelevant memories rule is listed after the scoring memories rule in the free association rulebook. A free association rule (this is the pick a memory rule): let L be a list of memories; if we need prompting is true: [we ignore the memory threshold] repeat with the quip running through available memories: if the relevance of the quip is at least 1, add the quip to L; [this will only bring up memories that are associated with a relevant thing] if L is non-empty: let n be a random number from 1 to the number of entries in L; let the successful memory be entry n in L; repeat through the Table of Associations: if the prompt entry is the successful memory and there is an associated thing entry and the associated thing entry is on-stage and the associated thing entry is primed: now the thing to be prompted is the associated thing entry; rule succeeds with result the successful memory; [this should always hit for some row, and if it doesn't, we drop down to the next case where we produce no memory and pick a random primed object to prompt] now the thing to be prompted is a random on-stage primed thing; rule succeeds with result nothing; otherwise if the memory chosen for the tchotchke is true: [we automatically go to a memory associated with the tchotchke, if there is one. Forcing this to be the most relevant memory so other associations can come into play. But we can't just use "the relevantest memory" because that'll force it to be the one that's first in the source code.] repeat with the quip running through available memories: unless the relevantest available memory is relevanter than the quip: [this is kind of elegant but probably hellaciously inefficent] add the quip to L; if L is non-empty: [this should always be true, since it will work for the relevantest memory, but better safe than sorry] let n be a random number from 1 to the number of entries in L; let the successful memory be entry n in L; rule succeeds with result the successful memory; otherwise: repeat with the quip running through available memories: if the relevance of the quip is at least the memory threshold, add the quip to L; if L is non-empty: let n be a random number from 1 to the number of entries in L; rule succeeds with result entry n in L; rule succeeds with result nothing. [If we've fallen through to here, we haven't picked a memory.] Section - Thinking Thinking about is an action applying to one visible thing. Understand "think about [any thing]" as thinking about. Carry out thinking about: now the memory threshold is 6. [since the scoring rules increase the score of a memory to 6 if it's associated with the noun when the current action is thinking about, this should restrict us to memories associated with the noun.] Understand "think about [text]" as a mistake ("'No ideas but in things,' Lily always says. Which means, unless you just want to 'think' to and let your mind wander, you'll have to think about some specific thing."). The block thinking rule is not listed in any rulebook. Carry out thinking: now the memory threshold is 0. [And this lets absolutely any memory through.] Chapter - Disambiguation and Miscellany Section - Underimplemented Things (not for release) Definition: A thing is underimplemented if its description is "". First when play begins: say "Need descriptions for [list of underimplemented things]." Section - Credits/About Requesting the credits is an action out of world applying to nothing. Understand "about" or "credit" or "credits" as requesting the credits. Carry out requesting the credits: say "'Tea and Toast' was written for ShuffleComp 2014. Participants were given a list of eight songs suggested by other participants as inspiration for their games. [pb]The game was primarily inspired by Lucy Spraggan's 'Tea and Toast,' suggested by Justin de Vesine, with cameos from the other songs on the list: [pb]Emerson Lake and Palmer's 'Lucky Man,' suggested by PaperBlurt[line break]Alphastates['] 'Addicted,' suggested by Katherine Morayati[line break]Blind Faith's 'Can't Find My Way Home,' suggested by Marshall Tenner Witter[line break]The Only Ones['] 'Another Girl, Another Planet,' suggested by A Mysterious Stranger[line break]Animal Collective's 'Leaf House,' suggested by Christopher Conley[line break]Kodagain's 'It's Hot,' suggested by Caleb Wilson[line break]The Beatles['] 'Strawberry Fields Forever,' suggested by Matthew Smith[pb]Thanks to all! [pb]Huge thanks to betatesters Andrew Schultz, Lucian Smith, and Carl Muckenhoupt, to Felix Larsson for the slice disambiguation code, to Aaron Reed whose Example One was an inspiration, to Sam Ashwell for organizing ShuffleComp, and to the Inform team and extension authors without whom none of this would be possible (Graham Nelson, Emily Short, Eric Eve, Sean Turner, and Jon Ingold all wrote extensions used in this game as of version 0.2).[pb]Thanks also to all the friends, acquaintances, and more who have offered advice on making tea. (For the record, I am informed that the the teapot in question is strictly decorative.)" Section - Disambiguation Controlling Stuff [The following rules are listed "First" so they will have precedence over the "when also considering the breadbox" rules, which would otherwise create ties between the loaf and the slice] First should the game choose cutting the loaf of bread: it is an excellent choice. First should the game choose inserting a bread slice into the toaster: it is an excellent choice. First should the game choose cutting the loaf of bread with the bread knife: it is an excellent choice. First should the game choose inserting an untoasted bread slice into the toaster: it is an excellent choice. [the next four rules are there because the player has probably typed "bread"; but in any case, the breadbox is what opens and closes] Should the game choose doing something with the loaf of bread when also considering the breadbox: it is a good choice. Should the game choose doing something with a bread slice when also considering the breadbox: it is a good choice. Should the game choose opening the breadbox: it is an excellent choice. Should the game choose closing the breadbox: it is an excellent choice. [ridiculous number of things called "tea"] Should the game choose filling a teacup with hot tea: it is an excellent choice. Should the game choose inserting hot tea into a teacup: it is an excellent choice. Should the game choose filling the tea strainer with the loose tea: it is an excellent choice. Should the game choose inserting the loose tea into the tea strainer: it is an excellent choice. Should the game choose inserting the tea strainer into the teapot when the tea leaves are in the tea strainer: it is an excellent choice. Should the game choose inserting the loose tea into the teapot: it is a passable choice. [and two kinds of water] Should the game choose filling the teapot with the hot water: it is an excellent choice. Should the game choose inserting the hot water into the teapot: it is an excellent choice. Should the game choose inserting the cold water into the kettle: it is an excellent choice. Should the game choose filling the kettle with the cold water: it is an excellent choice. Section - Allowing "Slice" and "Plug" as Disambiguation Responses ["Slice" is a verb but can also be a disambiguation response, as in the slice of bread, so we have to add "slice" to the list of verbs that should be interpreted as disambiguation responses. "Plug" ditto; though it's pretty useless to mess around with, it's very likely to require disambiguation. Thanks to Felix Larsson for the code!] Include (- Replace LanguageVerbMayBeName; -) before "Language.i6t" Include (- [ LanguageVerbMayBeName w; if (w == ’long’ or ’short’ or ’normal’ or 'slice' or 'plug' or ’brief’ or ’full’ or ’verbose’) rtrue; rfalse; ]; -) after "Commands" in "Language.i6t"