SS3D
SS3D copied to clipboard
Need Communications Design
Summary
Currently, everyone has access to every channel in the chat system which is obviously not ideal but we can't just throw telecommunications in, we need a proper design first.
Design and document the communications system
1. Functionality for various channel types:
- [ ] OOC - Global 'Out Of Character' chat. Includes a setting that automatically turns it off at the start of a round and turns it back on at the end of around, this setting can be toggled on/off depending on the round. Also, include a setting for server admins to manually turn OOC on/off (overriding the previous setting).
- [ ] System - A chat that sends out server messages ("Welcome to ____ Server", "Server Restarting", etc.) and where admins can make server-wide announcements or votes.
- [ ] Admin - A chat exclusive to server admins and moderators, used for discussing admin/mod stuff.
- [ ] Log - A game log of actions, world events, speech, etc. used by maintainers to help hunt down bugs, and used by admins to help hunt down pesky griefers. The Log should be able to be saved and exported at the end of a round.
- [ ] Local - Chat that only entities within a certain distance can hear (technically radios with open mics within this distance will also record and send your message but we haven't gotten to radio yet).
- [ ] Radio - A complex multi-frequency chat that records the chatter from an entity via a radio device (headset radio, handheld radio, intercom, etc.) and relays that through a central server system and back out to other devices on the same frequency as the incoming message, see the TG wiki. Some devices are locked to just 1 frequency, others have multiple, and some can be tuned to select a certain frequency. (Note: when talking over the radio you are naturally also talking in Local.) Although a full range of frequencies should be made available here are the named ones:
- Public
- Supply
- Engineering
- Medical
- Science
- Security
- Syndicate
- Command
- Robotic
- Centcom (This is a special one that actually doesn't have its own frequency but rather the message instead broadcasts across ALL radio frequencies. It is used for sending Centcom announcements to all crewmen.)
2. Functionality for special message types:
- [ ] LOOC - Same as OOC but only other players in your local area can see it.
- [ ] Whisper - When whispering your Local speech can only be heard by players directly next to you, anyone outside this range just gets a message that you are whispering (alternatively we could make the message jumbled or even just have a whispering sound effect instead). Whispering also allows you to say something over a radio while someone across the room can't hear you.
- [ ] Emotes -
/me dances on the chair.
Emotes are naturally Local only but should be stylized differently since they convey an action as opposed to speech. - [ ] Texting - Texting is a private Radio chat that is noiseless (can't be heard) since it is directly inputted into the radio device rather than being picked up being the device's speaker. The receiving device may make an audible "beep" but will not speak out the message since it is text only. Although it uses the telecommunications hub to transfer messages like other radio messages, these are not dependant on a radio frequency but rather act on their own sort of 'text-only' frequency.