Just curiosity at this stage, but I’m contemplating creating some games with different viewpoints. I’ve got the male / female pronouns firing fine, but I can’t seem to get a pronoun output for ‘it’… ? The below outputs to ‘he’ as does ‘animal’ as does just saying the player is neuter… am I missing something?
There is a room called Start. R2 is a neuter person in Start.
When play begins:
now the story viewpoint is third person singular;
now the player is R2.
The code that prints pronouns for the player is a bit different from the code that prints pronouns for any other object in the world. It only ever uses “he” and “she”, not “it” for neuter or “they” for plural-named objects.
You can find this code in the extension English Language by Graham Nelson:
Section 2 - Saying pronouns (for interactive fiction language element only)
To say we:
now the prior named object is the player;
if the story viewpoint is first person singular:
say "I";
if the story viewpoint is second person singular:
say "you";
if the story viewpoint is third person singular:
if the player is male:
say "he";
otherwise:
say "she";
if the story viewpoint is first person plural:
say "we";
if the story viewpoint is second person plural:
say "you";
if the story viewpoint is third person plural:
say "they".
…followed by similar definitions for “We”, “us”, “Us”, and so on. This code is also invoked when you print [them] or a similar substitution referring to the player.
This isn’t too hard to change: just copy out that section and use section replacement to replace that code with yours. It’s just a bit tedious.
I’m still slowly providing updates, first to finish documenting what it does, and then next to make sure it works with v9 and Z-machine (which it doesn’t yet).