Inform 7 Home Page / Documentation
§12.5. Unsuccessful attempts
Suppose, finally, that Will not only consents to try the action, but it also survives its passage through Before and Instead rules. What happens then? In principle, what happens to Will is exactly what would have happened to the player in his place. For instance:
> will, go east
Will leaves to the east.
If on the other hand Will's attempt is frustrated because one of the checking rules stops him, then Will's action fails. For instance, if Will tries going northeast but there is no room to northeast, one of the rules checking the "going" action will stop him. We will then see this:
> will, go northeast
Will is unable to do that.
This is rather a generic message, and we may want something more interesting. We can provide that using yet another special kind of rule:
Unsuccessful attempt by Will going: say "Will blunders around going nowhere, as usual."
Even that is still a little generic, though, because it treats all of the various ways that "going" can fail as the same. If we have ACTIONS switched on, we can see what goes on behind the scenes when we ask Will to walk into a door:
>will, go west
[asking Will to try going west]
[(1) Will going west]
[(1) Will going west - failed the can't go through closed doors rule]
Will blunders around going nowhere, as usual.
[asking Will to try going west - succeeded]
(The "(1)" lets us know that a new action is starting during the old one, and before the old one finishes: sometimes we go up to three or four deep, though seldom more in practical cases.) We can now rewrite the "unsuccessful attempt" rule like so:
Unsuccessful attempt by Will going:
if the reason the action failed is the can't go through closed doors rule, say "Will looks doubtful and mumbles about doors.";
otherwise say "Will blunders around going nowhere, as usual."
The value "reason the action failed" is set to whichever checking rule threw out the action which Will tried. The names of these rules try to be self-explanatory - at any rate, those with gnomic names are not useful for this sort of thing, and can be ignored - and can be found out either using ACTIONS or by consulting the Actions index.
Finally, note that "unsuccessful attempt" rules apply only when the person in question is being asked to perform the action by somebody else - as in the examples above.
|
ExampleGeneration X
A person who goes along with the player's instructions, but reluctantly, and will get annoyed after too many repetitions of the same kind of unsuccessful command.
|
|
"Generation X"
The Volunteer Center is a room. "A fairly spartan office, though there are a few attractive posters from advertising campaigns of the past, and an ominous map charting the deforestation of Brazil."
The desk is scenery in the Volunteer Center. "Your standard metal desk, with a drawer for postal supplies and the like." On the desk is a pile of leaflets and a pile of business cards. The power stapler is a device on the desk. A drawer is part of the desk. It is openable and closed. In the drawer are a sponge and a roll of bulk-mail stamps.
Instead of doing something:
if examining, continue the action;
if searching, continue the action;
if looking, continue the action;
if asking Jenna to try doing something, continue the action;
say "The whole point of this exercise is to train Jenna. Once you have her on the envelope-stuffing, you can go make some calls."
Instead of answering Jenna that something:
say "You're going to have to break the instructions down to the simplest ones possible, given that she's in the mood to misunderstand on purpose."
A cardboard box is in the Center. In the cardboard box is a pile of empty envelopes. The box is openable and closed. The description is "A recycling symbol is prominent on the side, which makes you feel a little bit better about using a mailing campaign for this cause."
Jenna is a woman in the Volunteer Center. "Your daughter Jenna is here, barely visible through the cloud of resentment." The description is "Jenna [if jenna carries something]has [the list of things carried by Jenna][otherwise]returns your stare, with added hostility[end if]."
A persuasion rule for asking Jenna to try doing something: persuasion succeeds.
Unsuccessful attempt by Jenna doing something:
repeat through Table of Retorts:
if the reason the action failed is the cause entry:
say "[response entry][paragraph break]";
rule succeeds;
say "'I don't see how I'm supposed to do that, Mom,' Jenna says."
Table of Retorts
cause
|
response
|
can't take yourself rule
|
"'Is that like 'get a grip on yourself' or something?' Jenna asks, momentarily diverted."
|
can't take what's fixed in place rule
|
"[physical impossibility]"
|
can't take scenery rule
|
"[physical impossibility]"
|
can't take what's already taken rule
|
"[already done]"
|
can't drop what's already dropped rule
|
"[already done]"
|
can't wear what's already worn rule
|
"[already done]"
|
can't take off what's not worn rule
|
"[already done]"
|
can't close what's already closed rule
|
"[already done]"
|
can't open what's already open rule
|
"[already done]"
|
can't switch off what's already off rule
|
"[already done]"
|
can't switch on what's already on rule
|
"[already done]"
|
can't unlock what's already unlocked rule
|
"[already done]"
|
can't lock what's already locked rule
|
"[already done]"
|
To say physical impossibility:
say "'Maybe you should've brought someone a little stronger,' Jenna says. 'Like the Incredible Hulk.' "
To say already done:
repeat through Table of Bored Remarks:
say "[response entry]";
blank out the whole row;
rule succeeds;
say "'Okay, I'm going to be, like, in the car,' says Jenna. 'Outside.' ";
end the story saying "Jenna has gotten fed up".
Table of Bored Remarks
response
"'Did that,' says Jenna."
"'Check,' says Jenna."
"'Yeah, Mom, I already did that, okay?'"
"'Look, if I have to be here doing dumb stuff, could you at least tell me to do stuff that isn't already done?' Jenna asks wearily."
"Jenna gives a great upward sigh, riffling her bangs. 'Once again... there is totally no point.'"
Test me with "e / x jenna / jenna, get stapler / jenna, get stapler / x jenna / jenna, drop stapler / jenna, drop stapler / jenna, open box / jenna, open box / jenna, switch stapler on / jenna, switch stapler on / jenna, take desk / jenna, open box / jenna, open box".