Gender and Pronouns

Kind of, sort of, perhaps not in the way you’re thinking.

You need to create variables for each part of speech the pronoun fills, not for each individual pronoun. So subject (they, she he,) object (them, her, him,) dependent possessive (their, her, his,) and independent possessive (theirs, hers, his.) Technically there are also reflexive pronouns (herself, himself, themselves/themself,) as well, however you can duplicate that by putting the object pronoun variable next to “self” in your code, like this: ${them}self.

I’m fond of using “they” pronouns as my variable names, rather than trying to remember the proper names for each grammatical use. Don’t try to use either of the traditionally gendered pronoun forms (she/her, he/him) as both sets have a repeat, but not in the same place, which WILL mess things up if you aren’t exceptionally careful. So mine would look something like this during variable creation:

*create they "they"
*create them "them"
*create their "their"
*create theirs "theirs"

…and then later, as the players define their characters’ genders, something like this:

*fake_choice
    #I use they/them pronouns.
    #I use she/her pronouns.
        *set they "she"
        *set them "her"
        *set their "her"
        *set theirs "hers"
    #I use he/him pronouns.
        *set they "he"
        *set them "him"
        *set their "his"
        *set theirs "his"

Note that because, in my example, I started with “they/them” as my default values for the pronoun variables, I didn’t need to use any *set commands for that option. Had I started with blank variables (something like *create they "") I would have needed *set commands under all three options.

As far as “kid/girl/boy” goes… yeah, you can handle that the same way. *create kid "kid" during variable creation, then add *set kid "girl" or *set kid "boy" as relevant under the same choice that sets pronouns. Like so:

    #I use she/her pronouns.
        *set they "she"
        *set them "her"
        *set their "her"
        *set theirs "hers"
        *set kid "girl"
        *set title_1 "Ms."
        *set title_2 "Miss"
        *set gender "female"

…and so on, and so forth, as you have need.

One final note: You don’t actually need to make a variable for every single gender-dependent phrase. Only those you’re using more than once or twice. For others, you can use *if statements, like so:

"Somebody get that
*if gender = "non-binary"
    person
*if gender = "female"
    woman
*if gender = "male"
    man
out of here immediately!"

ChoiceScript will condense a structure like that into a single line, leaving (depending on the actual value of the gender variable,) either “Somebody get that person out of here immediately!” or “Somebody get that woman out of here immediately!” or “Somebody get that man out of here immediately!”

And there are other ways to accomplish the same thing, though perhaps those should be saved for another time.

EDIT: So, allowing players to input custom values for their characters’ pronouns.

I’ve never actually tested this, but it’s fairly straight forward.

You’ll start by creating your variables exactly the same way as if you were making your players pick from a list. No changes yet.

Then, when it’s time for the players to choose, you’ll add a fourth option to the choice. Like so:

*fake_choice
    #I use they/them pronouns.
        *goto next_scene
    #I use she/her pronouns.
        *goto next_scene
    #I use he/him pronouns.
        *goto next_scene
    #I'll type my pronouns for you.

*comment Custom pronoun input will be inserted into the code here.

*label next_scene

Obviously, we don’t want to make all players type their pronouns (only those who chose to,) so we give the standard options some *goto commands. This lets ChoiceScript jump past the custom pronoun code for those players who don’t need it. Specifically, in that example ChoiceScript will jump from *goto next_scene to *label next_scene, skipping any code in between.

As for what actually goes in between, in that spot currently filled with a single *comment line…

I started an example on how I might do this, but it's long, so I tucked it inside a hidden details box.
*label subject_pronoun
Complete the following sentence: [i]"And then ____ said 'no'."[/i]
Example: [i]"And then she said 'no'."[/i]
*input_text they

[i]"And then ${they} said 'no'."[/i]
Is that correct?
*fake_choice
    #No, let me adjust it.
        *goto subject_pronoun
    #Yes, that's correct.

*label object_pronoun
Complete the following sentence: [i]"Give it to ____, please."[/i]
Example: [i]"Give it to her, please."[/i]
*input_text them

[i]"Give it to ${them}, please."[/i]
Is that correct?
*fake_choice
    #No, let me adjust it.
        *goto object_pronoun
    #Yes.

*label dependent_possessive_pronoun
Complete the following sentence...

I’m sure you can guess where this goes from here. But it’s fine to ask for clarification anyway.

16 Likes