I7: Both Poet and Auda, kiss Iris

Take a look at the Standard Rules, specifically the “convert to request” phrases, the most salient of which is:

To convert to request of (X - object) to perform (AN - action name) with (Y - object) and (Z - object): (- TryAction(true, {X}, {AN}, {Y}, {Z}); rtrue; -).

It would probably work just fine to write your own version that didn’t require a second noun (untested):

To convert to request of (X - object) to perform (AN - action name) with (Y - object): (- TryAction(true, {X}, {AN}, {Y}); rtrue; -).

You might want to look at the TryAction and related routines in the I6 template file/Appendix B to see whether there are any refinements.

–Erik

EDIT: I went ahead and tested that second one; it seems to work just fine. Here’s a sample game that effectively turns the PC into the player’s voodoo doll for controlling the dog:

[code]Place is a room. There is a gun and a sponge in the place. The dog is a person in the place.

Instead of doing anything:
let x be the action name part of the current action;
let y be the noun part of the current action;
convert to request of the dog to perform x with y.

To convert to request of (X - object) to perform (AN - action name) with (Y - object):
(- TryAction(true, {X}, {AN}, {Y}); rtrue; -).

Persuasion rule: persuasion succeeds.[/code]