At some time, I wish to introduce shared / public characters or puppets. I felt this feature might need its own topic.
@Jagrabbit, you will notice that many of your pointers matches my thoughts!
Short description
A puppet is a character that can be controlled by more than one player. The purpose is to have characters that are created as a part of different settings/areas; a waitress at a café, a stripper in a club, a keeper at the lighthouse. Or a station master at the platform to welcome newcomers.
This would allow the entire world to become more alive, instead of being focused just on a few central places. You don’t have to go to the park to find someone to play with. Instead you can go to an area/setting you like, and maybe someone else will greet you there.
Creating a puppet
- They are created by a separate command:
create puppet Miranda Honeyweather
- They are owned by the creating character (just like rooms).
- The owner is know to the public (just like rooms)
- They can have different levels of availability: free-for-all, on-request (also mods-only, and later group as well)
- They occupy the same name-space as normal characters.
Registering and controlling
- To control a puppet, you must first be in the same room to register it to your character:
register puppet Miranda
- If the puppet is on-request, a request will be sent to the owner, which can Accept or Reject it. (similar interface as
request exit
) - Owners and moderators can evict/unregister a character from a puppet.
- A registered puppet will be listed in a separate section under the Character Select tab.
- A puppet is awoken in the same way as a normal character
- A puppet can not be awoken if:
- Someone else is controlling them
- The registered character is suspended
- The player is locked-out (have too many currently suspended characters)
Playing with a puppet
- A controlled puppet shows up in its own tab, like any other controlled character
- Puppets can do common things like say, pose, whisper, message, describe, ooc, look, go, etc.
- Puppets are clearly marked as puppets (maybe a different colored name in the In Room list).
- Hovering chat log messages also tells what registered character is controlling the puppet.
- Puppets cannot be edited, except by the owner.
- Puppets cannot mail, register teleports, register other puppets, create rooms, etc.
- Puppets either has a separate How to play text field with info to the puppeteer. Or maybe info in the About (cinfo) field. At least something that may provide guidelines on how to play the character.
- The registered character controlling the puppet may or may not be awake at the same time
Room activity notifications
- The Character Select icon in the Realm panel will display a grey counter showing how many registered puppets are asleep in rooms occupied by one or more awake characters
- In the Character Select page, a registered puppet may be marked as “On watch”.
- If an on-watch’ed puppet gets visitors, the counter will turn orange instead of grey, and a system notification may be triggered.
Regulation
- A moderator may use
suspend
on a puppet which is the same as suspending the registered character. - Anyone may “ping” a controlled puppet. The controller must answer within a set time or lose control . (or some other similar function, to prevent puppets to be occupied by sleepers)
- A rule against hogging a puppet is added, which may be punished by suspension.
Phew…
That is the gist of it.
The Regulation part may be the trickiest. But I think it is doable. And I think the puppet idea might bring a lot of value to the game. Maybe. Or maybe it can flop. Not sure!
/Accipiter