Observing actions at a distance

Is there an easy way for “report” messages to be displayed for a room other than the location, or from one specific actor (or subset of charactars)?

I would rather build the actions, including conversational responses, of other characters using the standard action machinery, rather than jury-rigging my own ad hoc system. I’m doing enough of the latter already in this project!

[code]There is room. The player carries a phone.

Bot is a person.

The conversant is a person that varies.

Calling is an action applying to one visible thing.
Understand “call [any person]” and “call [any person] on/by [the phone]” as calling.
Report calling someone: say “You dial [the noun]'s number.”
Carry out calling someone:
now the conversant is the noun;
try the conversant greeting.

Greeting is an action applying to nothing.
Report an actor greeting: say “[The actor] greets you coolly.”[/code]

I believe REPORT only prints messages when the item described is in scope. You can circumvent this by using AFTER messages which don’t have such a check and by default succeed, not progressing to the Report stage unless you continue the action.

After someone (called hollerer) shouting: if the location of hollerer is the location: say "You see [the hollerer] call for help."; otherwise: say "You can hear [the hollerer] shouting from another location in the maze.";

Thanks, that’s good to know. I’d actually just decided to go with the solution from Puff of Orange Smoke and put them within the location directly.