[code]There is a room called test lab.
an npc is a kind of person.
an npc is usually female.
Dooble is a neuter npc.
test me with “showme dooble”.[/code]
I want an npc to be female by default, but male or neuter if I say otherwise. However, if I declare an npc to be neuter via the code above, they exhibit both the ‘female’ and ‘neuter’ tags when I use ‘showme’. Au contraire, if you make Dooble male, he is only male, and not female or neuter as well.
The same goes for if an npc is usually male. You can add a neuter tag, but making them neuter doesn’t remove the default maleness. What’s the deal?
Yes, Inform people are both neuter or not neuter and male or female! (I think this is I6 legacy.)
For built-in functionality, like the reference of pronouns, declaring something neuter overrides declaring it male or female (it does so on the I6 level). But if you simply test for maleness or femaleness in your own code, you need to remember that such a test will catch neuter males and neuter females as well.
I suppose, in one sense, its not all that different than real life. It is possible to alter external manisfestations (such as the pronoun used) but the underlying DNA is what it is.
This is rather off-topic (though not entirely). In fact the DNA situation is not just XX or XY.
People are born who (due to little accidents when the sperm or egg is being manufactured, or when they meet) are XYY, XXY, XXX, or X. There are undoubtedly other combinations as well, involving broken chromosomes. Then there’s the androgen insensitivity mutation, which causes XY fetuses to develop as female rather than male. Some babies are born with ambiguous genitalia, in which case the attending physician may feel obliged to make a quick decision (which may be the wrong decision, with tragic consequences).
On top of which, sexual identity is something that happens in the brain and in the society in which the individual happens to live. It’s not defined by the external genitalia at all. There really are people who are firmly convinced they’re female, in spite of the physical evidence to the contrary. And vice-versa, of course. This can and does happen to people who are genetically “normal” XX or XY – possibly due to mistakes in how the brain of the fetus develops, the cause is not known.
The non-OT part of this rant is that an IF system really ought to allow at least four gender markers – male, female, neuter, and other – any of which can be switched on or off independently. Each marker would have a set of corresponding pronouns. If you happen to need a character that can be either “he” or “she,” the authoring system should allow it.
Right. As far as the library is concerned, it’s a mutually exclusive three-way value which is implemented with two bits. It’s clumsy, not very flexible, and will probably be addressed in future releases – there are features requests in on the subject.
Thanks for the info. I should be okay, then. I just want the pronouns to be set correctly for each npc. I don’t think I’ll ever be testing for their sex in the code.