§2.3. Using the Player's Input

We may sometimes want to capture specific words the player has used and then feature that text elsewhere in the story.

Terracottissima Maxima demonstrates using text to describe objects; Mr. Burns' Repast lets the player refer to a fish by any of a number of names, and changes the way the fish is described as a result.

More specialized effects are also possible: Xot shows how to collect the player's erroneous input and store the command line to be printed back later. Igpay Atinlay shows how to parrot the player's command back in pig Latin form.

* See Animals for a dog which the player can re-name

* See Traits Determined By the Player for a way to let the player name the player character


arrow-up.pngStart of Chapter 2: Adaptive Prose
arrow-left.pngBack to §2.2. Varying What Is Read
arrow-right.pngOnward to Chapter 3: Place: §3.1. Room Descriptions

*ExampleIgpay Atinlay
A pig Latin filter for the player's commands.

**ExampleMr. Burns' Repast
Letting the player guess types for an unidentifiable fish.

Inform can also understand text properties:

paste.png "Terracottissima Maxima"

A flowerpot is a kind of thing. A flowerpot has a text called pattern. Understand the pattern property as describing a flowerpot. The printed name of a flowerpot is usually "[pattern] flowerpot". The printed plural name of a flowerpot is usually "[pattern] flowerpots".

The Herb Garden is a room. In the Herb Garden is a flowerpot with pattern "blue willow". In the Herb Garden is a flowerpot with pattern "striped". In the Herb Garden is a flowerpot with pattern "striped".

Test me with "x blue willow / get striped / look".

This may not seem very much different from having the pattern be a kind of value -- except that texts can, of course, hold almost anything. Further exploration of these possibilities may be found in the chapter on Advanced Text.

***ExampleTerracottissima Maxima
Flowerpots with textual names that might change during play.

Inform can also understand text properties:

paste.png "Terracottissima Maxima"

A flowerpot is a kind of thing. A flowerpot has a text called pattern. Understand the pattern property as describing a flowerpot. The printed name of a flowerpot is usually "[pattern] flowerpot". The printed plural name of a flowerpot is usually "[pattern] flowerpots".

The Herb Garden is a room. In the Herb Garden is a flowerpot with pattern "blue willow". In the Herb Garden is a flowerpot with pattern "striped". In the Herb Garden is a flowerpot with pattern "striped".

Test me with "x blue willow / get striped / look".

This may not seem very much different from having the pattern be a kind of value -- except that texts can, of course, hold almost anything. Further exploration of these possibilities may be found in the chapter on Advanced Text.

***ExampleXot
Storing an invalid command to be repeated as text later in the game.