A few days ago I pushed an emoting contribution to Evennia. A "contrib" is an optional plugin system that is not part of core Evennia but is meant to be easily picked up and used in people's own designs.
If you are not familiar with what an emoting system does, it is a way to decribe the actions of a character in the game. The simplest form of emote is a single command (like the command danceleading to some canned response, or in the case of a graphical game, a dance animation). This contribution offers a more sophisticated system though, allowing input like the following:
emote /me smiles at /cheerful as he sits at her table. "Hello!" he says.
Now, this includes /keywords that relate to the objects in the room. So assuming there isa very cheerful girlin the room, this string will come out as
Griatch smiles at a very cheerful girlas he sits at her table. "Hello!" he says.
But she will actually see only my outward appearance (the short description) since she doesn't know me. So the cheerful girl (let's say her name is Sandra) would for example see
A man in flowing robes smiles at Sandra as he sits at her table. "Hello!" he says.
The emoting system has the following features:
image ©Griatch, from griatch-art.deviantart.com
If you are not familiar with what an emoting system does, it is a way to decribe the actions of a character in the game. The simplest form of emote is a single command (like the command danceleading to some canned response, or in the case of a graphical game, a dance animation). This contribution offers a more sophisticated system though, allowing input like the following:
emote /me smiles at /cheerful as he sits at her table. "Hello!" he says.
Now, this includes /keywords that relate to the objects in the room. So assuming there isa very cheerful girlin the room, this string will come out as
Griatch smiles at a very cheerful girlas he sits at her table. "Hello!" he says.
But she will actually see only my outward appearance (the short description) since she doesn't know me. So the cheerful girl (let's say her name is Sandra) would for example see
A man in flowing robes smiles at Sandra as he sits at her table. "Hello!" he says.
The emoting system has the following features:
- Short description replacement in emotes and in searches, as seen above. This means that you can do look cute and the system will know what you want to look at (in vanilla Evennia you'd need to use look Sandra).
- Multi-word searching and disambiguation. If there is a cute girland a cute puppy both in the same room, your referencing of /cute will give an error listing the alternatives. You can then either include more words to make your reference unique or use an index (1-cute, 2-cute) to make it clear who you mean. This mimics normal object-key disambiguation in Evennia.
- Recognition. You can assign your own aliases to people. If Sandra introduces herself you could assign her the name Sandra and henceforth be able to reference her as such and see that name appear. But you could also name her The girl calling herself Sandraif you didn't believe that's her actual name.
- Languages. Everything within double-quotes is parsed as spoken language (like the Hello! above). By using writing this as (elvish)"Hello!", this could be spoken in another language and those who don't speak elvish would receive an obfuscated string.
- Masking. A person wearing a mask can force people's recognition replacement to deactivate so that they are not recognized anymore.
image ©Griatch, from griatch-art.deviantart.com