Command Prompt on Cue
version 3 by Ron Newcomb
Section : Purpose
When our player is in a multi-way conversation, or is witnessing a scene that they may or may not wish to intervene, when to allow the player to intervene becomes a design problem. Too infrequently, and the player may feel railroaded for the sake of prose. Too frequently, and the prose suffers from the choppy intrusion of the command prompts, many of which have only a WAIT command on them.
This extension suppresses the command prompt in such scenes until the player begins to type a command. If the player does not wish to enter a command, pressing SPACE will allow the prose to continue unhindered. Clever use of the Say phrase "run paragraph on" can even allow several turns to go by within a single paragraph, allowing a command prompt at any time between sentences.
Section : Knobs and Dials and Readouts
The truth state variable "command prompt on cue" is the master switch for the extension. When true, the extension works as advertised. When false, the extension turns itself off. By default, it is off when play begins. This is because it is assumed the extension's mode of play will be used only within the work's busier scenes.
When the rapier duel begins:
say "'Then you'll die by my blade, upstart.'";
now command prompt on cue is true.
When the rapier duel ends:
say "Then he turned and walked away, leaving you with your injured lover.";
now command prompt on cue is false.
"The implicit unobtrusive command" is the command we wish to run when our player presses SPACE. By default, it equals "WAIT", so pressing SPACE calls the game's waiting action. We may change this whenever we wish, to whatever we wish.
After entering the closet during an eavesdropping scene:
change the implicit unobtrusive command to "LISTEN".
"Unobtrusive player" is a readout. When true, it means that this turn, our player has merely pressed SPACE -- he or she has decided not to intervene. When false, it means our player had decided to join in and try a command. This allows us to distinguish why the implicit action was called.
Section : Caveats
Due to technical reasons, the extension does not deal well with single-letter commands. When our player tries to interrupt with a L (for LOOK) or i (for INVENTORY), a spurious "I beg your pardon" error will result. The player may then proceed normally. Secondly, the player cannot delete the first typed letter. Finally, fast typists may lose the second letter -- understanding "ak" and "tll" may be called for.