VRFlad's Streamer Bot Pronouns Extension
Sometimes you have an opportunity to really push the boundaries of the bot, but none have been so inspiring as this. I got a message from GoWMan who had the great idea to add in personal gender pronoun support into Streamer Bot.Knowing there is already excellent support from Twitch Chat Pronouns (https://pronouns.alejo.io/), GoWMan and I quickly found that we could utilise this so people only need to set their Pronouns in one place. A bunch of coding, testing, some valuable help from the awesome Slashie101 later, and this awesome bot extension was created! Since then, I've had a few ideas to improve and HeyKatu suggested fully customisable Pronouns which has made it into V2 released on 14th February 2022!
Implementing support into Streamer Bot
Adding the pronoun support into Streamer Bot is easy and usually best followed by going through the Streamer Bot Bites video for this:Use the import code as with most of the examples.
To learn how to import code, you can use this video.
To upgrade your own actions (also covered in the bot above), you simply add in one three two commands below:
- Pronouns - Add-In - (redeemer/firstwords)
- Pronouns - Add in - (target)
- Pronouns - Add in - (pronounUser variable)
You can then use a variable listed in the table below. With the import code there is an example action that uses the example sentences
How to pick which add in function to pick? Look at which user you want to refer to. If it's whoever triggered the command (even if it's an event like first message), then it's the redeemer option For an action that is called with a viewer name and you want to use their pronouns, then it is target If you want to manually specify a username in your actions and to pull pronouns data about them , then it's the pronounUser variable. Note: for this, you need to create an argument of pronounUser with the name that you want to check.
Reference
The variable names to use are in the table below.Type | Variable name | Variable name (all lower case) | |
---|---|---|---|
A | Subject | pronounSubject | pronounSubjectLower |
B | Object | pronounObject | pronounObjectLower |
C | Possessive | pronounPossessive | pronounPossessiveLower |
D | Possessive Pronoun | pronounPronoun | pronounPronounLower |
E | Reflexive | pronounReflexive | pronounReflexiveLower |
F | Past tense | pronounPastTense | pronounPastTenseLower |
G | Current Tense | pronounCurrentTense | pronounCurrentTenseLower |
H | Plural | N/A | pronounPluralLower |
Note: pronounPluralLower is intended to be used on the end of words, for example he feels or they feel
Pronouns list below. Please note that there are many implementations and we've tried to be correct as possible and mean no disrespect with the below:
Pronoun | A | B | C | D | E | F | G | H |
---|---|---|---|---|---|---|---|---|
(He/Him) | He | Him | His | His | Himself | Was | Is | S |
(Ae/Aer) | Ae | Aer | Aer | Aers | Aerself | Was | Is | S |
(Any) | They | Them | Their | Theirs | Themselves | Were | Are | |
(E/Em) | E | Em | Eir | Eirs | Eirself | Was | Is | S |
(Fae/Faer) | Fae | Faer | Faer | Faers | Faerself | Were | Are | |
(He/She) | They | Them | Their | Theirs | Themselves | Were | Are | |
(He/Them) | They | Them | Their | Theirs | Themselves | Were | Are | |
(It/Its) | It | It | Its | Its | Itself | Was | Is | S |
(Other) | They | Them | Their | Theirs | Themselves | Were | Are | |
(Per/Per) | Per | Per | Per | Pers | Perself | Was | Is | S |
(She/Her) | She | Her | Her | Hers | Herself | Was | Is | S |
(She/They) | They | Them | Their | Theirs | Themselves | Were | Are | |
(They/Them) | They | Them | Their | Theirs | Themselves | Were | Are | |
(Ve/Ver) | Ve | Ver | Vis | Vis | Verself | Was | Is | S |
(Xe/Xem) | Xe | Xem | Xyr | Xyrs | Xemself | Was | Is | S |
(Zie/Hir) | Zie | Hir | Hir | Hirs | Hirself | Was | Is | S |
Not Set | They | Them | Their | Theirs | Themselves | Were | Are |
With V2 (so if installed or upgraded on / after 14th February), there is a full custom pronoun support. This is put into a chat command (!pronounsoverride) which needs 7 variables, one for each in the table above.
For example, If you wanted to have a gender pronoun of (He/Them), but want the pronouns of (He/Him) otherwise, you would use the command:
!pronounsoverride (He/Them) He Him His His Himself Was Is S
There is a command for mods to set this for a viewer too, !modpronounsoverride and commands to reset the pronouns for users (!pronounsreset and !modpronounsreset)
Example sentences to know when to use which variable
- %pronounSubject% feel%pronounPlural% great that there is personal gender pronoun (PGP) support.- We don't need to convince %pronounObjectLower% that the idea GoWMan came up with for PGP support was great.
- %pronounPossessive% favorite videos are VRFlad's Streamer Bot bites!
- If %pronounSubjectLower% %pronounPastTenseLower% able to help with this like Slashie101 did, then %pronounSubjectlower% would be proud of %pronounReflexiveLower%.
- %PronounCurrentTense% %pronounSubjectLower% pleased to be more inclusive like HeyKatu is with the idea of fully custom pronouns support? When %pronounSubjectLower% looked back on it, %pronounSubjectLower% %pronounPastTenseLower%!