"Child's Play" by Stephen Granade [The source code to Child's Play is licensed under a Creative Commons NonCommercial Sampling Plus 1.0 License. You are encouraged to take large chunks of the source and incorporate them into your games.] Include Extended Banner by Stephen Granade. Include Plurality by Emily Short. Include Unicode Character Names by Graham Nelson. The release number is 4. The story creation year is 2007. The story headline is "A child, a toy, and a rival". The story genre is "Fiction". The story copyright string is "2007-2008". The story rights statement is "All rights reserved." The story description is "It is playgroup day and playgroup day is normally a good day but ever since that little red-haired girl started coming she always wants your toys. She shouldn't get your toys. You tried telling the mom this but she doesn't understand you. She mostly ignored you but then she just shoved a pacifier in your mouth and changed your diaper." VOLUME 0 - On I7 Extensions and Bug Workarounds Section 0 - Compilation Smallerization (for Z-machine only) [If we compile for z-code, we'll need memory economy turned on. However, by making this section z-code only, I can compile for Glulx when I need to troubleshoot and have all of my rule names and the like show up when I type RULES.] Use memory economy. Section 1 - Extensions & Workarounds [Break out of a repeating loop.] To stop repeating: (- break; -). [How to find out if a current action is running silently.] To decide if running silently: (- keep_silent == 1 -). To decide if not running silently: if running silently, decide no; decide yes. [How to know if a testing command is executing (thanks to JDC)] To decide if testing is in progress: (- (TestCheck()) -). To decide if testing is not in progress: (- (~~TestCheck()) -). Include (- [ TestCheck ; #IFDEF TEST_SCENARIOS_EXIST; if (test_stack-->2 > 1) rtrue; #ENDIF; rfalse; ]; -). [I use randomness in say phrases enough that I want a short form] To decide if (x - a number) out of (y - a number): if a random chance of x in y succeeds, decide yes; decide no. [And similarly a definition for two things being in the same room] To decide whether (x - a thing) and (y - a thing) are co-located: if the location of x is the location of y, decide yes; decide no. To decide whether (x - a thing) and (y - a thing) are not co-located: if x and y are co-located, decide no; decide yes. Definition: a thing is present if the location of the player encloses it. To decide if (x - a thing) is acted upon: if the noun is x or the second noun is x, decide yes; decide no. To decide if (x - a thing) is not acted upon: if x is acted upon, decide no; decide yes. [Copy rows from one table to another.] Include (- [ CopyTableRows table1 table2 v0 i j; for (i=1: i<=TableRows(table1):i++) if (TableRowIsBlank(table1, i)==false) { v0 = TableLookUpEntry(table1, 1, i); j = TableBlankRow(table2); if (TableRowIsBlank(table2, j)==true) TableLookUpEntry(table2, 1, j, 1, v0); } rfalse; ]; -). To copy rows from (t1 - a table-name) to (t2 - a table-name): (- CopyTableRows({t1}, {t2}); -). [Remove a room from a backdrop's list of locations. We don't actually delete it -- we write over the value with the value of a placeholder called "MTRoom".] MTRoom is a room. Include (- [ RemoveRoomFromBackdrop R B i k; i = B.#found_in; for (k=0: kk == R) { B.&found_in-->k = (+ MTRoom +); } } ]; -). To delete (R - a room) from (B - a backdrop): (- RemoveRoomFromBackdrop({R},{B}); -). [The printed name of the player is "yourself". That works really well for messages like "You can't take yourself." It fails miserably for things like NPC reactions, where the NPC may be reacting to another NPC or to the player: "Jemison follows [the leader]." So: a workaround "say" phrase.] To say name of (t - a thing): if t is the player begin; say "you"; mark yourself in output; otherwise; say "[the t]"; end if. To say name of (t - a thing) is: if t is the player begin; say "you are"; mark yourself in output; otherwise; say "[the t] is"; end if. [A lot of times, I7 is too smart and turns things like aliens' to aliens" when printed. This say statement lets me get around that.] To say ': say unicode 39. [Since you can't pass variables defined by "let" or phrase options to another phrase (i.e. I7 has no closures), this hacky global workaround.] hacky global item is an object that varies. VOLUME 1 - On New and Changed Kinds Chapter 1 - New Kinds, Which Extend the Taxonomy of the World [The active/passive dichotomy indicates whether or not their state machines are currently running.] A person can be a baby or a parent. A person is usually a parent. A person can be calm or upset. A person is usually calm. A playmate is a kind of person. A playmate is always a baby. The plural of playmate is playmates. The specification of a playmate is "Represents a child with whom the player can play, for varying values of 'play'." A playmate can be active or passive. A playmate is usually passive. The player is a baby. The player is male. The player has a number called cry count. The cry count of the player is 0. The player is in Beneath the Covers. Instead of examining the player, say "You are as [if the player is wearing the squid costume]powder blue and squiddy[otherwise]baby-like[end if] as ever[if the player is not wearing the squid costume][note baby-desc][end if]." Instead of taking the player, say "You do not need to pick yourself up, you already are all self-possessed." Instead of tasting the player, say "You give yourself a lick and I guess you taste okay." Check smelling the player: instead say "You are baby powder fresh." [A one-time deal. Concept borrowed from zarf. NB that you cannot examine a one-time deal without affecting it all Schrodinger-like. The first time you query it, it is changed from not over to over.] A one-time deal is a kind. A one-time deal can be over. The specification of a one-time deal is "Represents an event that should occur once and only once. You can see whether a one-time deal has occurred or not, but note that the first time you do so, the one-time deal is then considered to have occurred." To decide if (d - a one-time deal) has occurred: if d is over, decide yes; now d is over; decide no. To decide if (d - a one-time deal) has not occurred: if d has occurred, decide no; decide yes. [Furniture is a kind of supporter with some wacky rules. Normally I would specify that furniture is suitable for pulling up on here, but I can't because I7 cares about definition order.] Furniture is a kind of supporter. Rule for deciding the concealed possessions of furniture: if the player is quarter-height-or-higher, no; if the particular possession is a person, no; [A teeny hack to allow the cup of cheerios to be seen and interacted with even from the ground] if the particular possession is the cup of Cheerios, no; otherwise yes. [If the concealed possessions thing worked as I'd like, these next two rules would not be necessary.] Rule for printing the name of furniture when the player is not standing: omit contents in listing; continue the action. Rule for writing a paragraph about furniture (called the item) when the player is not standing: say "[the initial appearance of the item][line break]". [This next rule should make it so things on scenery furniture aren't listed in the room description when the player isn't standing. Sadly, it doesn't.] Rule for writing a paragraph about scenery furniture (called the item) when the player is not standing: now everything on the item is mentioned; now the item is mentioned. Chapter 2 - Modified Existing Kinds, Which Allow for Richer Gameplay [It is possible that I stole this from Emily Short's Complex Listing, though I admit nothing.] A thing can be marked for special listing or unmarked for special listing. A thing is usually unmarked for special listing. A room has some text called the faraway descriptor. To say nearly-in-reach message for (n - a thing): say "You are much closer to [the n] but still not close enough to reach it." Instead of putting something on a supporter (called s) when the player is not standing: if the player is on s, continue the action; if s is the short plastic block or s is the bugish plastic block or s is the tall plastic block, instead say "You could put things on [the s] but then you wouldn't be able to climb onto it so you refrain."; say "Your arms are too short for that." Instead of pushing, pulling or waving a supporter (called the item) when the player is standing: if the player is not pulled up on the item, continue the action; say "You cannot really push or pull [the item] while you are pulled up on it, that would be a terrible tax on your sense of balance which is nearly nonexistent." Instead of searching a supporter, say "It is not something you have to search." [If you're on a supporter, >DOWN should get you down off of the supporter.] Instead of going down when something (called platform) supports the player: try getting off the platform. Instead of someone going down when something (called platform) supports the person asked: try the person asked getting off the platform. Definition: a supporter is occupied if someone is on it. Instead of entering an occupied supporter: if the player is on the noun, say "You are already there!"; otherwise say "[The noun] doesn't have enough room as long as [a random person on the noun] is there." Check someone entering an occupied supporter: stop the action. VOLUME 2 - On Changes to the World Model Chapter 1 - New and Changed Actions, Which Extend or Restrict a Player's Range of Action Instead of climbing, say "You can pull up on stuff and all but you can't do that climbing thing. Stupid short stubby legs." Instead of climbing an enterable supporter, try entering the noun. Instead of jumping, say "There is no way you are going to jump, you can barely crawl." Instead of burning, say "It is too bad Fisher Price doesn't make a baby flamethrower, you would be all on that." Instead of cutting or tying it to or swinging or buying, say "You are no good at that kind of stuff." Instead of waving hands when the player is carrying something, say "You are busy holding stuff." Instead of waving hands, say "You wave your hands and whee! it is fun." Instead of sleeping, say "You are too good for naps!" Instead of waking up, say "You are already awake, do not worry." Instead of thinking, say "Thinking is like all you're doing these days, it is your job." Instead of throwing at, say "There is no way, you can barely pick stuff up and you are no Cy Young or whatever." Instead of attacking something, say "That might make you feel better but that is not the true baby way." [The "if a parent person is present" checks aren't part of the rule so that the rules are fairly unspecific and thus are sorted low in the Instead rulebook.] Instead of chewing a playmate: if a parent person is present, say "That is so not a good thing to do right in front of a parent unless you absolutely have to, for some reason biting is like the ultimate baby evil and you would get in trouble and not get your toy."; [Let one of the other rules catch this.] otherwise continue the action. Instead of attacking or pushing or pulling a playmate: if a parent person is present, say "Hitting and pushing and pulling other babies when you're in front of parents is no good, they will take you away and you won't get your toy."; otherwise continue the action. Instead of attacking or pushing or pulling or chewing a playmate: say "There is no parent around right now so you might get away with it at first but the parents would figure it out, if you want to hurt someone it really needs to be worth it and it needs to look like an accident." Instead of tasting a playmate, say "From a distance parent's can't tell if you are planning on licking or biting another baby, it is best not to lick them at all." Instead of attacking or pushing or pulling or chewing a parent person, say "It is no good kicking or biting a parent, it is better to rebel in less obvious ways." Instead of tasting a parent person, say "Licking parents may seem like fun at first but soon they are telling their friends 'oh this is cute, watch this' and expecting you to do it on command." Instead of pushing or pulling a playmate when the playmate is standing, say "That would certainly knock [the noun] over but that would get everyone in an uproar so it's best not to do it unless you really need to." Instead of taking inventory when the player has no thing (this is the empty-handed inventory rule), say "Your hands are all empty." Instead of taking inventory when the player is pulled up on something (called the item) (this is the pulled-up inventory rule), say "You are not carrying anything but you do have your hands full since you are pulled up on [the item]." The empty-handed inventory rule is listed after the pulled-up inventory rule in the instead rulebook. Instead of taking inventory when the player is gnawing something (called the masticated) and the player is pulled up on something (called the item), say "Your hands are full of [the item] and your mouth is full of [the masticated]." A check kissing rule (this is the kissing other people rule): instead say "Your kisses are only for your family." The kissing other people rule is listed before the block kissing rule in the check kissing rules. Understand "squish [something]" or "smoosh [something]" as squeezing. Instead of squeezing something, say "It is hard enough to pick up things, squeezing is even harder and so don't worry about doing it, if it happens it happens." Understand "lick [something]" as tasting. Check tasting: if the noun is a person, instead say "You should stick with tasting things that aren't all wiggly and alive, you can get in trouble for that."; instead say "[Cap it-they of the noun] [if the noun acts plural]don't[otherwise]doesn't[end if] taste strange or anything." Understand the command "walk" as something new. Understand the command "run" as something new. Walking is an action applying to nothing. Understand "walk" or "run" as walking. Report walking: say "That is a developmental milestone you will reach someday but not today." Reading is an action applying to one visible thing. Understand the command "read" as something new. Understand "read [something]" as reading. Report reading: say "It must be nice to read, the mom and the dad are always doing it, but you do not yet know how." Wriggling is an action applying to nothing. Understand "wriggle" or "wiggle" or "squirm" as wriggling. Report wriggling: say "You wriggle around and that is probably cute and all but it is not really helpful." Rolling over is an action applying to nothing. Understand "roll over" as rolling over. Report rolling over: say "Whatever, that may be impressive when you are five or six but you are like eleven or nearly twelve months old now." Crawling aimlessly is an action applying to nothing. Understand "crawl" as crawling aimlessly. Report crawling aimlessly: say "You can crawl around and all but to really get somewhere you have to pick a direction." Understand "crawl [direction]" or "crawl to the [direction]" or "cruise [direction]" or "cruise to the [direction]" as going. Understand "cruise [thing]" or "cruise to [thing]" as a mistake ("You can only cruise in a direction.") Understand "get down" as exiting. [Lump all actions that move the player together] Going is being ambulatory. Entering something is being ambulatory. Exiting is being ambulatory. Getting off something is being ambulatory. Crawling aimlessly is being ambulatory. Rolling over is being ambulatory. [Identify all actions that are talking and then prevent them.] Talking to is an action applying to one visible thing. Understand "talk to [something]" as talking to. Asking people for something is being talkative. Asking people about something is being talkative. Telling people about something is being talkative. Answering people that something is being talkative. Telling people about something is being talkative. Talking to something is being talkative. Saying yes is being talkative. Saying no is being talkative. Saying sorry is being talkative. Swearing obscenely is being talkative. Swearing mildly is being talkative. Singing is being talkative. Instead of being talkative, say "You don't have speech down yet." Instead of asking someone to try doing something (this is the can't command others rule), say "You don't have speech down yet." [Pushing things around. Normally, pushing things doesn't print anything prior to the move, and then the pushed object isn't mentioned in the room description. This after rule, courtesy of Emily Short, fixes both of those problems.] After going a direction (called way-pooshed) with something (called the pooshed-thing) (this is the pushing things to a new room rule): say "You shove and shove at [the pooshed-thing] [if the player is wearing the squid costume]with your floppy tentacles [end if]and eventually you get it moving to [the way-pooshed] and then you follow it."; move the pooshed-thing to the location; continue the action. Instead of an actor going a direction with a pulled-up-on pushable between rooms thing (called the platform): if the actor is the player, say "That will not move as long as [if the player is pulled up on the platform]you are[otherwise]someone is[end if] all pulled up on it."; stop the action. Instead of an actor going a direction with an occupied supporter (called the platform): if the actor is the player, say "That will not move as long as [if the player is on the platform]you are[otherwise]someone is[end if] all on it."; Instead of pushing or pulling a pushable between rooms thing, say "[The noun] looks like it will move pretty far but you will have to say in what direction you want to push it." Instead of taking a pushable between rooms supporter (this is the can't take pushable things rule), say "You tug on [the noun] but it is too big to take although it slides around just a little." The can't take pushable things rule is listed before the can't take large things rule in the instead rulebook. Understand "unfold [something]" as opening. Understand "fold [something]" as closing. Understand "unzip [something]" as opening. Understand "zip [something]" as closing. Understand "stick [other things] on/onto/to [something]" as putting it on. [New commands] Falling is an action applying to nothing. Understand "fall" or "fall down" or "fall over" as falling. Instead of falling, try going down. Understand "shake [something]" or "rattle [something]" as waving. Check an actor waving something carryable that is not held by the actor (this is the taking before shaking rule): if the actor is the player, say "(first taking [the noun])[command clarification break]"; silently try the actor taking the noun; if the actor is not holding the noun, stop the action. Check an actor waving something that is not carryable: if the actor is the player, say "[The noun] is big and so you cannot really shake [it-them]."; stop the action. After waving: say "You shake [the noun] and that is okay I guess." Report someone waving something: if the person asked is present, instead say "[The person asked] shakes [the noun]." Crying is an action applying to nothing. Understand "cry" or "scream" or "yell" or "wail" or "shriek" or "sob" or "fuss" or "pout" or "squall" as crying. Check crying: if the player is gnawing something, instead say player has a full mouth. Report crying: say "You make some noise but it doesn't really do anything for you right now." Instead of crying when the player is in the baby-swing: say "You have already gotten in the baby swing, crying will do you no good now." Instead of crying when Tabletime is happening, say "The mom says, 'I know you don't like them, but prunes are good for you.'" Instead of crying when Zoe has your favorite toy, say "Crying to get the parents to take back the toy is a total Zoe trick, you will not stoop that low. Besides, you are so close to getting the toy it would be no good to have the mom take it away again." Carry out crying when the baby-swing is in play and Picturetime is not happening: increment the cry count of the player by 1. After crying when the cry count of the player is 1: say "You let out this sobbing wail and the mom says, 'Shh, it's okay.'" After crying when the cry count of the player is 2: say "When you cry again the mom says, 'Shh. Calm down.'" After crying when the cry count of the player is 3: say "This time you add a lot of tremolo to your crying and the mom says, 'You're not going to calm down, are you, kiddo? Do you need the swing?'" [The bit with the dirty costume can also come up when upstanding using the mom when the player is wearing the squid costume and the squid costume is dirty. Synchronize the two rules in the event of changes.] After crying when the cry count of the player is greater than 3: say "'Okay, kiddo, let's check you and make sure,' the mom says and scoops you up. 'Diaper's okay[run paragraph on]"; if the player is wearing the squid costume and the squid costume is dirty begin; say ", though this costume is filthy.' She strips it from you, still talking, 'You're[run paragraph on]"; record 5 points for "getting that evil squid costume off"; remove the squid costume from play; otherwise; say ". You're[run paragraph on]"; end if; say " not hungry. To the swing!' [run paragraph on]"; if a playmate is in the baby-swing begin; say "Then she sees that [a random playmate in the baby-swing] is already in the swing and says 'I guess you'll have to hang on a sec' and she puts you back down."; otherwise; say "You're airlifted into the swing and the mom[if something is carried by the player] takes away [the list of things carried by the player] and[end if] straps you in. She turns it on, click click click, and then you are swinging[if the current speedness of the speed switch is hi] really high[end if]."; now every thing that is carried by the player is in the location; if the player is gnawing something (called g), now g is not gnawed by anything; if the player is standing, now the player is not pulled up on anything; move the player to the baby-swing; now the baby-swing is on; now the cry count of the player is 0; the player stops swinging in six turns from now; if your favorite toy is not Parry-touched and the baby-swing is in the TKBUG Open Area and your favorite toy is in the bookcase, Parry potentially wanders by in four turns from now; end if. At the time when Parry potentially wanders by: if your favorite toy is not Parry-touched begin; say "Parry comes wandering by with his water glass but he stops when he sees you swinging. He looks at your favorite toy. He looks at you. He looks at your toy[if Zoe and the player are co-located]. He looks at Zoe[end if]. He looks at how close you get to your favorite toy. When he is all done with his looking he casually leans against the bookcase and taps your toy. It totally falls a bit closer! He winks at you and heads on by[note Parry-knocks-the-toy]."; now your favorite toy is Parry-touched; end if. At the time when the player stops swinging: now the baby-swing is off; say "You look up and there is the mom, you are swinging toward her face and away, toward and away. She turns off the swing and gets you down and puts you on the floor before going back to her seat."; move the player to the location of the baby-swing; Laughing is an action applying to nothing. Understand "laugh" or "coo" or "goo" or "smile" as laughing. Check laughing: if the player is gnawing something, instead say player has a full mouth. Report laughing: say "You smile and make a bubbly laugh noise, it is the thing you do that makes everyone say 'oh my goodness how cute!'" Breathing is an action applying to nothing. Understand "breathe" as breathing. Report breathing: say "You do not have many things you can do, you are so young, but you don't have to think about breathing really, you do that automatically." Breathing fast is an action applying to nothing. Understand "breathe fast" as breathing fast. Report breathing fast: say "You breathe fast for a minute and it makes you all light-headed." Breathing slow is an action applying to nothing. Understand "breathe slow" or "breathe slowly" as breathing slow. Report breathing slow: say "You breathe slow but after a while you have to start breathing normally again." [Adam Thornton made me add this] Eliminating is an action applying to nothing. Understand "poop" or "pee" or "urinate" or "micturate" or "shit" as eliminating. Report eliminating: say "See for you to do that on command you'd have to be potty trained and you are not, that is just another way the man controls you." Kicking is an action applying to nothing. Understand "kick" as kicking. Report kicking: say "You are all kick! kick! kick! but you don't have coordination or anything so it doesn't do much." Kicking at is an action applying to one thing. Understand "kick [something]" or "kick at [something]" as kicking at. Report kicking at: say "You are way not coordinated enough to do that." Playing with is an action applying to one thing. Understand "play with [something]" as playing with. Report playing with: say "That is way generic, you will need to be specific about what you want to do to play with something." Flipping is an action applying to one thing. Understand "flip [something]" as flipping. Check flipping: abide by the can't switch on unless switchable rule; if the noun is switched on, try switching off the noun instead; try switching on the noun instead. Putting it under is an action applying to two things. Understand "put [other things] under [something]" or "push [other things] under [something]" or "wedge [other things] under [something]" as putting it under. Check putting it under: instead say "There is no real need to do that." Rocking is an action applying to nothing. Understand "rock" as rocking. Report rocking: say "You are already totally rocking." Spitting up is an action applying to nothing. Understand "spit" or "spit up" or "vomit" or "puke" or "slobber" or "drool" or "barf" or "ralph" as spitting up. Report spitting up: say "That would get your clothes all dirty and you do not need to do that right now." Spitting up on is an action applying to one thing. Understand "spit up on [something]" or "spit on/in [something]" or "vomit on [something]" or "puke on [something]" or "slobber on [something]"or "drool on [something]"or "barf on [something]"or "ralph on [something]" as spitting up on. Report spitting up on: instead say "You do not need to get [the noun] all dirty right now." Report spitting up on yourself: instead say "You do not need to get yourself all dirty right now." Report spitting up on a person: instead say "It may be normal little baby behavior to drool and spit up all over parents and other babies but you are like eleven months old and now it would be unseemly." Pushing it with is an action applying to two things. Understand "push [something] with [something preferably held]" or "lift [something] with [something preferably held]" or "raise [something] with [something preferably held]" or "hit [something] with [something preferably held]" as pushing it with. [It's possible (pace Dan Shiovitz) that the player will type LIFT ME WITH FOOTSTOOL. Map that to upstanding with.] Instead of pushing the player with something when the player's command includes "lift" or the player's command includes "raise", try upstanding using the second noun. Check an actor pushing something with something carryable that is not held by the actor (this is the pick up objects before pushing with them rule): say "(first taking [the second noun])[command clarification break]"; silently try taking the second noun; if the actor is not holding the second noun, stop the action. Report pushing it with: say "Most of the time you can just push things without having to use something to do the pushing other than your little baby hands." Speedness is a kind of value. The speednesses are lo, med, and hi. Turning it to is an action applying to one thing and one speedness. Understand "turn [something] to [a speedness]" or "turn [something] on [a speedness]" or "flip [something] to [a speedness]" or "push [something] to [a speedness]" as turning it to. Check turning it to: say "You so cannot turn [the noun] like that." [Get rid of the grammar "set x to y" (which matches the "setting it to" action) and attach it to the "turning it to" action.] Understand the command "set" as something new. Understand "set [something] to [a speedness]" as turning it to. [Remember where people were before they went somewhere, so we can report on it and can have a simple follow command.] A person has a room called last location. Carry out an actor going (this is the keeping track of people rule): change the last location of the actor to the location of the actor. The keeping track of people rule is listed first in the carry out going rulebook. To decide if (youngster - a person) was recently present: if the last location of the youngster is the location, decide yes; decide no. Following is an action applying to one visible thing. Understand "follow [any thing]" or "chase [any thing]" as following. Check following when the noun is not a person (this is the can't follow inanimate objects rule): instead say "You really can only follow babies and also people." Check following when the noun is the player (this is the can't follow yourself rule): instead say "That is easy, you are already here!" Check someone following when the noun is the person asked: stop the action. Check following when the noun is present (this is the can't follow someone present rule): if the actor is the player, say "That is easy, [the noun] is already here!"; stop the action. Check someone following when the person asked and the noun are co-located: stop the action. Check following when the last location of the noun is not the location (this is the can only follow at one remove rule): instead say "You can't remember where [the noun] went. Stupid little kid brain." Check someone following when the last location of the noun is not the location of the person asked: stop the action. Carry out an actor following: let the destination be the location of the noun; let aim be the best route from the location of the actor to the destination; if aim is not nothing begin; if the actor is the player begin; say "(heading [aim])[command clarification break]"; try going aim; otherwise; [NPCs should go quietly] silently try the actor going aim; end if; end if. Building is an action applying to one visible thing. Understand "build [any thing]" or "put together [any thing]" or "make [any thing]" as building. Check building: instead say "You do not know how to build [the noun]." [Fiddling reachability and the like when the player is held.] A rule for reaching outside persons (this is the can't reach far-away objects when held rule): if the person reaching is the player, say "[The container in question] is holding you and so you are too far away."; deny access. Instead of being ambulatory when the player is held by someone (called the holder), say "[The holder] is holding you and so you cannot really go anywhere from up here." [If the player is held by someone and that someone has a "writing a paragraph about" rule, their paragraph won't be printed. This rule bypasses that as a default.] A carry out looking rule (this is the room description paragraphs about enclosing people rule): if the player is enclosed by someone (called the holder), carry out the writing a paragraph about activity with the holder. The room description paragraphs about enclosing people rule is listed after the room description paragraphs about objects rule in the carry out looking rulebook. Chapter 2 - Printing the Description Of Activity, Which Allows Us to Tack Things Onto Descriptions [I will note that after Emily Short and I discussed how to do this, she turned it into the Crusoe example in the I7 documentation.] Printing the description of something is an activity. This is the fancy examining rule: carry out the printing the description activity with the noun; The fancy examining rule is listed instead of the standard examining rule in the carry out examining rulebook. Rule for printing the description of something (called item) (this is the standard printing the description of rule): say "[description of item] [run paragraph on]". [Ensure that we end our descriptions with a paragraph break] Last after printing the description of something: say "[paragraph break]". [To add a line to a description, use an 'After printing the description of...' rule. For example: After printing the description of something that is damp: say "It is damp." instead. N.B. that the "instead" is needed to prevent extra blank lines from appearing.] Chapter 3 - Sizes, Which Have an Effect on Carrying Capacity [Small things are things that a baby can carry in one hand, or in the mouth. Medium can only be carried in two hands, and restrict motion. Large can't be carried at all.] A size is a kind of value. The sizes are small, medium and large. A thing has a size. Things are usually large. The specification of a size is "How large something is relative to what a small child can pick up." [A player can carry a maximum of two small things or one medium thing. Any small item being chewed doesn't count towards the carry capacity. Any item being worn doesn't count towards the carry capacity.] Definition: a baby person is burdened: if it is carrying more than zero medium things then decide yes; if it is carrying less than three small things and it is gnawing something that is held by it then decide no; if it is carrying more than one small thing then decide yes; if it is standing then decide yes; decide no. Definition: a baby person is unburdened: if it is standing then decide no; if it is carrying exactly one small thing and it is not carrying a medium thing and it is gnawing something that is held by it then decide yes; if it is not carrying anything then decide yes; decide no. Definition: a baby person is overburdened: if it is carrying more than two small things then decide yes; if it is carrying more than zero medium things and more than zero small things then decide yes; if it is standing then decide yes; decide no. Definition: a thing is carryable if it is not large. Instead of taking an Inform library animate object, say "You should only pick up things that are not so wiggly." Instead of taking something large (this is the can't take large things rule), say "[The noun] [is-are] way big and there is no way you're picking [it-them] up or anything." Check taking something medium when the player is not unburdened (this is the can't take medium things when burdened rule): instead say "[The noun] is big enough that you will have to drop everything to get [it-them] because it takes two hands[note inventory-limit]." [This is a check rule so's I can handle the case where a player tries to take something they've already taken.] Check taking a small thing when the player is burdened (this is the can't take small things when burdened rule): if the noun is not carried, instead say "Your hands are all full, maybe if you drop something you could get [the noun][note inventory-limit]." Report taking a small thing: instead say "You pick [it-them of the noun] up." Report taking a medium thing: instead say "You pick [it-them of the noun] up and it takes two hands." [Variations on the above three rules for other people.] Check someone taking a large thing (this is the other people can't take large items rule): if the person asked is a baby, stop the action. Check someone taking a medium thing (this is the other people can't take medium items if holding anything rule): if the person asked is a baby and the person asked is not unburdened, stop the action. Check someone taking a small thing (this is the other people can't take small items when burdened rule): if the person asked is a baby and the noun is not carried and the person asked is burdened, stop the action. Chapter 4 - Heights, Which Allow Us to Roughly Judge How High Up Something Is Section 1 - Height Definitions [We define heights by a parent's height. Quarter-height is knee-high. Half-height is waist-height. We also define exact heights and inexact heights. For the latter, as long as you're that height or higher you're good.] Definition: something is half-height: if the baby-swing encloses it and the current speedness of the speed switch is hi, decide yes; if the cabinet top encloses it, decide yes; decide no. Definition: something is quarter-height: if the tall plastic block encloses it, decide yes; if furniture encloses it, decide yes; if it is standing, decide yes; if it is enclosed by a standing person, decide yes; if the baby-swing encloses it and the current speedness of the speed switch is not hi, decide yes; decide no. Definition: something is eighth-height: if the short plastic block encloses it or the bugish plastic block encloses it, decide yes; decide no. Definition: something is half-height-or-higher: if it is half-height, decide yes; decide no. Definition: something is quarter-height-or-higher: if it is quarter-height or it is half-height-or-higher, decide yes; decide no. Definition: something is eighth-height-or-higher: if it is eighth-height or it is quarter-height-or-higher then yes; decide no. Definition: something is zeroth-height: if it is eighth-height-or-higher then no; decide yes. [Comparing heights] To decide if (x - a thing) is higher than (y - a thing): if x is zeroth-height and y is eighth-height-or-higher, decide no; if x is eighth-height and y is quarter-height-or-higher, decide no; if x is quarter-height and y is half-height-or-higher, decide no; decide yes. [Reachableness: from the floor, you can't reach things that are quarter height or higher. From quarter height, you can't reach zeroth-height. From half-height, you can't reach eighth-height.] To decide if (t - a thing) is reachable by (p - a person): if t is a parent person, decide yes; if p is zeroth-height and t is quarter-height-or-higher, decide no; if p is quarter-height and t is zeroth-height, decide no; if p is half-height and t is not quarter-height-or-higher, decide no; decide yes. [A message for things being out of reach] To say out-of-reach message for (n - a thing): say "You have short arms, you can't reach [the n] from [if the player is higher than n]up[otherwise]down[end if] here." Section 2 - Height Checking Rules [Height Reachability Rules determine whether or not something is reachable due to height restrictions. This rulebooks is called by a "before" rule. Success means the action's okay to continue. Failure means the action should be stopped. If a height reachability rule ends in failure, it should print out why the failure occurred.] [In theory I could use reaching inside/reaching outside rules, but heights don't necessarily depend on things being inside or outside other things.] Height Reachability Rules is a rulebook. The height reachability rules have outcomes stop action processing (failure), continue action processing (success), and no decision (no outcome - default). [Since rules don't have access to rulebook variables in their when/while clauses -- and, in fact, don't have access to e.g. "actor" except inside the rules themselves, I have use global variables.] [The actor whose reachability we're testing. N.B. this isn't re-entrant.] The reaching actor is a person that varies. [The noun to be height-tested. Also not re-entrant.] The reaching object is an object that varies. [It turns out a lot of built-in talking actions require a touchable actor, so fix that oversight.] A height reachability rule when the current action is being talkative (this is the height-ignoring actions rule): continue action processing. [Getting things held by other people.] A height reachability rule (this is the objects held by other people rule): if the reaching object is enclosed by a parent person (called p) begin; if the reaching actor is not enclosed by p begin; if the reaching actor is the player, say "[P] has [the reaching object] and so you can't reach it."; stop action processing; end if; end if. [These next two rules aren't phrased as e.g. "A height reachability rule when the noun is not nothing" so that they're near the bottom of the rulebook.] A height reachability rule (this is the standard height checking rule): if the reaching object is reachable by the reaching actor, continue action processing; if the reaching actor is the player, say out-of-reach message for the reaching object; stop action processing. [The height reachability rulebook is triggered by a single rule that I shove into the action-processing rules. c.f. the Electrified example.] This is the check-heights rule: if the action requires a touchable noun and the noun is not nothing begin; change the reaching actor to the actor; change the reaching object to the noun; consider the height reachability rules; if the outcome of the rulebook is the stop action processing outcome, stop the action; end if; if the action requires a touchable second noun and the second noun is not nothing begin; change the reaching actor to the actor; change the reaching object to the second noun; consider the height reachability rules; if the outcome of the rulebook is the stop action processing outcome, stop the action; end if. The check-heights rule is listed before the basic accessibility rule in the action-processing rules. Chapter 5 - Gnawing and Chewing, Which Allow Babies to Chew On Things Section 1 - The Gnawing Relation and Dampness Gnawing relates one thing to one thing. The verb to gnaw (he gnaws, they gnaw, it is gnawed, he is gnawing) implies the gnawing relation. A thing is either damp or dry. A thing is usually dry. A thing can be chewable. A thing is usually chewable. A person is usually not chewable. After printing the description of a damp thing: say "It is all damp from being chewed. [run paragraph on]" Section 2 - Chewing and Stopping Chewing [Defined actions for chewing and stopping chewing] Chewing is an action applying to one thing. Understand "chew on [something]" or "chew [something]" or "gnaw on [something]" or "gnaw [something]" or "bite [something]" or "put [something] in mouth" as chewing. Stopping chewing is an action applying to one thing. Understand "stop chewing on [something]" or "stop chewing [something]" or "stop gnawing on [something]" or "stop gnawing [something]" or "take [something] out of mouth" or "spit [something]" or "spit [something] out" or "spit out [something]" as stopping chewing. [Changes to inventory due to chewing] After printing the name of something (called the chewed-upon) which is gnawed by someone (called the chewer) while taking inventory: say " (being chewed)". Instead of eating something that is not edible, try chewing the noun. Instead of taking off something that is gnawed by someone, try stopping chewing the noun. Instead of an actor taking something that is gnawed by the actor (this is the taking a chewed thing means not chewing it any more rule), try stopping chewing the noun. [Action-handling rules for chewing and stopping chewing] Before chewing something carryable that is not held: say "(first taking [the noun])[command clarification break]"; silently try taking the noun; if the player is not holding the noun, stop the action. [This one rule is a Before rule because of all of the Instead overrides I use, and I want to make sure the player's mouth isn't full before any other checks are carried out.] Check chewing: if the noun is the player begin; if not running silently, say "You do not need to chew yourself, you are not some baby version of a cutter."; stop the action; otherwise if the player is gnawing the noun; if not running silently, say "You are already chewing on [the noun] so good news, it is like you've pre-succeeded."; stop the action; otherwise if the player is gnawing something; if not running silently, say player has a full mouth; stop the action; otherwise if the noun is a person; if not running silently, say "You have tried to chew on other babies and people before and it totally does not work."; stop the action; otherwise if the noun is not chewable; if not running silently, say "[The noun] is not chewable, which is weird, most everything is chewable."; stop the action; otherwise if the noun is not carryable; if not running silently, say "You give [the noun] a chew or two but you cannot carry [it-them] so you give up chewing it pretty soon."; stop the action; end if. Check someone chewing something carryable that is not held by the person asked (this is the other people must hold small items to chew rule): silently try the person asked taking the noun; if the person asked is not holding the noun, stop the action. Check someone chewing (this is the other people can't chew two things rule): if the person asked is gnawing something, stop the action. Check someone chewing (this is the other people can't chew people or unchewable things rule): if the noun is not chewable or the noun is a person, stop the action. Carry out an actor chewing: if the noun is carryable, now the actor is gnawing the noun; if the noun is small or the noun is medium, now the noun is damp. Report chewing: say "You [if the noun is carryable]shove [the noun] in your mouth[otherwise]put your mouth on [the noun][end if] and start chewing on [it-them] and that [if the player is unburdened]leaves your hands free[note chewing-stuff][otherwise]feels good[end if]." Report someone chewing: if the person asked is present, say "[The person asked] [if the noun is carryable]shoves [the noun] in [its-their of the person asked] mouth[otherwise]puts their mouth on [the noun][end if] and chews on [it-them of the noun]." Check an actor stopping chewing: if the actor is not gnawing the noun begin; if the actor is the player, say "You are not chewing on that."; stop the action; end if. Carry out an actor stopping chewing: now the noun is not gnawed by anything; if the actor is overburdened, silently try the actor dropping the noun; Report stopping chewing: say "You pop [the noun] out of your mouth[if the noun is not held] and onto the floor[end if]." Report someone trying stopping chewing: if the person asked is present, say "[The person asked] pops [the noun] out of [its-their of the person asked] mouth[if the noun is not held by the person asked] and onto the floor[end if]."; stop the action. [Side effects of chewing] To pop (item - a thing that is gnawed by anything) out: if the item is gnawed by the player, say "(popping [the item] out of your mouth first)"; now the item is not gnawed by anything; Carry out an actor dropping something that is gnawed by anything: pop the noun out. Carry out an actor putting something that is gnawed by anything on something: pop the noun out. Carry out an actor inserting something that is gnawed by anything into something: pop the noun out. To say player has a full mouth: say "You would but your mouth is all full." Instead of an actor drinking when the actor is gnawing something: if the actor is the player, say player has a full mouth. Instead of an actor spitting up when the actor is gnawing something: if the actor is the player, say player has a full mouth. Instead of an actor spitting up on when the actor is gnawing something: if the actor is the player, say player has a full mouth. Chapter 6 - Clinging, Cruising, and Standing, Which Allows Babies To Pull Up On Items and Move Around Section 1 - The Clinging Relation [It would be nice if the verb could be "to cling to".] Clinging relates various people to one thing. The verb to cling (he clings, they cling, it is clinged, he is clinging) implies the clinging relation. The verb to be pulled up on implies the clinging relation. [5G67 introduced a bug where this "standing" definition clashed with the "standing using" action. Whoops. Rephrase.] Definition: a person is standing if it is pulled up on something. Definition: a thing is pulled-up-on if something is pulled up on it. The previous-support is a thing that varies. To seat (kid - a person): if the kid is pulled up on something (called item), change previous-support to item; now the kid is not pulled up on anything; To let go of (furnishing - a thing): now the furnishing is not clinged by anyone; [Changes to status line due to upstanding using] When play begins: change the left hand status line to "[the player's surroundings][if the player is pulled up on something (called the support)] (pulled up on [the support])". A thing can be suitable for pulling up on. A thing is usually not suitable for pulling up on. A thing can be suitable for cruising. A thing is usually not suitable for cruising. Furniture is usually suitable for pulling up on. A woman is usually suitable for pulling up on. A man is usually suitable for pulling up on. [A height reachability rule for the furniture on which you are pulled up.] A height reachability rule when the reaching actor is pulled up on the reaching object: continue action processing. Section 2 - Standing, Standing Using and Sitting Down [I don't want "stand" or "stand up" to map to exiting, so I can give gentle guidance messages regarding being pulled up] Understand the command "stand" or "stand up" as something new. Standing alone is an action applying to nothing. Understand "stand" or "stand up" as standing alone. Check standing alone: if the player is standing, instead say "You know you are not any good at standing by yourself so you don't let go and instead you stay pulled up."; if the player is inside something, instead try exiting; instead say "You try that standing thing but you are still no good at it without holding onto something so you will have to pull up on something to stand up."; [Ideally I'd do this next bit by saying "Understand 'stand down' or 'climb down' as going down." but the going action is weird and won't let me do that.] Going-down-mapping is an action applying to nothing. Understand "stand down" or "climb down" as going-down-mapping. Instead of going-down-mapping, try going down. [Defined actions for standing using and sitting down] Understand "pull up" as a mistake ("You'll have to say what you want to pull up on."). [5G67 introduced a bug where this "standing using" action clashed with the "standing" definition above. Whoops. Accordingly, I've jiggered the name of this action.] Upstanding using is an action applying to one thing. Understand "pull up [something]" or "pull up on [something]" or "stand using [something]" or "stand on [something]" or "climb on [something]" or "pull up with [something]" or "lift me with [something]" or "lift myself with [something]" or "pull me with [something]" or "pull me on [something]" or "pull me up with [something]" or "pull me up on [something]" or "pull on [something]" as upstanding using. Sitting down is an action applying to nothing. Understand "sit" or "sit down" or "let go" as sitting down. [A command that sometimes maps to sitting down.] Lying down is an action applying to nothing. Understand "lie" or "lie down" as lying down. [Adding to the ambulatory definition.] Standing alone is being ambulatory. Upstanding using is being ambulatory. Sitting down is being ambulatory. Lying down is being ambulatory. [Mapping some commands to upstanding using and sitting down] Instead of entering something that is suitable for pulling up on, try upstanding using the noun. Instead of climbing something that is suitable for pulling up on, try upstanding using the noun. Instead of rubbing a parent person, try upstanding using the noun. Before dropping a suitable for pulling up on thing: if the player is pulled up on the noun, instead try sitting down. [Action-handling rules for standing using and sitting down] Check upstanding using: if the noun is the player, instead say "Pulling yourself up by your bootstraps is a metaphor, you can't really pull yourself up using yourself."; if the noun is not suitable for pulling up on, instead say "You can't pull up on [the noun] to stand."; if the player is on the noun, instead say "You are already on [the noun] and that is just as good if not better than pulling up on it."; if the player is on a supporter (called the platform) begin; if the platform is the noun, instead say "You cannot both pull up on something and be sitting on it at the same time."; if the noun is furniture, instead say "Even this high you would have a very hard time stepping from [the platform] to [the noun] without falling on your face so it is best that you not do that."; say "(first getting off of [the platform] and plopping on the ground)[line break]"; silently try getting off the platform; if the player is on the platform, stop the action; otherwise if the player is pulled up on something (called the support); if the support is the noun, instead say "You are already all pulled up on [the support] and you can't go any higher."; say "(first letting go of [the support] and plopping on the ground)[line break]"; let go of the support; otherwise; if the player is not unburdened begin; if the player is gnawing a medium thing (called g), instead say "Even though you are chewing on [the g] it is big enough that you still have to keep it in your hands and so you can't pull up while you have it, if only [the g] were smaller you would have your hands free."; instead say "You have stuff in your hands and you will need those hands to pull yourself up so drop something I guess."; end if; end if; Check someone upstanding using: if the noun is not suitable for pulling up on, stop the action; if the person asked is pulled up on something (called the support) begin; if the support is the noun, stop the action; seat the person asked; otherwise; if the person asked is not unburdened, stop the action; end if; Carry out an actor upstanding using (this is the standard upstanding using rule): now the actor is pulled up on the noun. Report upstanding using: if a playmate is pulled up on the noun, say "You wriggle your way next to [the list of playmates pulled up on the noun] and pull up on [the noun] and get to your feet."; otherwise say "You pull up on [the noun] and get to your feet and you are all steady except for the occasional sway." Report someone upstanding using: if the person asked is present, say "[The person asked] pulls up on [the noun]." Check an actor sitting down: if the actor is not standing begin; if the actor is the player, say "Since you are already sitting you can't sit again or maybe it's like you've already succeeded at sitting."; stop the action; end if. Carry out an actor sitting down: seat the actor. Report sitting down (this is the standard report sitting down rule): say "You sit down on your diaper and it is good that it is all padded and stuff." Report someone sitting down: if the person asked is present, say "[The person asked] lets go and sits down." Before an actor lying down when the actor is standing: instead try the actor sitting down. Check lying down: instead say "You pretty much alternate between lying down and sitting down and crawling, it is your natural state, so there is no need to specifically ask to lie down if you're not standing." [Side effects of standing using] [A global variable to hold an item on which a player was recently pulled up -- for one turn only.] The just-released item is a thing that varies. An every turn rule (this is the clear the just-released item rule): Now the just-released item is nothing. Before going down or exiting when the player is pulled up on something: try sitting down instead; Instead of going up when the player is pulled up on something: say "This is as high as you are going to go, you can pull up but not really climb." Before going a direction (called goal) when the player is pulled up on something (called support) (this is the sit down before moving in a non-cruising direction rule): if going goal while holding onto support involves cruising begin; do nothing; otherwise if goal is not up; [The previous rule handles going up] say "(first letting go of [the support] and plopping on the ground)[command clarification break]"; let go of the support; end if. Before pushing something to a direction when the player is pulled up on something (called support): say "(first letting go of [the support] and plopping on the ground)[command clarification break]"; let go of support. Before entering something when the player is pulled up on something (called support): say "(first letting go of [the support] and plopping on the ground)[command clarification break]"; let go of support. Before someone going down when the person asked is pulled up on something: try the person asked trying sitting down instead; Check someone going a direction (called goal) when the person asked is pulled up on something (called support) (this is the others must sit before moving rule): if going goal while holding onto support involves cruising begin; do nothing; otherwise; seat the person asked; change the just-released item to support; end if. [We should only reach these rules if the direction in which a character is going is a cruise direction.] [The cruise the player rule is in part duplicated by the third Zoe stalks the player rule. Keep them synchronized.] Instead of going a direction (called goal) when the player is pulled up on something (called support) (this is the cruise the player rule): let furnishing be the other end of support to the goal; cruise the player to the goal and hold the furnishing; Carry out someone going a direction (called goal) when the person asked is pulled up on something (called support) (this is the others cruising rule): let furnishing be the other end of support to the goal; cruise the person asked to the goal and hold the furnishing; A height reachability rule when the reaching actor is standing: if the current action is taking or pushing or attacking, continue action processing. Instead of taking or pushing or attacking something when the player is standing: if the player is pulled up on the noun, say "Your hands are full of [the noun] since you are pulled up on it, but you cannot really take [the noun]."; otherwise say "You cannot reach [the noun] because you are standing and if you let go with one hand you would just plop down before you could get it." Instead of someone taking something when the person asked is standing, stop the action. Instead of chewing something when the player is standing, say "You do not have enough hands and eyes and coordination to chew something new when you are all pulled up." Instead of someone chewing something when the person asked is standing, stop the action. Section 3 - Cruising [When you're pulled up on some things, you can cruise along them -- slide along their length. Babies do this with couches and chairs and the like. We keep track of what you can cruise along using a table. It would be clever to use relations here, but we don't just relate one thing to another; we relate one thing to another via a direction.] Table of Cruising Possibilities Primary Direction Reciprocal north pink striped loveseat south south pink striped loveseat south pink striped loveseat north north pink striped loveseat west grey couch east middle grey couch middle grey couch west west grey couch middle grey couch east east grey couch east grey couch west middle grey couch To decide if going (goal - a direction) while holding onto (support - a thing) involves cruising: if support is not suitable for cruising, decide no; repeat through the Table of Cruising Possibilities begin; if primary entry is support and direction entry is goal, decide yes; end repeat; decide no. To decide what thing is the other end of (support - a thing) to the (goal - a direction): repeat through the Table of Cruising Possibilities begin; if primary entry is support and direction entry is goal, decide on reciprocal entry; end repeat; change hacky global item to the support; report bug "[The hacky global item] doesn't have that direction in the Table of Cruising Possibilities."; decide on support. To decide what thing is the first end of (support - a thing) from the (goal - a direction): repeat through the Table of Cruising Possibilities begin; if reciprocal entry is support and direction entry is goal, decide on primary entry; end repeat; change hacky global item to the support; report bug "The reciprocal [hacky global item] doesn't have that direction in the Table of Cruising Possibilities."; decide on support. To cruise (kid - a person) to (goal - direction) and hold (support - a thing): if kid is the player, say "You slide along while moving your hands to keep steady."; now the kid is pulled up on the support; change the last location of the kid to the location of the kid; move the kid to the room goal from the location of the kid; Chapter 7 - Fascination, Which Allows Babies to be Fixated on Objects Fascination relates one thing to one person. The verb to fascinate (he fascinates, they fascinate, he fascinated, it is fascinated, he is fascinating) implies the fascination relation. To decide if (victim - a person) is fixated on (focus - an object): if focus fascinates victim, decide yes; if focus is a person and focus encloses something that fascinates victim, decide yes; decide no. To decide if (victim - a person) is not fixated on (focus - an object): if victim is fixated on focus, decide no; decide yes. To say focus of (victim - a person): let f be a random thing that fascinates victim; say "[the f]". Definition: a person is fixated if something fascinates it. Chapter 8 - Scoping, Which is Fiddled Because in This Game Regions Are Really Rooms After deciding the scope of the player when the location is regionally in Play Area: repeat with P running through the rooms in Play Area begin; place P in scope; end repeat. After deciding the scope of the player when the location is regionally in Hidden Area: repeat with P running through the rooms in Hidden Area begin; place P in scope; end repeat. A thing can be room-mentioning. A thing is usually room-mentioning. To say the placement of (item - a thing): if the item and the player are not co-located begin; let place be the location of the item; let way be the best route from the location to the place; say "[is-are of item]"; if item is inside a container (called c), say " inside [the c]"; say "[if item is room-mentioning] [faraway descriptor of place][end if][if way is a direction] to the [way][note fiddled-scope]"; end if. After printing the description of something which is within a room which is not the location (this is the description of distant item location rule): say "[Cap it-they of the noun] [the placement of the noun]. [run paragraph on]". Before doing something other than examining or following or building to something which is not enclosed by the location (this is the babies have stubby little arms rule): if the noun is a backdrop begin; if the noun is not in the location, instead say "[The noun] [is-are] way too far away for that[note fiddled-scope]."; otherwise; instead say "[The noun] [the placement of the noun] and so [is-are of the noun] way too far away for that."; end if. Does the player mean doing something other than examining or following something which is not enclosed by the location: it is very unlikely. [I don't like how, because everything is effectively always in scope, you get clarification messages on doing things like pulling up on a loveseat. This next bit of wizardry prevents that from happening. TK This will need to be checked against every update of I7 ever, sigh.] Include (- [ CountPresentMatchedObjects i cnt; cnt = 0; for (i=0; ii)) { cnt++; if (cnt > 1) { rtrue; } } } rfalse; ]; -). To decide if only one matched object is present: (- (CountPresentMatchedObjects) -) Rule for clarifying the parser's choice when only one matched object is present: do nothing. Chapter 9 - Pre-writing a Paragraph About, Which is a New Activity To Allow Us to Collate Playmates' Paragraphs in Room Descriptions [Originally this was to be a simple rule added to the carry out looking rulebook, but I7 doesn't handle things properly. I can't mark items that I print something about as already having been mentioned so the "writing a paragraph about" activity doesn't fire, among other problems.] Pre-writing a paragraph about something is an activity. A carry out looking rule (this is the room description pre-writing paragraphs about playmates rule): let c be the number of playmates in the location; if c is greater than 0 begin; if c is greater than 1 begin; let flag be 0; repeat with p running through playmates in the location begin; say "[if flag is not 0] and [end if][p]"; increment flag by 1; end repeat; say " are here. [run paragraph on]"; end if; repeat with p running through playmates in the location begin; carry out the pre-writing a paragraph about activity with p; end repeat; if c is greater than 1, say note collated-reports; say paragraph break; end if. [Don't otherwise mention playmates.] Rule for writing a paragraph about a playmate (called p): now p is mentioned; now p is not marked for listing. The room description pre-writing paragraphs about playmates rule is listed after the room description body text rule in the carry out looking rulebook. Chapter 10 - Visitation, Which Puts Hooks on the Player Entering Rooms A room has a number called visitation count. The visitation count of a room is usually 0. Visiting is an action applying to one visible thing. Carry out visiting: if the noun is a room, increase the visitation count of the noun by 1. The last report going rule (this is the record the player's visitation rule): try visiting the location. Chapter 11 - Noticeability, Which Keeps People from Seeing Things [A mechanism for marking certain objects as not to be taken by playmates] A thing can be noticeable by playmates. A thing is normally noticeable by playmates. Definition: a thing is pickupable: if it is not noticeable by playmates then decide no; if it is carryable then decide yes; decide no. Definition: a thing is worth noting: if it is noticeable by playmates then decide yes; decide no. VOLUME 3 - On the Physical Environment Chapter 0 - The Player's Stuff Your diaper is part of the player. The description of your diaper is "The diaper covers you and contains any embarassing accidents or whatever." Your diaper is ambiguously plural. Understand "diapers" as your diaper. Instead of dropping or taking off your diaper, say "There is no way you are reaching all the way around and taking off your diaper, you would have to be superbaby or something to do that." Instead of looking under or searching your diaper, say "That is all you in there." Instead of doing something other than examining, looking under, searching, dropping, smelling or taking off your diaper, say "The diaper is always there, it's not like there's anything you can do about it." Check smelling the diaper: try smelling the player instead. Chapter 1 - Beneath the Covers Beneath the Covers is a room. "It is dark and stuffy and you are covered over, something is all draped over you, it is enough to make you crazy." The printed name is "Smothered in Darkness". [Without this rule, if players type something like >TAKE while under the covers, the game will assume they mean the blanket and print "(the blanket)". By explicitly assuming that they mean the blanket, the announcement isn't printed, and instead handling falls through to the "Instead of doing something..." rule below. Tah-dah!] Rule for supplying a missing noun while in Beneath the Covers: change the noun to the blanket. Instead of doing something other than looking, examining, crying, breathing, breathing fast, breathing slow, sleeping, or waiting in Beneath the Covers, say "Everything you try just winds you tighter in the darkness, this sucks." Instead of examining in Beneath the Covers, say "It is too dark." Instead of going a direction in Beneath the Covers, say "You flail around but you are wound up in darkness, it is like there is no escape." Instead of breathing slow in Beneath the Covers, say "You wish you could, it's not that easy, maybe it gets easier when you get older." Instead of sleeping in Beneath the Covers, say "It is tempting but no, naps just waste time." Instead of crying in Beneath the Covers: now the player is upset; say "Suddenly the darkness is gone, and it is so light, you are blinded for just a second. You blink and blink and then you can see the mom holding the blanket she was covering you with. 'Oh, kid, I'm so sorry, I thought you were having fun,' she says. 'We'll do something else.' That'll teach her[note crying-in-darkness].[banner text][paragraph break]"; [The darkness "instead" rule is to override the "Instead of examining" rule above. The "in Beneath the Covers" clause is needed to make it more specific than the above rule.] The blanket is scenery in Beneath the Covers. Understand "cover" or "covers" or "something" or "thing" or "man" as the blanket. The darkness is scenery in Beneath the Covers. Understand "dark" or "darkness" as the darkness. Instead of examining the darkness in Beneath the Covers, say "It is so dark you cannot even see the darkness, that is how dark it is." Chapter 2 - The Living Room Section 1 - The Middle of the Living Room (Introduction scene only) [We separate the Intro Middle from all other rooms because we make such large changes to it after the intro that it's easiest to replace it with an entirely new room.] The Intro Middle is a room. "This is the middle of the living room, it is all big and vast. But it would be bigger and vaster if there weren't all these pillows and stuff in a big ring around you[if the ring of pillows is breached]. But there is a big gap in the ring of pillows now to the east[end if][if unvisited]. The mom is totally all paranoid and whatever, she is a new mom[end if]." The printed name of Intro Middle is "Middle of the Living Room". In the Intro Middle is a squishy ball, a plush book, and your favorite toy. Your favorite toy and squishy ball are small. The plush book is medium. The description of the squishy ball is "Blue and brown and white and it has teeth marks on it." Understand "blue", "brown" or "white" as the squishy ball. The squishy ball is pushable between rooms. The teeth marks are part of the squishy ball. The description is "There are teeth marks in the squishy ball from you chomping on it." The description of the plush book is "It is plush and the mom likes to read it to you." Instead of opening or closing the plush book, try reading the plush book. The description of your favorite toy is "This is the thing your aunt gave you[note hhgttg] which is a super fun toy. It has places to chew and places that are shiny and it rattles when you shake it[if your favorite toy is in the bookcase]. Right now it is up on the bookcase, it is like nearly half a parent high[end if]." Understand "thing" or "favourite" as your favorite toy. Your favorite toy can be Parry-touched or not Parry-touched. Your favorite toy is not Parry-touched. Instead of waving your favorite toy, say "Rattle rattle rattle." Instead of inserting something into your favorite toy, say "You may be thinking about a different game." [Ring of pillows] The ring of pillows is scenery in the Intro Middle. The description is "The ring is a bunch of pillows and stuff piled around in a circle so you can't go crawling away when the mom is all distracted[if breached]. But that will not work this time because there is a big hole where Alfadog used to be[end if]. The whole thing is taller than you even when you are sitting." Understand "pillow" or "stuff" as the ring of pillows. The ring of pillows can be whole or breached. The ring of pillows is whole. Understand "hole" or "gap" as the ring of pillows when the ring of pillows is breached. Instead of taking the ring of pillows, say "It is true that there are a bunch of individual pillows in the ring of pillows but each one is like bigger than you are, so you aren't going to be able to take any of them. The mom and the dad must need a lot of softness in their lives." Instead of tasting the ring of pillows, say "The pillows taste kinda dusty." Instead of pushing or pulling the ring of pillows, say "They are so soft and way bigger than you, and you have the proportional strength of one baby, so they do not move." After examining the ring of pillows when Alfadog is in the location and Alfadog is scenery: say "Hey wait, what is Alfadog doing wedged in the pillows like that?"; now Alfadog is not scenery. Instead of searching the ring of pillows when Alfadog is in the location and Alfadog is scenery: say "Hey wait, what is Alfadog doing wedged in the pillows like that?"; now Alfadog is not scenery. Instead of going a direction (called d) in the Intro Middle: if d is up or d is down, continue the action; try exiting. Instead of exiting in the Intro Middle: if the player is standing, continue the action; say "Those pillows are terribly high, you can't really climb over them, and they are too big to shove. Stupid small legs. Stupid small body." Instead of going east in the Intro Middle when the ring of pillows is breached, move the player to the TV Room. Instead of exiting in the Intro Middle, try going east. Instead of upstanding using the ring of pillows, say "They are all smooshy and that makes them too hard to pull up on." [Alfadog and alfaswitch] Alfadog is scenery in the Intro Middle. The description of Alfadog is "It is Alfadog, your alphabet-knowing toy[if the ring of pillows is whole] and it is all wedged under some pillows[end if]. He is about as long as you and he is about as tall as you when you are crawling, it is as if he is your brother only he is a dog. He has this switch on him that makes him run and say the alphabet and such." Understand "alphadog" or "dog" or "him" as Alfadog. Instead of switching on Alfadog, try switching on the alfaswitch. Instead of switching off Alfadog, try switching off the alfaswitch. Instead of tasting Alfadog, say "Alfadog tastes of plastic and sweatshops." A small device called the alfaswitch is part of Alfadog. The printed name is "switch on Alfadog". Understand "switch" as the alfaswitch. Instead of turning or pushing or switching on the alfaswitch when Alfadog is in Intro Middle: say "You are all fumbly on the switch but then you get it turned on and look out! Alfadog lights up and his paws start digging in and he is barking out 'A! B! C! D! EFG!' It looks like he may be stuck under those pillows but then 'L! M! N! O! [bold type]P[roman type]!' pillows tumble out of his way and he is free, zipping off to the east! You hear him winding down, 'W X Y and Zeee.....' And now there is this big gap in the pillows to the east. That Alfadog is very powerful, he should probably be recalled[note others-do-your-bidding]."; now Alfadog is in the TV Room; now Alfadog is not scenery; now the ring of pillows is breached; record 5 points for "smashing open the pillows with Alfadog"; Instead of turning or pushing or switching on the alfaswitch, say "Alfadog does not light up, I guess he is all tired now. Maybe he needs a nap." Instead of taking or pushing or pulling Alfadog when the ring of pillows is whole, say "It is hard enough to move Alfadog around when he is not all covered over with pillows, there is no way you are budging him yourself when he is wedged in there like that." Before pushing Alfadog to a direction when the ring of pillows is whole, instead say "Alfadog may be an alfaman's best friend but it is also too large for you to really move." Instead of taking or pushing or pulling Alfadog, say "Alfadog may be an alfaman's best friend but it is also too large for you to really move." Before pushing Alfadog to a direction, instead say "Alfadog may be an alfaman's best friend but it is also too large for you to really move." Instead of doing something other than examining in the presence of the mom when Alfadog is acted upon and Goading is happening, say "You make a move towards [the noun] and the mom grabs you and says, 'We're not playing with Alfadog right now, kiddo. We're working on pulling up.'" Instead of doing something other than examining in the presence of the mom when the alfaswitch is acted upon and Goading is happening, say "You make a move towards [the noun] and the mom grabs you and says, 'We're not playing with Alfadog right now, kiddo. We're working on pulling up.'" [Footstool] The footstool is furniture in the Intro Middle. "There is a red footstool, it [if the player is pulled up on the footstool]is all close to you[otherwise if the footstool is in the West End of Couch or the footstool is in the Secret Space]is right next to the couch[otherwise]looms over you[end if][if some thing is on the footstool and the player is pulled up on the footstool]. [run paragraph on][otherwise]." The description is "[if the player is pulled up on the footstool]It is hard to get a good look at the footstool, your face is like inches away from it, but it is all rough under your hands[otherwise if the footstool is in the West End of Couch]The footstool is up in a corner, there is only a small gap between it and the couch with more couch past it to the west[otherwise if the footstool is in the Secret Space]It is hiding you from all of the other babies[otherwise]Tall and red fabric all over. It is kinda imposing really, all tall and everything[note relative-sizes][end if][if the folded paper is not handled and Snacktime is happening]. Beyond it past the gap between the footstool and the couch you can see this little piece of paper[end if].". Understand "tall", "red", "stool", or "fabric" as the footstool. Report upstanding using the footstool when the footstool is supporting something: instead say "You pull yourself up and it is one hand and another hand which is hard because the footstool is all unstable and rocks some but then you are all on your feet so yay you! And now that you are up here you can see [the contents of the footstool] on the footstool." Instead of pushing, pulling, attacking, or waving the footstool when the footstool is supporting something: say "You push on the footstool and it rocks and you pull on the footstool and it rocks and then "; if the mom is in the location begin; say "the mom puts a hand on the footstool and steadies it. 'Whoa there,' she tells you, 'careful or you'll knock off the toy.'"; otherwise; now every thing which is on the footstool is in the TV Room; say "you hear stuff fall off it! But the stuff fell outside the ring of pillows[note pushing-footstool]."; record 5 points for "knocking your favorite toy off the footstool"; end if. Instead of pushing, pulling or waving the footstool: say "You tug on the footstool and it rocks and rocks and then it stops rocking." Instead of pushing, pulling or waving the footstool when the footstool is in the West End of Couch, say "It does not move, it is too close to the couch." Instead of touching the footstool, say "Rough." Section 2 - North End of Loveseat Mentioning baby-gate-goneness is a one-time deal. The North End of Loveseat is a room. "This is the part of the loveseat that is to the north. It goes on to the south and you could totally slip around the end of the loveseat to the west[if the plastic gate is in the North End of Loveseat] except that a baby gate is in the way[end if]. There is the rocking chair to the east as well, that is always fun.[if the plastic gate is not in the North End of Loveseat and mentioning baby-gate-goneness has not occurred][paragraph break]Hey, that baby gate that blocked your way west is all gone." The printed name is "Loveseat at the North". The faraway descriptor is "over by the north end of the loveseat". The rug is a backdrop. It is in the North End of Loveseat and Behind the Loveseat. "[if the player is not zeroth-height]From up here the pattern on the rug doesn't make any more sense than it does when you are on the floor[otherwise]Maybe the pattern on the rug looks fine when you are all tall and parenty but when you are on your hands and knees it mainly makes your eyes water[end if]. There is this bump in it that runs [if the plastic gate is in the North End of Loveseat]right alongside the baby gate[otherwise]in a north-south line[end if]." Understand "pattern" as the rug. Instead of looking under the rug, say "It is too large for you to really move it and see under it." The bump is part of the rug. The description is "The bump is not big but it is not small either, maybe there is an extension cord running under the rug there. OSHA would probably declare it a trip hazard." Instead of pushing or pushing or kicking at or squeezing or attacking the bump, say "You push on the bump but it is unyielding much like your iron will." Instead of an actor going west with a pushable between rooms thing (called poosh) when the actor is in the North End of Loveseat and the plastic gate is not in the North End of Loveseat: if the actor is the player, say "There is this bump in the rug that totally catches [the poosh] and keeps you from pushing [it-them] west from here." Instead of an actor going west in the North End of Loveseat when the plastic gate is in the North End of Loveseat: if the actor is the player, say "That baby gate is completely in your way."; stop the action. The north pink striped loveseat is furniture in the North End of Loveseat. It is scenery and not room-mentioning. The description of the north pink striped loveseat is "The loveseat is pink and striped and tastes funny if you lick it. This is the north part of it and there is open space past it to the west[if the plastic gate is in the North End of Loveseat] that is blocked by a baby gate[end if]." The north pink striped loveseat is suitable for cruising. Rule for printing the name of the north pink striped loveseat while constructing the status line: say "loveseat" instead. Instead of tasting the north pink striped loveseat, say "It has this funny zing to it like dust or stale cheerios." Section 3 - Rocking Chair Room By the Rocking Chair is east of the North End of Loveseat. "The gliding rocking chair is all tall and wooden. It is where the mom rocks you when she thinks you need a nap even though you do not need naps. The loveseat is west and there is a small open area to the east and a big open area in the middle of the room to the south." The faraway descriptor is "next to the gliding rocking chair". The smooth rock is a small thing in By the Rocking Chair. The description is "The mom found this one one of your walks, well it wasn't really a walk, more like the mom driving you around in a stroller, anyway she found this rock and gave it to you." Understand "stone" or "pebble" as the smooth rock. The gliding rocking chair is furniture in the By the Rocking Chair. It is not room-mentioning and scenery. The description is "The dad likes to sit in the chair and rock back and forth and back and forth and back and forth which is okay for napping (not that you need naps) but is not so good when you are trying to pull up on it." Understand "tall" or "wooden" or "rocker" as the gliding rocking chair. The gliding rocking chair is suitable for pulling up on. Rule for printing the name of the gliding rocking chair while constructing the status line: say "chair" instead. Instead of tasting the gliding rocking chair, say "Woody with a hint of smoke." Instead of pushing or pulling the rocking chair, say "You are too small and it is too big for you to push and pull it all that well." Instead of pushing or pulling the rocking chair during Playtime, say "You stopping Parry from rocking by pushing on the chair is like ants stopping semi trucks from rolling." [The normal description of distant item location rule will add "It is next to the gliding rocking chair" to the rocking chair's description, thanks to the room's faraway descriptor. Fix that.] After printing the description of the gliding rocking chair when the gliding rocking chair is within a room which is not the location: if the gliding rocking chair and the player are not co-located begin; let place be the location of the gliding rocking chair; let way be the best route from the location to the place; say "It is [if way is a direction]to the [way] [end if]between the small open place and the loveseat. [run paragraph on]"; end if; ignore the description of distant item location rule. Instead of putting something under the gliding rocking chair, say "That would be a good way to stop the rocking chair from rocking but it is a gliding rocking chair and so even if you put something under there it could keep gliding." After upstanding using the gliding rocking chair, say "It is hard to pull up on the rocker because it wants to be all wiggly but you do it anyway." To decide if Parry is rocking: if someone is enclosed by Parry, decide no; decide yes. To decide if Parry isn't rocking: if someone is enclosed by Parry, decide yes; decide no. Getting points for J following you is a one-time deal. Mentioning stopped rocking is a one-time deal. Instead of upstanding using the gliding rocking chair during Playtime: abide by the check upstanding using rulebook; if a person is held by Parry begin; consider the standard upstanding using rule; say "You pull up on the gliding rocking chair and Parry looks down at you and says 'Oh, uh, hang on just a second and I'll pick you up, too.'"; otherwise; say "As soon as you have pulled up on the gliding rocking chair Parry looks down and says 'Hey, there, you want to be picked up?' and he lifts you into his lap and stops rocking[if mentioning stopped rocking has not occurred]. If you were on the ground you could get to the backpack now[end if][run paragraph on]"; move the player to Parry, without printing a room description; Parry releases the player in three turns from now; if Jemison attempts to follow the player into Parry's lap begin; say ". And then Jemison pulls up on the gliding rocking chair and looks up at you and grunts softly."; if getting points for J following you has not occurred, record 5 points for "getting Jemison to pull up after you"; otherwise; say "."; end if; end if. Instead of someone (called the stander) trying upstanding using the gliding rocking chair during Playtime: if a person is held by Parry begin; consider the standard upstanding using rule; if the stander is present and not running silently, say "[The stander] pulls up on the gliding rocking chair and Parry looks down at [it-them of the stander] and says 'Oh, uh, hang on just a second and I'll pick you up, too.'"; otherwise; let print-flag be 0; if the stander is present and not running silently, change print-flag to 1; if print-flag is 1, say "[The stander] pulls up on the gliding rocking chair and Parry looks down and says 'Hey, there, [if the stander is male]mister man[otherwise]sweetie[end if], do you want to be picked up?' and he scoops [it-them of the stander] up"; move the stander to Parry; Parry releases in three turns from now; if Jemison attempts to follow the stander into Parry's lap and print-flag is 1, say ". Jemison is not going to let [the stander] get away, he pulls up on the gliding rocking chair and stares up at [the stander]."; otherwise if print-flag is 1, say "."; end if. [The following "at the time when..." rules deal with kids getting put down by Parry. The player can wiggle (by trying to go down or something similar) when held by Parry in order to get down sooner, bypassing these timed rules. If there was only one timed rule, and if Jemison then followed the player into Parry's lap, the single rule would fire and he'd be put down too early for the player to do anything about the backpack under the rocking chair. Since you can't create "at the time when..." rules that include arguments, I have two separate timed rules instead, one for the player, and one for random kids.] At the time when Parry releases the player: if the player is enclosed by Parry, make Parry put the player down. At the time when Parry releases: [In case the kid held by Parry is set down early because Marion gives the backpack to Parry:] if no person is enclosed by Parry, rule succeeds; make Parry put a random person held by Parry down. To make Parry put (kid - a person) down: let print-flag be 0; move the kid to the location of the gliding rocking chair, without printing a room description; if kid is the player or kid is present, change print-flag to 1; if kid is Jemison begin; now Jemison is active; if Jemison is fixated on Parry begin; let f be a random thing that fascinates Jemison; if print-flag is 1, say "Parry says, 'Okay, down you go' to Jemison who scrabbles around and grabs [the f]. Parry gently lowers Jemison to the floor"; move f to Jemison; now f does not fascinate Jemison; end if; otherwise if print-flag is 1; say "Parry says, 'Okay, down you go,' and he gently lowers [name of kid] to the floor"; end if; if someone (called the stander) is pulled up on the gliding rocking chair begin; if print-flag is 1, say ". He then is all 'And now it's your turn' and he picks [name of stander] up[if stander is Jemison][note jemison-in-Parrys-lap][end if][run paragraph on]"; now the stander is not pulled up on anything; if the stander is Jemison and Jemison is not fixated on Parry begin; if print-flag is 1, say " but Jemison makes a big fuss and Parry is all, 'Whoa! Whoa!' and [if 1 out of 4]Becca laughs and says, 'Jemison gets that way sometimes.' Parry smiles weakly and [end if]puts Jemison back down[if Jemison is fixated] and Jemison looks pointedly at [the random thing that fascinates Jemison][end if]. Then Parry starts rocking again."; otherwise; move the stander to Parry, without printing a room description; Parry releases in three turns from now; if Jemison attempts to follow the stander into Parry's lap and print-flag is 1, say " and Jemison is right behind [name of stander] and pulls up on the gliding rocking chair."; otherwise if print-flag is 1, say "."; end if; otherwise if print-flag is 1; say " and starts rocking again."; end if. At the time when Marion almost removes the toy: if Marion encloses the backpack begin; say "There is this rattle rattle and your head snaps up and [if Marion is not present]you look way over at the loveseat and [end if]see Marion start to pull your favorite toy out of the backpack and then she looks at you and then she looks at Zoe and she puts the toy back in the backpack."; Marion looses the wild onesie in two turns from now; end if. At the time when Marion looses the wild onesie: if Playtime is not happening, rule succeeds; if Marion does not enclose the backpack, rule succeeds; now the backpack is in the location of the gliding rocking chair; now the backpack is not handled; now the backpack is closed; now the plain white onesie is loose; remove the plain white onesie from play; remove your favorite toy from play; if Marion is present, say "Marion stands up and walks over to the gliding rocking chair and then she is back only now she doesn't have the backpack any more."; if Parry is present, say "A shadow falls over you and it is Marion with the backpack. [if Parry is rocking]Parry stops rocking and [end if]Marion shoves the backpack back under the gliding rocking chair." At the time when Parry looses the wild onesie: if Playtime is not happening, rule succeeds; now the backpack is in the location of the gliding rocking chair; now the backpack is not handled; now the backpack is closed; now the plain white onesie is loose; remove the plain white onesie from play; remove your favorite toy from play; if Parry is present begin; say "Parry finally frees the onesie from the terrible clutches of the backpack and shoves it and your favorite toy back inside and "; if the player is held by Parry, say "holds you carefully while he "; otherwise if a person (called p) is held by Parry, say "holds [p] carefully while he "; say "puts the backpack back under the rocking chair. 'Got it!' he calls to Marion, who says, 'Thanks!' Zoe just looks disguted, it is like that is the only look she practices."; end if. To decide if Jemison attempts to follow (leader - a person) into Parry's lap: if Jemison and the leader are not co-located, decide no; if Jemison is not fixated on the leader, decide no; if Jemison clears all inventory, do nothing; now Jemison is pulled up on the gliding rocking chair; now Jemison is passive; decide yes. The backpack is an openable closed container in By the Rocking Chair. "A backpack with bears on and your favorite toy in it is shoved behind the rocking chair next to the wall[if open] and is all gaping open[end if][note take-all-from-backpack]." The description is "Zoe's backpack has all these cute bears sewed on it. Clearly her mom Marion picked it out, it does not reek of evil like it would if Zoe had chosen it. It is [if the backpack is open]all gaping open though the only thing you can see in it is this white onesie[otherwise]closed so you can't see what's in it[end if][if your favorite toy is not in play] though you know your toy is in there somewhere[end if]." Understand "bear" or "bears" or "with bears on" or "bag" as the backpack. The printed name is "backpack with bears on". The zipper is part of the backpack. "The backpack's zipper is [if the backpack is open]down a ways but stuck[otherwise]zipped all the way up." Instead of opening or pulling the zipper, try opening the backpack. Instead of closing the zipper, try closing the backpack. The faker-toy is part of the backpack. Understand "your" or "favorite" or "toy" as the faker-toy when your favorite toy is not in play and Playtime is happening. The printed name is "favorite toy". The indefinite article of the faker-toy is "your". Before doing something when the faker-toy is acted upon, instead say "You can't really do anything to your toy right now because it is in that backpack." Before examining the faker-toy, instead say "Your toy is inside Zoe's backpack so you cannot really see it." Instead of doing something other than examining when the backpack is acted upon and Parry is rocking and the backpack is in By the Rocking Chair, say "You would but Parry is rocking, rocking, rocking, and you can't reach under the rocking chair to get to the backpack while he is rocking, rocking, rocking." Instead of doing something other than examining when the backpack is acted upon and the backpack is held by someone (called the holder), say "[The holder] has the backpack right now." [I have to trap taking, pushing, and pulling separately because of other rule interactions.] Instead of taking or pushing or pulling the backpack when Parry is rocking and the backpack is in By the Rocking Chair, try opening the backpack instead. [The open rule gets caught by the above rule.] Instead of taking or pushing or pulling the backpack when the backpack is held by someone, try opening the backpack. Instead of pushing or pulling the backpack, say "It is way big and you can't really budge it." A rule for reaching inside the backpack: if Parry is rocking and the backpack is in By the Rocking Chair begin; if the person reaching is the player, say "You would but Parry is rocking, rocking, rocking, and you can't reach under the rocking chair to get to the backpack while he is rocking, rocking, rocking."; deny access; end if. Getting points for opening the backpack is a one-time deal. After opening the backpack: move the plain white onesie to the backpack; say "When you open the backpack all you can see in it is this white onesie that is totally in your way."; if Zoe is carrying something (called the distractor) begin; silently try Zoe trying dropping the distractor; if Zoe is not carrying the distractor, say "Zoe sees you open that backpack and she gets agitated and tosses [the distractor] aside."; end if; if getting points for opening the backpack has not occurred, record 5 points for "opening the backpack"; now Zoe is done acting. After searching the backpack, say "You cannot find anything in the backpack, that stupid onesie is in the way." Instead of opening the backpack when the backpack is open and the plain white onesie is stuck and the plain white onesie is in the backpack, say "That backpack is as open as it is going to be with that onesie all stuck in there." Instead of closing the backpack when the backpack is open and the plain white onesie is stuck and the plain white onesie is in the backpack, say "You try and you try but that onesie is stuck in there and so you can't close the backpack." Instead of removing the plain white onesie from the backpack, try taking the plain white onesie. Instead of pulling or pushing the plain white onesie, try taking the plain white onesie. Instead of taking the plain white onesie when the plain white onesie is in the backpack: if the plain white onesie is loose begin; now the plain white onesie is stuck; change the act percentage of Zoe to 100; now Zoe is done acting; say "You pull on the onesie and it comes part of the way out of the backpack and then it gets hung on the backpack zipper. Great. Now it is blocking the backpack and it is also stuck[note stuck-onesie]."; otherwise; say "You tug on that stupid onesie but it is stuck in the stupid backpack's stupid zipper."; end if. Instead of looking under the plain white onesie when the plain white onesie is in the backpack: if the plain white onesie is loose, try taking the plain white onesie; otherwise say "You cannot see under the onesie, it is in your way and you cannot move it." Instead of taking something that is in the backpack: say "That white onesie is in the way." [These next two rules allow you to refer to the white onesie in the backpack with ALL but not anything else.] Rule for deciding whether all includes the plain white onesie: it does. Rule for deciding whether all includes something that is in the backpack: it does not. [Zoe's toys from her backpack] The plain white onesie is a small thing. The plain white onesie can be stuck or loose. The plain white onesie is loose. The description of the plain white onesie is "That onesie is [if loose]totally in the way[otherwise]all stuck in the backpack's zipper[end if]." Does the player mean taking the plain white onesie when the backpack is open: it is very likely. Does the player mean pulling the plain white onesie when the backpack is open: it is very likely. Does the player mean looking under the plain white onesie when the backpack is open: it is very likely. Table of Stuff Originally In the Backpack Stuff a thing with 6 blank rows The soft foam block, the plastic cup, the teething ring, the much-loved kangaroo, the teeny squeezy book, and the little doll are small things in the backpack. Understand "roo" as the much-loved kangaroo. When play begins (this is the filling the table of backpack stuff rule): repeat with t running through things in the backpack begin; if the number of blank rows in the Table of Stuff Originally In the Backpack is 0 begin; report bug "Too few rows in the Table of Stuff Originally In the Backpack"; stop repeating; otherwise; choose a blank row in the Table of Stuff Originally In the Backpack; change stuff entry to t; end if; end repeat. The description of the soft foam block is "Magenta and soft and fun to chew. It is like one hand wide on a side." Understand "magenta" as the soft foam block. The description of the plastic cup is "This is one cup that originally came with a bunch of other cups and they were all different sizes so you could stack them up into a giant tower of cups. But there is only one cup, that is no good for stacking." Instead of inserting something into the plastic cup, say "It is small and can't really hold all that much, besides the cup is for stacking not holding." The description of the teething ring is "Ribbed for your chewing pleasure." The description of the much-loved kangaroo is "This stuffed kangaroo has been loved and chewed and now it has some stuffing showing." Understand "stuffed" or "stuffing" as the much-loved kangaroo. Instead of kissing the much-loved kangaroo, say "You hug and kiss on the kangaroo." The description of the teeny squeezy book is "This is not really a book, it is more like a very small toy that looks kinda like a book." Instead of opening or closing the teeny squeezy book, try reading the teeny squeezy book. The description of the little doll is "It has red hair like Zoe but presumably it is not evil like Zoe." Section 4 - Small Open Area [This was the "Small Open Area" but that then obliterates the value "small".] [Also, there is undoubtedly a more clever way of mentioning your favorite toy when it's on the bookcase than how I'm doing it in the room description, but I never can figure out how the printing activities of I7 work.] The TKBUG Open Area is east of By the Rocking Chair. "You are east of the gliding rocking chair that is fun to ride on and north of the big TV that Sesame Street comes from. On the wall is a big bookcase full of chewy books. There is a way into the kitchen to the north but one of those baby gates is there, that is no fair[if your favorite toy is in the bookcase].[paragraph break]About half a parent high in the bookcase is your favorite toy[end if]." The printed name is "Small Open Area". The faraway descriptor is "in that small open area". [Handle taking your favorite toy when it's above your head] Before taking or attacking your favorite toy when your favorite toy is in the bookcase and the TKBUG Open Area encloses the player: if the player is half-height-or-higher begin; now your favorite toy is handled; if your favorite toy is not Parry-touched, instead say "You stretch for the toy but it is just barely out of reach[if 1 out of 5], grf, that is very frustrating[end if]."; now your favorite toy is in the northeast-playpen; say "You stretch your arms but they are still too much like teeny T. Rex arms so then you scrunch down in your swing and stretch out a leg and as you swoop up again you just are able to kick the toy! It flies into the air and onto your lap! But as you swing back "; if Zoe is on the tall plastic block, say "Zoe leans over from the tall block and swats at the toy and you swat at her and the upshot is the toy goes flying again"; otherwise say "the toy starts to slide out of your lap and you try to grab it but you have the reflexes of a sloth on methamphetamines or something, your arm just jerks and sends the toy flying again"; say " and it goes kerplunk into the playpen. This is the worst playdate ever."; now the baby-swing is temporarily muffled; now Zoe is passive; Zoe reactivates in zero turns from now; instead record 5 points for "accidentally getting your toy in the playpen"; otherwise if the player is in the baby-swing; instead say "The swing gets you close to the toy but even [if your favorite toy is Parry-touched]though Parry got the toy a little closer to you, [end if]at the top of the swing arc you are not close enough to grab it, you need the swing to go higher."; otherwise if the player is eighth-height-or-higher; instead say nearly-in-reach message for your favorite toy; otherwise; instead say "You have short arms, you can't reach your favorite toy from down here."; end if. Before pushing your favorite toy with the poosh stick when your favorite toy is in the bookcase: if the player holds the poosh stick, instead say "[If the player is quarter-height-or-higher]You are much closer to the toy but t[otherwise]T[end if]he long stick is hard to control and the shelves keep getting in the way." At the time when Zoe reactivates: now Zoe is active. The bookcase is a scenery container in the TKBUG Open Area. The description is "Books sleep here when they are not being read by the parents. The books do not really taste all that good and besides you cannot reach any of them [if the player is in the baby-swing]strapped into the swing[otherwise]now that the bottom bookcase shelves are all empty[end if][if the player is not quarter-height-or-higher]. From down here it is even hard to see the books, they are way up there[end if][if your favorite toy is in the bookcase]. Your favorite toy is up next to the books about a half a parent high[end if]." Instead of tasting the bookcase, say "The parents must have cleaned it recently because it has an oil taste." Instead of upstanding using the bookcase, say "You would think there would be good handholds but there aren't, and the wood is all slick." Some out-of-reach books are scenery in the TKBUG Open Area. The description is "These are books but boring and with no pictures. They are all probably post-modern stories of longing and loss and existential angst and whatever because books about Maisy totally are better." Instead of doing something other than examining when the noun is the out-of-reach books or the second noun is the out-of-reach books, say "They are completely out of reach even though there used to be ones in reach before the parents moved them. Whatever. They don't even taste good anyway. They are all like musty with metaphor." Understand "book" as the out-of-reach books. The printed name is "books". Instead of an actor going north in the TKBUG Open Area when the plastic gate is in the TKBUG Open Area: if the actor is the player, say "That baby gate is completely in your way."; stop the action. The plastic gate is a backdrop. The description is "Plastic and it is wedged in there so you cannot go anywhere which is totally not right." It is in the TKBUG Open Area, the Behind the Loveseat, and the North End of Loveseat. Understand "baby" as the plastic gate. It is suitable for pulling up on. Instead of taking the plastic gate, say "It is stuck in place possibly by magic." Instead of tasting the plastic gate, say "Chewy under your new teeth." [The playpen is large enough to go across two rooms, and is represented by two different objects. I have a single routine to describe the playpens, in order to save on string space. This will end up being a Glulx game, so that's silly, but oh well.] A playpen is a kind of container. Playpens are transparent and enterable. A rule for reaching inside a playpen when the top oval is closed: say "The playpen opening is [if the top oval is nearly in reach]still [end if]way too high for you to reach inside."; deny access. A height reachability rule when the reaching object is a playpen (this is the playpen can be reached from all of the blocks rule): if the reaching actor is on a pushable between rooms supporter, continue action processing. Instead of upstanding using a playpen when the top oval is closed, say "The mesh gives too much for you to pull yourself up on it." Instead of upstanding using a playpen when the top oval is open, say "Now that the playpen is open there is really nothing to pull up on." Instead of inserting something into a playpen when the top oval is closed, say "The opening is way too high for you to put anything in the playpen, it's a shame you can't throw things with any accuracy or anything." Instead of inserting something into a playpen when the top oval is closed and the top oval is nearly in reach, say "Putting [the noun] into the playpen won't do you much good and you won't be able to get at it again so you should hold onto [it-them of the noun]." Instead of inserting something into a playpen when the top oval is open, say "You have been working hard to get things out of the playpen, don't spend time putting things back in." Instead of entering a playpen when the top oval is closed, say "The mesh is all in the way and besides it is no fun being in the playpen so why would you go in there voluntarily?" Instead of entering a playpen when the top oval is closed and the top oval is nearly in reach, say "You might be able to tip yourself over the top oval and into the playpen but the fall would be baby-crushing so no thank you." Instead of opening a playpen, try opening the top oval. Instead of closing a playpen, try closing the top oval. Instead of pushing a playpen with the poosh stick, try pushing the top oval with the poosh stick. Instead of unlocking a playpen with the poosh stick, try pushing the top oval with the poosh stick. Rule for reaching outside a playpen: say "You will have to get out of the playpen."; deny access. Rule for writing a paragraph about a playpen (called p): say "[the initial appearance of p][if the top oval is open] The playpen is all open.[run paragraph on][end if]"; if something is in p, say " [if the top oval is open]In the playpen[otherwise]Through the mesh[end if] you can see [a list of things in p]."; otherwise say line break. Mentioning deathtrapness is a one-time deal. To say playpen-description about (p - a playpen): say "This portable playpen is all old, probably it should be recalled except that the parents are way cheap. It is this frame made of metal bars and it has mesh sides and a floor for babies to play on. The bars go around in ovals at the top and bottom. [if the top oval is open]The hinged half of the top oval is down so the playpen is all open[otherwise]It should be recalled because the top oval is hinged and you can lower one side of the playpen by pushing the top bar up and then letting go so that the mesh comes down[end if][if mentioning deathtrapness has not occurred], that is a total deathtrap[end if]"; if something is in p, say ". [if the top oval is open]In the playpen[otherwise]Through the mesh[end if] you can see [a list of things in p]"; say ". " The top oval is a backdrop. It is in the TKBUG Open Area and the Middle of the Living Room. The description is "The top oval is [if the top oval is open]half hanging down so that the playpen is all open[otherwise]way up there on the playpen. It must be like two or three babies high above you[end if]." Understand "metal", "bar", "bars", "hinge", "hinges", "opening", or "ovals" as the top oval. The top oval can be open or closed. The top oval is closed and not chewable. The top oval is not noticeable by playmates. To decide if the top oval is nearly in reach: if the player is eighth-height-or-higher, decide yes; decide no. To decide if the top oval is too high: if the player is quarter-height-or-higher, decide no; if the second noun is the poosh stick, decide no; decide yes. A height reachability rule when the reaching object is the top oval and the top oval is open (this is the no use doing anything to the open top oval rule): if the reaching actor is the player, say "Now that you have lowered the oval there is no need to do anything more with it."; stop action processing. A height reachability rule when the reaching object is the top oval and the top oval is too high (this is the top oval is too far away rule): if the reaching actor is the player begin; if the top oval is nearly in reach, say nearly-in-reach message for the top oval; otherwise say "You have short arms, you can't reach the top oval from down here."; end if; stop action processing. A height reachability rule when the reaching object is the top oval and the reaching actor is in the baby-swing (this is the top oval is unreachable from the baby swing rule): abide by the baby-swing specific noun reachability rule. A height reachability rule when the reaching object is the top oval (this is the top oval is now in reach rule): continue action processing. Before pushing the top oval to up, instead try pushing the top oval. Before inserting something into the top oval when the top oval is closed: let target be a random playpen in the location; instead try inserting the noun into target. Instead of opening the top oval when the top oval is open, say "You have already opened the playpen." Instead of opening the top oval when the top oval is closed, try pushing the top oval. Instead of closing the top oval when the top oval is closed, say "It is already all closed." Instead of closing the top oval when the top oval is open, say "It was too much work to open in the first place!" Instead of unlocking the top oval with the poosh stick, try pushing the top oval with the poosh stick. Instead of pushing the top oval with the poosh stick when the poosh stick is carried by the player: say "You get the poosh stick into position under the oval and push the oval up with it and it goes up a bit and clicks but when you let go it drops back into place. I guess you need to push up the oval at both ends of the playpen at the same time."; see if Zoe gets excited again. Instead of pushing the top oval: say "You push on the side of the oval closest to you and it goes up a bit and clicks but when you let go it drops back into place. I guess you need to push up the oval at both ends of the playpen at the same time."; see if Zoe gets excited again. To see if Zoe gets excited again: if Dejectiontime is happening begin; say "[line break]Zoe coughs and you look at her and she looks at you and you both look at the top oval of the playpen. It is like you are communicating telepathically and that communication is 'I may despise you and all that you stand for but I will work with you in order to lift the oval and free the toy but after that it is every baby for him or herself.' So you nod and she nods and it is a deal[note Zoe-cooperates]. Becca says, 'That's a bad cough Zoe has. Is she getting sick?' but Marion says, 'No, she coughs like that sometimes to get attention.'"; change (machine corresponding to a baby name of Zoe in the Table of Baby State Machines) to ZK Cooperating Rules; end if. Instead of pushing the top oval with the poosh stick when Cooperationtime is happening and Zoe is on the tall plastic block and the location is the Middle of the Living Room: if the poosh stick is not held by the player, abide by the pick up objects before pushing with them rule; say "You push on the oval with the poosh stick and at the same time Zoe pushes her end of the oval and it clicks up and then half of it falls down. That leaves the playpen all gaping open!"; now the top oval is open; record 5 points for "opening the playpen". Instead of pushing the top oval with the poosh stick when Cooperationtime is happening and the location is the Middle of the Living Room: if the poosh stick is not held by the player, abide by the pick up objects before pushing with them rule; say "You push the oval up with the poosh stick and it goes up a bit and clicks but Zoe is not yet in place to push the other side as well so nothing much happens." Instead of pushing the top oval with the poosh stick when Cooperationtime is happening and the location is the TKBUG Open Area: if the poosh stick is not held by the player, abide by the pick up objects before pushing with them rule; say "You move the stick into position to push the top oval and "; if Zoe is on the tall plastic block, say "nearly hit Zoe on the nose, she looks down at you as if you are an idiot both for nearly hitting her and for pushing the oval up on the side where she already is."; otherwise say "Zoe just looks at you as if to say 'this is the side of the oval I will be pushing, get your own side.'" The northeast-playpen is a playpen in the TKBUG Open Area. "Part of your playpen is here, there is more of it to the southwest." The description is "[playpen-description about northeast-playpen]". The printed name is "northeast part of the playpen". Understand "northeast", "part", "playpen", "frame", or "mesh" as the northeast-playpen. Instead of going southwest when the player is in the northeast-playpen: say "You move to the other part of the playpen."; move the player to the southwest-playpen. Section 5 - South End of Loveseat The South End of Loveseat is south of the North End of Loveseat and southwest of By the Rocking Chair. "This is the south end of the loveseat, there is more loveseat to the north and a big play area to the east and to the south is the couch that is bigger than the loveseat." The printed name is "Loveseat at the South". The faraway descriptor is "by the south end of the loveseat". The south pink striped loveseat is furniture in the South End of Loveseat. It is not room-mentioning, scenery and suitable for cruising. The description of the south pink striped loveseat is "The loveseat is pink and striped and tastes funny if you lick it. This is the south part of it." Instead of tasting the south pink striped loveseat, say "It has this funny zing to it like dust or stale cheerios." The rattly car is a pushable between rooms small thing in the south end of loveseat. The description of the rattly car is "It is all rattly, I guess that makes it more fun or something." Instead of pushing the rattly car, say "You push it and it rolls and rattles some." Instead of waving the rattly car, say "It goes rattle rattle." Section 6 - Middle of the Living Room The Middle of the Living Room is east of the South End of Loveseat and southeast of the North End of Loveseat and south of By the Rocking Chair and southwest of the TKBUG Open Area. "This is the middle of the living room, it is all big and vast. This is where everybody plays because it is so big. But when you get bored there is a bunch of other stuff you can go to like the TV to the east and the loveseat to the west and the couch to the south and the gliding rocking chair to the north." The faraway descriptor is "in the middle of the living room". The southwest-playpen is a playpen in the Middle of the Living Room. "Part of your playpen is here, there is more of it to the northeast." The description is "[playpen-description about southwest-playpen]". The printed name is "southwest part of the playpen". Understand "southwest", "part", "playpen", "frame", or "mesh" as the southwest-playpen. Instead of going northeast when the player is in the southwest-playpen: say "You move to the other part of the playpen."; move the player to the northeast-playpen. Section 7 - TV Room The TV Room is east of the Middle of the Living Room and southeast of By the Rocking Chair and south of the TKBUG Open Area. "The entertainment center here holds the TV all towering above you and it has these glass doors beneath the TV that you can see stereo equipment through. You are near the couch to the south and the middle of the living room to the west and there is a small open area to play in to the north[if Introduction is happening][note introcomp][end if]." The printed name is "In Front of TV". The faraway descriptor is "over by the TV". The entertainment center is scenery in the TV Room. The description is "The entertainment center is tall and has some doors beneath it but the important thing is that the TV is on it[if the television is off]. Not that the TV is on right now, who knows what Blue's Clues or Sesame Street episodes you are missing?[otherwise]. Right now the TV is showing [tv screen display].[end if]". Understand "door" or "doors" or "glass" as the entertainment center. Instead of tasting the entertainment center, say "The wood is all varnishy and the glass is cold." Instead of opening or pushing or pulling the entertainment center, say "You push on the doors to the entertainment center but the parents have them all fixed in place." Instead of closing the entertainment center, say "The doors to the entertainment center are already closed." Instead of unlocking the entertainment center with, say "You do not know how to unlock the doors." Instead of upstanding using the entertainment center, say "Its surface is sleek and modern and your hands slide right off if it so you cannot get enough purchase to pull up on it." Instead of searching the entertainment center, say "There is stereo equipment behind the glass doors and there is a big TV all tall up there on the entertainment center." The stereo equipment is scenery in the TV Room. The description is "It is all made by Aiwa[note no-aiwa], can't the parents buy real equipment?" Instead of doing something other than examining when the stereo equipment is acted upon, say "It is behind the doors to the entertainment center." The television is scenery in the TV Room. The description is "The TV is [if the baby-swing is in the TV room and the player is not in the baby-swing]blocked by this baby swing that is in the way[otherwise if off]dark and that makes you sad[otherwise]showing [tv screen display][end if]." Understand "tv" or "telly" or "screen" as the television. The television is not room-mentioning. The television can be on or off. The television is off. The television has a number called screen turn count. The screen turn count of the television is 1. Instead of an actor doing something other than examining or switching on or switching off when the television is acted upon: if the actor is the player begin; if the player is in the baby-swing, say "With you strapped into the baby swing you cannot really reach the TV."; otherwise say "It is all far away and if you could stand up and were taller then you could reach it but you aren't so you can't."; end if. Instead of switching on or switching off the television when the player is carrying the remote control, say "Even though you have the remote control it is beyond your baby powers to work it, it is so complex." Instead of switching on or switching off the television, say "You do not have the remote control that the parents use to make the TV turn on or off or show different things like Sesame Street or Baby Feynman." Instead of going somewhere from the TV Room during Introduction, say "Not without your favorite toy, [if your favorite toy is on the footstool]you should get it from the footstool.[otherwise]it was too hard to get it down in the first place." Instead of going west from the TV room during Introduction, move the player to the Intro Middle. To say tv screen display: let row-count be the screen turn count of the television plus 2; now row-count is row-count divided by 3; say On Screen in row row-count of the Table of Television Messages. Every turn when the television is on: if the screen turn count of the television is greater than the number of rows in the Table of Television Messages times 3, now the screen turn count of the television is 1; if the player is in the TV room begin; let row-count be the screen turn count of the television plus 2; if the remainder after dividing row-count by 3 is 0 begin; now row-count is row-count divided by 3; say "[Change Message in row row-count of the Table of Television Messages][paragraph break]"; end if; end if; now the screen turn count of the television is the screen turn count of the television plus 1. Table of Television Messages Change Message On Screen "The screen goes dark and then light. There is this big ball with a ring around it on screen and some words or something across it. The TV then says 'SPACE' in this weird drugged voice." "a big ball with a ring around it" "Swooping music plays from the TV and all of these yellow balls start bouncing around on screen." "all these yellow balls" "The bouncing balls go away on screen and a big yellow flower shows up, it is all curvy." "a big yellow flower" "The yellow flower is replaced by this drawing of a yellow disk and it has what looks like flames coming off of it and the calm announcer voice says, 'SUN.'" "a drawing of a yellow disk" "Now the yellow things are gone from the TV, instead there are all these crescent shapes drifting down in some thick liquid inside a cylinder. Maybe it is a toy or something." "a bunch of crescent shapes" "The drifting crescent shapes drift off screen and now there are crescent cookies being baked and turning into golden brown crescents." "all these tasty-looking crescent cookies" "In the TV you see a big white thing, it glows bright. And then the TV says 'MOON'." "a big white glowing thing" "It looks like the TV is done with white things, now there is this big row of balls starting with this huge yellow one and then a smaller one and a little bigger one and so on. There are a lot of those balls." "a row of different-sized balls" "In the TV the row of balls all get kicked by tiny kids except for this one and it is blue and white." "this single blue and white ball" "A kid on TV takes the blue and white ball and throws it around and then there is a crumpled blue and white ball. You hear this poof poof poof noise and the ball starts inflating and getting less crumply." "a crumpled blue and white ball" "The blue and white crumply ball on the TV is now not crumply at all, it is very smooth and shiny. That calm announcer voice says 'EARTH'. A giant baby face appears and starts chewing on the Earth ball." "a smooth and shiny Earth ball" "The giant baby face on the TV goes away in this star-shaped wipe and then a hand shows up on screen with a piece of chalk." "a hand holding a piece of chalk" "There is this hand on TV holding chalk, it starts drawing star shapes. More and more and more star shapes fill the screen." "bunches and bunches of star drawings" "On TV the star shapes turn into these tiny glowing points of light that go twinkle! Twinkle! Twinkle!" "twinkling points of light" "Points of light on the TV fade away and now there is just one big point of light and the announcer says 'STARS'." "a big point of light" "Now on TV all of these stars are gathering together, it is like they are having a big star party." "a big star party" "The star party on the TV screen gets even wilder as more and more stars come rushing in. It is like a rave only no one needs glow sticks because everyone already glows." "a giant glowing star party" "'GALAXIES' says the TV announcer and I guess that is what a star party is called." "a huge star party" "Whoosh! goes the TV and there is this side wipe and bubbles starts drifting across the screen." "bubbles" "There are bubbles on the TV screen, they start popping and then there is this kid, she's probably three, and the wind is blowing her hair all around." "a kid with her wind-blown hair" "The TV's whooshing sound dies down and there are these puffy things all over the screen like onesie lint. 'CLOUDS' says the announcer." "puffy clouds" "'Pfff pfff pff' says the TV and this deflated balloon starts getting bigger on screen." "a partially-deflated balloon" "The balloon on TV is all filled up and it is bright blue. Then a bunch more balloons start falling down." "a bunch of balloons" "There are so many balloons on the TV screen that it is like a riot of colors." "a bunch of brightly-colored balloons" "These babies start crawling through the TV balloons and hitting them and knocking them everywhere and the announcer says 'BALLOONS'." "babies kicking balloons" Section 8 - West End of Couch The West End of Couch is south of the South End of Loveseat and southwest of the Middle of the Living Room. "The couch is very long and this is the west part of it. There is a loveseat to the north and more couch to the east." The printed name is "Couch at the West". The faraway descriptor is "by the west end of the couch". After deciding the scope of the player when Snacktime is happening and the location is the West End of Couch and the folded paper is not handled: place the folded paper in scope. A big couch is a kind of furniture. Rule for printing the name of a big couch while constructing the status line: say "couch" instead. Instead of tasting a big couch, say "The rolled edge of the cushions is funny on your tongue." A big couch is not room-mentioning, scenery and suitable for cruising. The west grey couch is a big couch in the West End of Couch. Understand "gray" or "cushion" or "cushions" as the west grey couch. The description is "Grey and short and it is soft when the mom or the dad put you on it. This part is all to the west and there is more couch to the east[if the footstool is in the West End of Couch] and a tiny piece of it past the footstool to the west[end if]." Instead of going west in the West End of Couch when the footstool is in the West End of Couch, say "Crawling like you are there is no way you will fit in the narrow gap between the footstool and the couch[if 1 out of 3], it is because you have the shoulders of a very small linebacker[end if]." [This has to be a before rule, since the before rule that makes you let go when trying to go in a non-cruising direction would override an instead rule.] Before going west in the West End of Couch when the footstool is in the West End of Couch and the player is pulled up on the footstool or the player is pulled up on the west grey couch: if the thing gone with is nothing begin; say "There is just enough space for you to slide between the footstool and the couch so you cruise along the couch past the footstool and into the tiny space back there[note squeeze-behind-footstool]."; if the player is pulled up on the west grey couch, now the player is pulled up on the hidden grey couch; change the last location of the player to the location of the player; move the footstool to the Secret Space; move the player to the Secret Space; stop the action; end if. After visiting the Wes