10.4. Glass and Other Damage-Prone Substances

| Chapter 10: Physics: Substances, Ropes, Energy and Weight |

| 10.4. Glass and Other Damage-Prone Substances

Just as Inform normally assumes everything is solid, it also assumes that these solid objects will not buckle, crack, break or deform under pressure, and cannot be fragmented. But breakability adds realism, and breakage need not be negative: sometimes we want the player to break her way in to something.

In IF the word DROP is more often used to mean "put down" or "leave behind" than "let go from a height": so it is perhaps unfair that in Ming Vase something fragile, when dropped, shatters (into nothing). In Spring Cleaning, fragile objects must be explicitly attacked by the player in order to break, and although they leave no tangible debris behind, their loss is at least remembered. Kyoto provides a general-purpose model for things being thrown at other things, with consequences including things moving (even between rooms) as well as breaking each other.

Debris from breakages is to be avoided if possible because it means keeping track of increasing numbers of objects. But we can increase realism by allowing something to have a visibly "broken" state, which it changes to when it breaks, rather than simply vanishing. Terracottissima provides for broken and unbroken flowerpots in this way.

Since "part of" allows us to have two objects joined together into what the player sees as one, it also gives us a natural seam which allows the whole to be broken back down into its component parts, and this is the neatest way of providing a breakage into pieces. Paddington demonstrates a cutting action which allows component parts to be cut away from their holders but will only make small surface gashes in any individual thing: so the player can cut something up, but only into the pieces we specifically choose to allow. Cutting also forces an opening into containers.

See Combat and Death for a robot that breaks into its component limbs when shot with a blaster

See Goal-Seeking Characters for a character who eats donuts, leaving crumbs on the floor

See Volume, Height, Weight for containers breaking under the weight of their contents

See Ropes for cutting up string into up to 35 different pieces of different lengths - a limit the player is unlikely to find out about, but a limit all the same, and an expensive solution since we need 35 different things for the "debris" when string is "broken"

97
| Example Ming Vase ATTACK or DROP break and remove fragile items from play. |
WI

123
| Example Spring Cleaning A character who sulks over objects that the player has broken (and which are now off-stage). |
WI

387
| Example Kyoto Expanding the effects of the THROW something AT something command so that objects do make contact with one another. |
WI

302
| Example Terracottissima The flowerpots once again, but this time arranged so that after the first breakage all undamaged pots are said to be "unbroken", to distinguish them from the others. |
WI

195
| Example Paddington A CUT [something] WITH [something] command which acts differently on different types of objects. |
WI

Suppose we intend a game in which the player needs to cut things open on a regular basis. We'll want to check whether he has the proper tools handy, and deal graciously with commands such as CUT [something] when no tool is specified. So: "Paddington" A blade is a kind of thing. Understand "cut [something] with [something]" as cutting it with. Instead of cutting something: if a blade (called the edge) is held by the player, try cutting the noun with the edge; otherwise say "Your fingernails are not sharp enough." Cutting it with is an action applying to two things. Check cutting it with: if the noun is a person, say "That would hurt." instead; if the second noun is not a blade, say "[The second noun] has not got enough of a blade." instead. Carry out cutting it with: increment the count of rips of the noun. Report cutting it with: say "You slash [the noun] with [the second noun]." We'll need a way to account for all these cuts and rips. Definition: a thing is ripped if the count of rips of it > 0. A thing has a number called the count of rips. After examining something ripped, say "You see [the count of rips of the noun in words] rip[s] in [the noun][if something is in the noun], revealing [a list of things in the noun][end if]." Moreover, because open containers normally list their contents when examined but we'd prefer Paddington's to be mentioned in the ripping paragraph: A procedural rule while examining the teddy bear: ignore the examine containers rule. So far, so good. But suppose that we'd like cutting also to make containers be permanently open and impossible to close again. We could write an "instead" rule, but that would mean that only our instead instructions would take effect, overriding the normal cutting it with rules entirely. Better would be to add a second carry out rule: Carry out cutting a container with something: now the noun is open; now the noun is unopenable. Now our rule will occur whenever a container is cut, but play will still go on to the reporting stage. And indeed we can add more of these, of varying degrees of specificity: Carry out cutting something which is part of something with something: move the noun to the player. Carry out cutting the quilt with something: now the description of the quilt is "Horribly tattered." For that matter, we might want to add a report rule as well, to occur after the "You slash..." rule, so that every time the player cuts something open which has contents, the contents will be listed. Report cutting it with: if the noun is open and the noun contains something, say "Visible within [is-are a list of things in the noun]." This time we do not add the condition to the rule (i.e., Report cutting an open noun...) If we did, this report rule would be more specific than the general report rule, and would occur first. The Safehouse is a room. The teddy bear is a closed thing in the Safehouse. The description is "Fluffy[if the head is part of the bear], with an outsized head[otherwise], but headless[end if]." The head is a closed part of the teddy bear. In the bear is a large wad of stuffing. In the head are a small wad of stuffing and a packet of smuggled diamonds. The quilt is in the Safehouse. The description is "An old but comforting quilt." The player carries a blade called a switchblade. If we may be permitted to borrow one line from chapter 16, here is a final nicety to get rid of the "which is closed" statement on our closed unopenable teddy bear: After printing the name of a closed unopenable container: omit contents in listing. Test me with "cut quilt with bear / cut quilt with switchblade / examine quilt / cut bear with switchblade / again / examine bear / cut head with switchblade / get diamonds / mourn loss of innocence".

Previous | Contents | Next