ChatMUD was created as a social outlet, and there are many ways to communicate with people on it. There are many different ways to talk to people, including localized (current room only), channels, mailing lists, and external services.
- 1 Localized Chatting in Rooms
- 1.1 Finding communication partners
- 1.2 Joining people: The @join command
- 1.3 Localized Communications: for the whole room to hear
- 1.4 Opening your mouth: Say and stage talk
- 1.5 Making your Words Carry: the Yell Command
- 1.6 Performing Actions with Socials
- 1.7 Performing Actions Manually with Emotes
- 1.8 Sharing Links
- 1.9 Booting people from your room
- 2 Chatting on Channels
- 3 Private Conversations: Tells and private socials
- 4 Owning and Administrating Channels
- 4.1 Create the Channel: the % create command
- 4.2 Setting Channel Flags: the % flags command
- 4.3 Private Channels
- 4.4 Setting your Channel's Disclaimer
- 4.5 Muting and unmuting players: the %mute and %tempmute commands
- 4.6 Adding owners or admins to a channel
- 4.7 Channel Bots
- 4.8 Deleting your channel: The %delete command
- 4.9 Restoring a dead Channel: the @restore-channel command
- 5 Longer term correspondence with lists
Localized Chatting in Rooms
On ChatMUD, people frequently gather in a room to talk. Most of the communication in rooms is viewable only to people in that room.
Finding communication partners
The most popular way to find where active people are is by using the find command. However, this command is only available once you add Slej's feature to yourself. A *feature* is a set of utilities created by a programmer that a player can add or remove to add extra available commands to themselves.
To add the feature, type
By removing the Slej from the command, you can see a list of available features to add, but unfortunately many of them are not very descriptive. Try typing help with the object number as some feature creators wrote help on their features. Slej is one of those; you can type help #4469 to see all of the other functions that you now have access to.
The find command lists the active people (idle for less than 3 minutes), grouping those in the same room together. You may see a + after their name, this means that there are also that many idle people there. Using a number after the find command, such as
find 7, will list people active within that number of minutes. Type
findall to see the full list of people by location, including those who are idle.
If you do not want to add a feature, you can instead use the @at command. This command lists rooms containing online people, with the room containing the greatest number of people at the top. Unlike the find command, it does not show how idle these people are.
Joining people: The @join command
Joining people will attempt to instantly teleport you to the room they are currently in. That way you can easily talk to the people in the room, perform socials, and do other things detailed in the Localized Communication section. However, do not be surprised if your attempt to join fails, as people often seclude themselves in private rooms with a whitelist of selected people allowed to freely enter. To go back to the previous room you were in, type
back. [Back is another command available in Slej's features.]
Localized Communications: for the whole room to hear
You will notice that many of these communication methods can do similar or overlapping things. For example, using stage talk on a person who is alone in their room is roughly the same as sending them a tell.
Opening your mouth: Say and stage talk
The say command announces a message to everyone in the current room and is the most common communication method for rooms. You can also abbreviate say to ' (an apostrophe character).
The stage talk feature targets someone in the room with your message. For example:
-Athlon I don't think your idea was good
This would send a message to Athlon, if he is in the same room as you. If he was in a different room, you can add a ~ (tilde) character before his name in order to talk to him from afar. People in the room will be able to see you send the message to him, but they will not see if he sends a response back to you. For example:
-~Athlon I don't think your idea was good
Making your Words Carry: the Yell Command
The yell command works like the say command, except it broadcasts the message to all rooms in a three-room radius from your current room. A three-room radius means that any room you can use three or fewer exits to reach will hear you.
Performing Actions with Socials
Much of the activity on ChatMUD comes in the form of predefined actions called socials. To view a list of all the socials available, use the socials command. In order to perform a social, just type the name of the social. For example, to smile, you can type smile. If you want to perform a social on a person or object, type the name of the target after the social, such as:
If you see someone perform a social and you can't figure out what social they used, use the @socialsearch command. Search for part of the line you saw, and the command will bring up a list of socials that match. For example, typing
@socialsearch big blue eyes
Will bring up something similar to:
Button [player_to_you]: Athlon smiles at you with his big blue eyes, and you are torn between smiling back or killing him.,
and from that message you can divine that the mystery social was the button social.
Performing Actions Manually with Emotes
Command: emote <text>
This command appends your name before <text> and sends it to everyone in the room. It is not used often, since the available socials support most of the common actions people would do.
Sharing links to everyone in the current room is simple. Just enter the URL on its own line, and ChatMUD will display it to everyone in the room in a pretty format for easy copying.
Booting people from your room
Command: @eject <person>
If you own a room and you want to evict someone from it, you can send them packing with the @eject command, which sends them back to their home.
Chatting on Channels
Channels are the other common method of communication on ChatMUD. Unlike rooms, channels are accessible no matter where you are, and are often created for a single topic with a few exceptions.
Quick Start with Channels
Here is a list of the most common channels and a short description of each. To join one of them, just type the name of the channel. Remember to read and respect any rules in the disclaimer, if there is one. To send a message to the channel, type the channel name, followed by your message. For example, to send "hello" to the Chat channel, you can type:
To turn a channel off so you no longer receive messages from it, type its name once more. You can turn it back on in the same way.
- Chat: This is the most used channel on ChatMUD and almost everyone stays connected to it.
- Newbie: All new players are automatically connected to this channel. If you need help with operating ChatMUD, you can ask your question here, and if people are active, they will most likely give you an honest answer. Trolling newbies is frowned upon, particularly on the newbie channel.
- Gossip: This is ChatMUD's intermud channel that is connected to the Grapevine network. Several other common MUDS including Sindome are connected to it, and you can talk to their players from this channel.
- Dev: This is the main channel to talk about ChatMUD development. It's also a common place to ask MOO programming questions.
- News: This listen-only channel broadcasts news posts from some current events- and MOO-related subreddits.
To send a social to a channel, write a . before the name of the social. For example, sending
will make your character send a smile to the chat channel. A rare few channels, such as the Newbie channel, do not support socials. You can also add a target after the social, such as
.smile Athlon, and if that person is currently connected, it will successfully target your social. If the target is not connected, it will simply send the message like it was normal.
To mention a person, prefix your message with @ followed by the person's name. For example:
chat @Athlon Hello
Will send a mention to Athlon on the chat channel. If your target is not connected to the channel right now, the message will send like it was normal.
Catching up: the Replay Command
replay [channel|say|tell] [amount] [-t|-T]
If you missed something and want to see it again, you can use the replay command. Without arguments, you get the last 100 communication messages you saw, which includes say, tells, and channels to which you are listening. Filling the amount you want to see will show you that many latest messages. To show messages from certain sources, add a channel's name before the optional number to see messages only from that channel; the word tell to see tells; or the word say to see messages sent in a room you occupied. Adding -t to the end of this command will give you the relative time that you saw the communication, such as "4 minutes ago". Capitalizing the t will show you the absolute time you saw the item.
Channel Commands to know
Channel commands start with % (percent), which is a short form of the channel command. Here is a list of the most used commands for communicating on channels.
- % list: The %list command lists currently active channels to which you have access by current usage. A channel gains one usage when a message is sent to it, and slowly loses usage if no messages are sent to it in a certain time period.
- %connect <channel>: Switches your currently connected channel to the one you specify so that certain commands will operate on it, as shown below.
- % disconnect <channel>: This command disconnects you from a channel. This is similar to turning a channel off, except more permanent, because if the channel is password protected, you will need to reenter the password to reconnect to it.
- %stat [channel]: The %stat command lists important information about a channel such as its current and total usage, who owns it, its disclaimer if it has one, and any allow or ban lists that are set up. If you provide no channel, it will display the stats of the channel to which you are currently connected.
- % who [channel]: This command gives a list of who is currently listening to the channel. If no argument is given, it shows the who list for the one you are currently connected to.
- % paste <channel>: Lets you paste text to a channel spanning multiple lines, to a max of about 8000 characters. This is great for easily pasting items like news articles that you would have to remove the line breaks from otherwise. Send the command, paste in the text, then finish by sending a . (period) character. If no channel is specified, the paste goes to your currently connected channel.
- %alias/% unalias <alias>: Lets you set an alias for the currently connected channel, so that you can use the alias instead of the channel's name. For example, you may alias the channel "books" to bk, and then you can send a message to the channel by using the command bk <message>. %unalias removes the alias you have set up. To view your current list of aliases, use the %aliases command.
- % off/% on: turns all of your channels on or off at the same time.
- % color <color>: Lets you set the color that messages sent to the channel will appear in. Your client must support ansi color codes for this to work.
tell <player> <message>
Sometimes you want to converse privately with a single person. You can do so with the tells feature. The telllast, or tl, command, sends a tell to the last person to which you sent a tell, which is useful if you are focusing on a single conversation since it will save you some typing. The reply command sends a tell back to the person who last sent you a tell. This is a bit riskier, especially if people send you tells frequently, as you may reply to the wrong person.
Command: replylock <clear|player>
This sets or clears your reply lock, which helps to circumvent the inadvertent reply problem by forcing your replies to go to the player you have set. Unfortunately, the reply lock doesn't automatically clear if the player logs off, meaning you can forget it's set later, and send a reply to the wrong person anyway.
Private socials can be performed by adding a ! (exclamation mark) before the player's name. For example,
smile !Athlon will privately smile at Athlon. A player does not have to be in the room to have private socials performed on it.
Owning and Administrating Channels
At some point you will probably want to make your own channel, either to discuss more personal matters with a group of friends, promote discourse about some topic, or just try out the various channel features and bots.
Create the Channel: the % create command
% create <name>
This creates your channel. The name must be between 2 and 15 characters, and it starts out as public. Once it is successfully created, you are automatically connected to it so that administrative commands will affect it.
Setting Channel Flags: the % flags command
% flag [flag]
Without an argument, this command lets you see a list of valid channel flags, and a list of which ones are already set on the channel. To set or clear a flag, add its name after the %flag command, such as
To get a description of each of the flags, type
help channel flagdefs.
After you set the private flag on your channel, you will be asked whether you want allow list-based or password-based privacy for it.
Allow list authentication gives the channel owners complete control over who can access the channel. If this option is selected, an owner must use the
%allow <player> command to grant that player access. That player can then type the channel's name to connect to it. To revoke access, use the
%unallow <player> command, then boot the player from the channel with the
%boot <player> command. This command order ensures that he is disconnected from the channel and cannot quickly reconnect before you revoke access.
Setting a password is simple; use the
%password <password> command. Users connect to your channel with the
%connect <channelname> <password> command. The password can be changed at any time without disconnecting users from the channel, so you will have to boot any users you want removed from the channel after the password is changed. This privacy option is used for less private channels because of the possibility of someone leaking the password.
Setting your Channel's Disclaimer
Your channel's disclaimer is shown after a person connects to it, and also if they view the channel's information with
%stat. Here, you can enter a multiline disclaimer, and you also have access to a basic text editor. To finish writing, send a single . (period) character.
If you are updating from an old disclaimer, the editing cursor will be initially placed after it. In order to delete it, type:
Which deletes all of the lines from the first to the final line.
Muting and unmuting players: the %mute and %tempmute commands
%mute <player> [reason]
%tempmute <player> for < time> [reason]
If a player is being disruptive but you don't want to outright ban him from the channel, you can mute him instead. This prevents him from communicating on the channel, but he is still able to hear any other communications on it. Specifying a reason is optional. The %tempmute variation of the command will automatically unmute the player after the specified time; you can enter a time in plain English, such as
%mute Athlon for 2 minutes
which will mute the player Athlon for two minutes. If you wish to restore the player's ability to communicate, use the %unmute command. Note that channel owners cannot be muted.
Adding owners or admins to a channel
These commands allow you to add or remove other players as owners or admins of your channel. Admins can add or remove players from the allow list if there is one, mute or unmute players, and boot players from the channel. Owners have all the powers of admins, but can also change the channel flags and messages, add or change the channel's disclaimer, add or remove channel bots, and add or remove admins. They can also add or remove other owners if those owners were given the owner privelege after them. Only the primary owner can change the channel password if it has one or delete the channel.
Channel bots are sometimes fun, sometimes useful programs written by programmers that can listen to your channel and communicate on it. You can display a list of available channel bots with the %bots command and then add one you like with the %addbot command.
Deleting your channel: The %delete command
To delete a channel you own, first connect to it, and then run the
%delete command. You must then type the full name of the channel to confirm its deletion. This is to prevent you from accidentally deleting the wrong channel because you forgot to connect to it first.
Restoring a dead Channel: the @restore-channel command
Command: @restore-channel <channelname>
If your channel falls to 0 current usage, it will be deleted. A channel loses usage if no messages have been sent to it continuously for a while. If the channel usage is below about 5, every three hours without a message drops the usage by 1. At higher usages, this time is lower, though popular channels can easily keep up and protect themselves from deletion even during less active times. You can easily restore your channel with the @restore-channel command, and everyone connected to it since it was last saved will be reconnected. Channels with very low usage are not saved during the channel database backup. This means that if you restore your channel, connect some new people to it, and it dies again before anyone sends a message to it, those people will not be remembered if you restore it again.
If you are a patron in the $5 tier or higher, you don't have to worry about any of this because your channels are permanent.
Longer term correspondence with lists
Lists are similar to online forums. Each list has a certain topic, such as general chatter or polls, and users can start threads on the appropriate list. Other users can comment on the thread if they wish, and some lists support other functionality such as voting threads up or down. Because of their more organized nature, ChatMUD stores most of its idea and social issue discussions on lists, as the discussions are easier to access and follow than if they were stored on channel replays. For a concise overview of lists, type
help lists or
help lists2. Since many of the list commands are obscure and/or somewhat niche, this section of the guide will not be exhaustive, so the help files are a useful resource.
The most common public lists are below. Note that each list has a * before it, which you must use when referring to it. Lists are objects, meaning they can be looked at or examined like other objects.
- *ideas: The *ideas list contains feature requests from the user base. Many of these ideas have been implemented by the administration. Other users show their support or disdain for the idea by voting it up or down. The archwizard can assign the idea to be programmed by himself or another wizard, and then when finished, the idea's status becomes implemented.
- *Bugs: Found a bug? Odds are that if you are here long enough, you will. If it isn't very serious, you can post about it on the *bugs mailing list and someone will address it soon. Most threads you see have the closed status, meaning the bug has been addressed and fixed, though a few have the status "not a bug". If your report is serious, contact a wizard directly using tell.
- *Social: This is the social issues mailing list. Major social issues do occur from time to time, provoking an avalanche of opinions. Posts here are usually the culmination of more haphazard realtime discussions.
- *Gallows: This is a read-only mailing list for non-wizards for punishment records.
- *Chat: General purpose chat. Many of these messages have little intrinsic value, but may be entertaining in the short term.
- *Polls: Simple binary polls for entertainment.
Viewing messages on a List: the @mail command
@mail [selector] on [list]</ode>
This command shows a list of messages on the specified mailing list, defaulting to the 15 latest ones. For example, to see the most recent 15 messages from the *ideas list, type
@mail on *ideas
Common selectors include:
- new: displays all messages you have not yet read.
- #: show the message with the given number.
- last:#: show the last # messages. For example
@mail last:8 on *ideaswould show the 8 most recent messages on the *ideas list..
- ..#: show messages in the specified range. You can also use $ for the most recent one. For example,
@mail 35..60 on *ideasshows you messages 35 through 60 on the *ideas list.
@mail 267..$ on *ideasshows you all items from 267 to the most recent one.
- from:<person>: show items from that person. For example,
@mail from:athlon on *ideasshows messages from Athlon.
Reading messages from a list: The @read command
Command: @read <#> on <list>
This one is pretty simple. You can also use message selectors in this command and it will read all of them for you.
Adding your input: The @comment command
If you want to respond to someone's message, you can comment on it, creating something akin to a thread. Your comment can only be a single line.
Upvoting or downvoting: @yes and @no
Command: <code.@yes|@no <#> on <list>
Some lists, such as ideas, polls, and comedy, allow you to show your support or contempt for items by up- or downvoting them. Use the @yes to deliver an upvote, and @no for a downvote. When reading the message, you will be able to see how many upvotes and downvotes it has.
Sending a new message: the @qsend command
This command allows you to send a message to the specified mailing list. You will first be asked for the subject of the message. After typing that in, you are prompted for the message, which can be as many lines as you want. When you are finished, you can either enter . to send the message, or @edit to open the message in the local editor if you have that enabled. If you don't have local edit support enabled and you type @edit at the prompt, you are taken to the mail room, where you can do seldom-used mail sending tasks. Local editing is convenient since you can use standard editing features of your operating system.