- 1 All right, I've heard about this thing, but what exactly is ROBOT9000?
- 2 Ok, sounds great! But how exactly does it work?
- 3 So what happens if I say something that someone else already said?
- 4 How can I tell when I can speak again? How long will my next mute be?
- 5 How does ROBOT9000 keep track of who gets muted?
- 6 Help! I cant change my nick!
- 7 That seems too strict. Change it!
- 8 But doesn't that..
- 9 But I don't like being muted! :(
- 10 Is there any place I can fool around with Moderator?
- 11 What about..
- 12 Did the moderator just start talking?!
- 13 This seems like a brilliant idea! Can I do this in my own channel?
- 14 Is there any way to hide the joins/part/channel messages for $ircClientOfMyChoice?
- 15 This channel has hundreds of people, but nobody's saying anything!
- 16 #xkcd-signal specific information!
All right, I've heard about this thing, but what exactly is ROBOT9000?
Ok, sounds great! But how exactly does it work?
It's pretty simple. There's only one rule. Don't say anything that someone else has already said. This rule is enforced by ROBOT9000, known as Moderator in the channel. When taking into consideration if something has been said or not, repeating characters, case, punctuation, nicknames, smilies, and multiple spaces are stripped from the line.
For example, "ROBOT9000 is great" is considered the same as "xkcd: ROBOT9000 is great" and "xkcd: ROBOT9000 is great!"
So what happens if I say something that someone else already said?
The punishment is simple. You get muted or devoiced for a period of time. For the first offense, you are devoiced for 4 (four) seconds. The next offense quadruples the time devoiced to 16 (sixteen) seconds and so on. After your mute time is over a year, you get kickbanned from the channel.
Every 6 (six) hours (12:00am, 6:00am, 12:00pm, and 6:00pm US.EST (GMT -5)) the next mute time gets cut in half. This creates a theoretical max devoice time of just over 9 (nine) hours, however some circumstances can result in a longer mute time. Circumstances that result in longer mute times include being manually muted by a human moderator, and Moderator lagging and extra lines going through when they shouldn't have.
How can I tell when I can speak again? How long will my next mute be?
Send ROBOT9000 a message saying "timeout" - this will tell you if you're currently muted, when will you be voiced again, and how long your next mute will be. You can also find the time for any other user - just send 'timeout nick' to the ROBOT9000.
How does ROBOT9000 keep track of who gets muted?
ROBOT9000 tracks who's who by looking at your hostmask. Changing this to evade a mute is considered to be bad form.
Help! I cant change my nick!
If you're muted, you're only allowed to change your nick 3 (three) times in the span of 5 (five) minutes. If you change it more than that, you are blocked from changing your nick. You are also kicked from the channel, however you're free to rejoin right away. Your mute time quadruples for breaking this rule as well.
That seems too strict. Change it!
4x mute time was chosen after experimenting with lower rates. It's a little tough on new people, but most people quickly get used to it.
But doesn't that..
Make it difficult to hold a conversation?
No, for example, #xkcd-signal started off with two years worth logs from #xkcd and has been going for a few months (One month before xkcd's original blag post, and a few months after) without any major difficulties conversing with one another.
Keep in mind the breadth of the English language. There are anywhere between 450,000 and 1,000,000 words in the English language. Also, in his blag post, xkcd estimates that the channel will be able to run for a decade without any problems, and far longer with minor issues.
Interrupt potentially creative conversations?
Potentially, however it takes a number of mutes to get to a substantial mute time, and by expanding upon ones thoughts, it is generally easy to prevent such a thing from occurring. After all, it's hard to be creative if you say the same thing over and over!
Create situations that can be abused?
There are also a number of human moderators in the channel to watch chat and fail people for bad form. Persistent intentional bad form is rewarded with a ban. Forms of abuse that will receive a failure by a live moderator include:
- Adding non sequiturs to the end of a sentence. (ex: "ROBOT9000 is awesome! aasdfa" and "ROBOT9000 is awesome! BROWN FOX")
- Talking in languages other than English
- Any other bad form that you can think of that human moderators agree is bad form. We're all here to have fun, don't be the one to ruin that.
But I don't like being muted! :(
Put more thought into your lines. Expand on what you're saying. Don't just say "I agree" or "Yes" but instead try a form of "I agree with $nick because of (insert reason why you agree)" there might a limited number of synonyms for "yes" but if you expand on your thought, it usually ends up working out pretty well in #xkcd-signal.
Is there any place I can fool around with Moderator?
While #xkcd-signal is a fun place, it's not the place to play around with ROBOT9000/Moderator. However, #moderator-sandbox on Foonetic is available to play around with or practice with ROBOT9000. The user database for this channel gets reset every 24 hours, at 12:00am US.EST (GMT -5) (5am GMT, 9pm PST, 6am CET, 3pm EDT). At the same time, the logs are synced from #xkcd-signal.
- If you want to discuss the merits (or lack thereof) of ROBOT9000, join the channel #meta-discussion. If you want to discuss the point of #meta-discussion, please join #meta-meta-discussion and so on.
- During the history of #xkcd-signal, a number of things were considered but ultimately decided upon as being a Bad Thing™. Some ideas (and the reasoning behind their Bad Thing™ status) are:
- Whitelists. A majority of the words and phrases that would go on a whitelist are noise or can easily be abused to create noise. It's simpler not to have a whitelist at all.
- Adjusting the mute time based on how often a line is said. The reasoning behind this is that new people could join, say "hi" and receive a two week mute time. Thats also a Bad Thing™
- A scoreboard of some sorts. Whether keeping track of mutes or something else, it leads to people gaming the system to increase their stats in the standings.
- A voting system to revoice someone . However honorable the intentions of this thought are, it basically comes down to a popularity contest within the channel.
- Pardon slips to revoice someone. Again, we don't want this to be a popularity contest. By not having pardon slips, it removes a situation where someone goes "Aww, why don't people pardon my mute, no one likes me :("
- Grace periods upon joining. It provides an opportunity for someone to spam and say anything they wish. This doesn't really work with the idea behind #xkcd-signal, where the goal is to put thought behind everything that is said.
- Using ~q (mute) instead of +v. While this would remove the need to have the bot +v everyone when they join the channel, it would mean it would have to maintain the banlist of everyone who was ever muted. It would also make it less immediately visible who is muted and who is not.
Did the moderator just start talking?!
If things are getting too quiet (no chat within the past 60 minutes by default) in the channel, the moderator will quote an entry from /usr/bin/fortune. Hopefully it will spark some interesting conversations. Note - this isn't set up to happen in #xkcd-signal, but other channels that use the moderator code might have it enabled.
This seems like a brilliant idea! Can I do this in my own channel?
Is there any way to hide the joins/part/channel messages for $ircClientOfMyChoice?
This channel has hundreds of people, but nobody's saying anything!
It's a mistake to assume that silence is a bad thing. Silence means there is no noise, not just no signal. Eliminating noise is one of the main goals of ROBOT9000. This is just an extreme case of the goal being reached. If the silence is bothering you, feel free to start a new line of conversation and others may join if they are around.
#xkcd-signal specific information!
- #xkcd-signal is primarily a social channel, you're welcome to join and hang out!
- ROBOT9000 is known as "Moderator" in #xkcd-signal.
- The original blag post from xkcd concerning ROBOT9000 can be found here. It's a pretty interesting read and if you like #xkcd-signal you should be sure to check it out!
- #meta-discussion exists to take talk of ROBOT9000 #xkcd-signal out of -signal. When people repeatedly ask questions regarding mutes, et al., it only creates more noise in -signal. So please take meta-discussion to #meta-discussion!
- #xkcd-signal can be found on Foonetic irc network (irc.foonetic.net or irc.xkcd.com) in the channel #xkcd-signal (If you haven't figured that out by now)
- You can connect on ports 6667-6669, and port 7000 with a normal connection. Additionally, Foonetic offers SSL connections on ports 6697 and 7001.
- Want IPv6? Connect via irc6.foonetic.net.
Thank you to NoOneButMe and thefiddler for compiling this FAQ. If you have any suggestions, questions or other discussion, find us at #meta-discussion.