mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-02-07 23:09:28 +00:00
* Sapient bots can play voice lines (#76920) ## About The Pull Request Part of the "throwing stuff at the wall and seeing what happens" series of changes. We were discussing player bots and there was some small support for "what if bots couldn't talk except to other bots and primarily communicated via emoting and playing their prerecorded lines". I coded this but I'll be honest, my heart wasn't in it, especially because we have _already_ released sapient bots who can talk so I'd have to justify taking it away in a better way than "I want to see what would happen", so I'm not doing that (feel free to revert the last commit in this PR if you want to carry that cross yourself). But I'm keeping the button that plays the prerecorded voice messages. No these lists _aren't_ alphabetised, that's because I wanted to vaguely order them in order of "this is something the bot regularly says" to "this is something the bot rarely says (because it is rude or mean)". This priority is possibly the inverse of how players will want to use the button, but perhaps they should try being politer. Additionally this PR ensures that if you put a pAI in a bot then it will be able to speak any languages the pAI could. ## Why It's Good For The Game Saying "I should have been a plastic surgeon" is iconic medbot behaviour and players should be able to do it. We don't currently have bot TTS voices which directly sound like the bots themselves to apply, and it might be mildly concerning if we did because I believe at least one of the voices is the IRL voice of a community member with some filters added? ## Changelog 🆑 add: Player-controlled bots can now play the prerecorded lines associated with that bot. add: Placing a pAI into a bot temporarily teaches that bot all the langauges the pAI could speak. /🆑 * Sapient bots can play voice lines --------- Co-authored-by: Jacquerel <hnevard@gmail.com>
47 lines
1.5 KiB
Plaintext
47 lines
1.5 KiB
Plaintext
#define NO_STUTTER 1
|
|
#define TONGUELESS_SPEECH 2
|
|
#define LANGUAGE_HIDE_ICON_IF_UNDERSTOOD 4
|
|
#define LANGUAGE_HIDE_ICON_IF_NOT_UNDERSTOOD 8
|
|
|
|
// LANGUAGE SOURCE DEFINES
|
|
/// For use in full removal only.
|
|
#define LANGUAGE_ALL "all"
|
|
|
|
// Generic language sources.
|
|
/// Language is linked to the movable directly.
|
|
#define LANGUAGE_ATOM "atom"
|
|
/// Language is linked to the mob's mind.
|
|
/// If a mind transfer happens, language follows.
|
|
#define LANGUAGE_MIND "mind"
|
|
/// Language is linked to the mob's species.
|
|
/// If a species change happens, language goes away.
|
|
/// If applied to a non-human (no species) atom, this is effectively the same as [LANGUAGE_ATOM].
|
|
#define LANGUAGE_SPECIES "species"
|
|
|
|
// More specific language sources.
|
|
// Only ever goes away when dismissed directly.
|
|
#define LANGUAGE_ABSORB "absorb"
|
|
#define LANGUAGE_APHASIA "aphasia"
|
|
#define LANGUAGE_CTF "ctf"
|
|
#define LANGUAGE_CULTIST "cultist"
|
|
#define LANGUAGE_CURATOR "curator"
|
|
#define LANGUAGE_GLAND "gland"
|
|
#define LANGUAGE_HAT "hat"
|
|
#define LANGUAGE_QUIRK "quirk"
|
|
#define LANGUAGE_MALF "malf"
|
|
#define LANGUAGE_PIRATE "pirate"
|
|
#define LANGUAGE_MASTER "master"
|
|
#define LANGUAGE_PAI "pai"
|
|
#define LANGUAGE_SOFTWARE "software"
|
|
#define LANGUAGE_STONER "stoner"
|
|
#define LANGUAGE_VOICECHANGE "voicechange"
|
|
#define LANGUAGE_RADIOKEY "radiokey"
|
|
#define LANGUAGE_BABEL "babel"
|
|
#define LANGUAGE_EMP "emp"
|
|
|
|
// Language flags. Used in granting and removing languages.
|
|
/// This language can be spoken.
|
|
#define SPOKEN_LANGUAGE (1<<0)
|
|
/// This language can be understood.
|
|
#define UNDERSTOOD_LANGUAGE (1<<1)
|