Up to Main Index Up to Journal for August, 2020 JOURNAL FOR FRIDAY 21ST AUGUST, 2020 ______________________________________________________________________________ SUBJECT: Getting sociable with Whisper, Tell/Talk and Shout DATE: Sat 22 Aug 05:34:42 BST 2020 A few weeks ago I had a nice email from a user called Gniblik who used to play on the MirrorWorld MUD back in the day. He was hoping to get his two children, Pan and Ariane, interested in playing WolfMUD, but they were not entirely convinced of the idea. He suggested that I add tell, shout or similar commands to make things more friendly and sociable for players, and maybe encourage his children a bit more. How could I say No? I hope they have fun with the commands I’ve just added… WolfMUD already had a SAY command, it is now joined by WHISPER, TALK/TELL and SHOUT. To help illustrate I’ll be using five different players: Diddymus, Fred, Bob, Lisa, and Sam. Diddymus, Fred and Bob are together in one room, Lisa is next door, Sam is next door to Lisa. This tiny example world of ours looks like this: ┌────────┬────────┬────────┐ │Diddymus │ │Fred Lisa Sam │ │Bob │ └────────┴────────┴────────┘ The format of the new commands are: SHOUT <message> TELL <who> <message> / TALK <who> <message> WHISPER <who> <message> Next we have some examples showing the commands in action from the perspective of each of the players: [Diddymus] >whisper fred Bob looks funny... You whisper to fred: Bob looks funny... >tell bob You look funny... You say to Bob: You look funny... >shout Bob looks funny! You shout: Bob looks funny! > [Fred] > Diddymus whispers to you: Bob looks funny... > Diddymus says to Bob: You look funny... > Diddymus shouts: Bob looks funny! > [Bob] > Diddymus whispers something to Fred. > Diddymus says to you: You look funny... > Diddymus shouts: Bob looks funny! > [Lisa] > You hear taking nearby. > Someone shouts: Bob looks funny! > [Sam] > You hear someone shouting nearby. > For the SHOUT command you can hear what is being shouted in locations that are immediately next to the location where the shouting happens, including above and below. If you are two locations away you just here someone shouting something. This is for practical reasons as in an extreme situation, like a big open area, you could need to lock a maximum of 45 locations. For a larger radius the number of locks rapidly increases[1]: 1=1, 2=11, 3=45, 4=119, 5=249, 6=451, 7=741, 8=1135, 9=1649, 10=2299. These are worst case figures for every location being linked to all of its neighbours using all available exits. While this is not a common scenario, and even a few thousand locks should not be a problem, I’d like to run some tests and benchmarks just to be safe. This is my first take on these commands. The radius for SHOUT will probably be increased. However, I need to make some optimisations first. At the moment there is no limit on how often you can shout which could cause issues annoying other players. If the radius is increased, how often you can shout should probably be limited. The SHOUT, TELL/TALK and WHISPER commands are out on the public dev branch. -- Diddymus [1] This is the odd digits of (n^3 + 2*n)/3. See https://oeis.org/A006527 Up to Main Index Up to Journal for August, 2020