LizardIRC/Guide

From LizardWiki, FastLizard4's wiki and website
< LizardIRC
Revision as of 01:59, 26 July 2015 by FastLizard4 (Talk | contribs) (Full Channel Modes List: Link to m_exemptchanops documentation)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Note: Improvements are being made continuously to this page. If you have any suggestions for this page, please feel free to mention them in the channel #lizardirc. Registered LizardWiki users may edit the contents of this page using the link at the bottom.

Welcome to LizardIRC! This page will introduce you to IRC and familiarize you with the basics of using IRC, as well as some advanced topics such as creating your own channels. The first section should teach you enough to allow you to chat on IRC, and simply read further down to learn more!

Basics

IRC stands for Internet Relay Chat, and is a text-based protocol allowing real-time communication between users, sometimes thousands of them. The fundamental unit of IRC is the network, a group of servers that are linked together and send messages to each other. Users connect to these servers to join the network. On each network, there are channels which users can join. Users can send messages directly to other users (and in this case only the other user will see the message), or to channels (and everyone in the channel will see the message). To see the conversation happening in a channel and to send messages to it, a user must join a channel; to stop participating in the channel and stop receiving messages sent to a channel, a user parts it. Users can also be forcibly removed from channels (kicked) by the channel operators (or ops). Ops include the person who created the channel as well as any people he or she has chosen to also hold the position, and are usually identified by an at sign (@) in front of their nickname, the (changeable) name users pick to identify themselves on the network. Ops can also ban users from channels, preventing them from joining it. Each channel maintains its own list of ops, though a user can be an op in an unlimited number of channels.

Similar to channel operators, there are network staff, or simply staff, responsible for maintaining the integrity of the network. They can force users to disconnect from the network (kill), and ban users from connecting in the first place (usually called a g-line, but also referred to as z-lines and k-lines - the distinction is unimportant). Note that staff are sometimes referred to as network operators or opers (note the "er" in "opers"; opers shouldn't be confused with ops). They also have channel operator powers in all channels.

To connect to LizardIRC (or any other IRC network), you'll need a piece of software called an IRC client. There are many different ones, each with different features and designs but supporting the same protocol in the end. Though you'll probably want to experiment with different IRC clients when you become more familiar with IRC, for now, try installing one of these:

  • HexChat. Full GUI, works on Windows, Linux, and Mac.
  • Mac OSX users might want to try LimeChat for Mac or Colloquy.
  • If you use an iPhone, iPad, or iPod touch, try LimeChat for iOS or Colloquy Mobile.
  • AndroIRC is the accepted standard IRC client for Android devices. AndChat is another popular choice for IRC on Android.
  • irssi is the IRC client of choice for Linux shell users and those who like the command-line environment.
  • mIRC is a very popular IRC client on Windows, seen by many as the industry standard for Windows users.

Or, if you don't want to try any of these, try using one of these in-browser IRC clients, no installation required:

Finally, before beginning, ensure that you've read the LizardIRC Network Rules.

Connecting to LizardIRC

To connect to LizardIRC, you need to enter these details into your IRC client. Unfortunately, they all differ in how this is done, so check your IRC client's documentation for more information. In general, though, you just have to follow the prompts. Note that the in-browser clients listed above are preprogrammed for LizardIRC, so all you need to do is choose a nickname.

  • LizardIRC's address is irc.lizardirc.org
  • LizardIRC's port is 6667. If you are given the option to use SSL (encryption) and wish to take advantage of it, use port 6697.

Before connecting, you'll also have to choose a nickname, username, and realname. Nickname is how you'll primarily be identified on IRC and is the name that will be shown to other users (it can be changed later). Try not to choose a vulgar or inappropriate nickname, as this can get you kicked from channels. Username and realname are shown in what's called your whois information (this will be discussed later); suffice it to say that this is information shown if a user requests more information about you. Both can only be changed while disconnected from IRC, and despite the names, username doesn't have to be your username, and realname doesn't have to be your real name - they can be anything you want.

(Please note that, in general, web clients like KiwiIRC and webchat don't allow you to pick your username and realname, instead using predefined values.)

IRC client basics

Now that you've connected, let's cover the basics of an IRC client. An IRC client window consists usually of at least four distinct things: The nickname list, the text entry box, the channel list, and the main area where messages are shown. In general, the nickname list is on the left or right side of the window, and will probably be blank since you haven't joined any channels. The text entry box is almost always at the bottom of the screen, and allows you to type text into it. This is how you send messages and commands to IRC. The channel list is usually presented as a list of channels you are in/networks you are connected to either on the left or right side or as a list of tabs at the bottom above the text entry box. This is how you switch between viewing different channels, since you can be in many.

Joining a Channel

Once you've connected, you'll probably want to join a channel. Channels all start with one or more hash signs (#), and no, they aren't hashtags. If you're new, consider joining the channel #lizardirc which is the network's lobby channel. To join a channel, in the text entry box, type /join #channelName, then press <Enter> on your keyboard. Note the forward slash (/) at the start of the line you entered; this tells your IRC client that you're entering a command, not text to be sent. For example, to join #lizardirc, you'd type /join #lizardirc into your client.

You can see a list of popular channels on the LizardIRC homepage, or you can run the /list command to see a list of all public channels. Feel free to join them to see what they're about! When you join a channel, some text called the channel topic will be shown in the main window as well as at the top of the screen. For example, when you join #lizardirc, you might see something like this:

-!- FastLizard4 [fastlizard4@lizardirc/staff/wikipedia.FastLizard4] has joined #lizardirc
-!- Topic for #lizardirc: (☞゚∀゚)☞ Welcome to LizardIRC | http://youtu.be/qtYWqE55s24 | ...
-!- Topic set by FastLizard4 [] [Mon Apr 21 19:05:51 2014]

Other users in the channel will also see a message indicating that you have joined it.

You can search through the list of public LizardIRC channels by using Mibbit Search or Netsplit.de.

Now, you should be able to see a list of nicknames in the nickname list (if your client doesn't have one, try running the /names command) as well as any messages being sent to the channel. To send a message to the channel, simply type it in the text entry box and press <Enter>. For example, to send the message "Hello, world!" to the channel, you'd just enter Hello, world! and press enter. That's it! Your own message should then appear in the main window to confirm that you sent it:

< User39> Hello, world!

As you can see, every message is annotated with the nickname that sent it, usually in angle brackets (< and >).

Leaving a Channel

To leave a channel, also called parting it, simply run the command /part #channelName. All users in the channel you are leaving will be notified that you've left, and you'll no longer be able to send messages to or receive messages from that channel. You can also include a note in your "part message" to the channel by doing /part #channelName note. The note can contain spaces.

Disconnecting from IRC

You can disconnect from IRC by simply running the /quit command. This usually also closes your IRC client. All users in all channels you are in will be notified that you have disconnected by what's called a quit message. You can include a note in this quite message by doing /quit note. The note can contain spaces.

Registering Your Nickname

If you intend to stay a while on LizardIRC, conside registering your nickname - it will prevent others from impersonating you and allow you to hold channel operator privileges, for example. To register, type the command /msg NickServ REGISTER password email-address. Note that your password cannot contain spaces, and you must supply a valid email address. This will register the nickname you are currently using.

The /msg command allows you to send a private message (or PM) to another user; in this case, we're sending a message to the special user NickServ, who is what's called a "services bot", an automated program that exists on the network as a user.

The system will send you a verification email which will allow you to confirm your email address by executing a command provided in the email. Note that we don't recommend that you use Hotmail/Outlook/Windows Live Mail email accounts with LizardIRC as they may prevent you from receiving the email.

You only need to use this REGISTER command with NickServ once. Once you've registered, your account is created. In the future, to login after each new connection to IRC, run the IDENTIFY command like so: /msg NickServ IDENTIFY password, where password is the same one you set when you REGISTERed. Once logged in, you can change your password using the command /msg NickServ SET PASSWORD new-password. You can see all NickServ commands by doing /msg NickServ HELP.

You are automatically logged out of NickServ when you disconnect from IRC.

Note that you must use IRC at least once every 360 days. If you are logged out of your NickServ account for more than 360 days, your account will be automatically purged and your nickname made available for others to use.

If you forget your NickServ password, please join the channel #help and ask network staff to perform a password reset (remember to provide your NickServ account name); when this is done, you will receive an email with instructions on choosing your new password.

Sending Private Messages

If you registered your nickname following the steps in the above section, you're already familiar with sending private messages, or messages that are sent directly to another user and that are only visible to you and them. The general way to send a direct message is with the /msg target message command. Target cannot contain spaces (since nicknames cannot), but the message can. How outgoing and incoming private messages are displayed depends on the IRC client. Some will show them inline with channel messages (but marked differently), others will create new tabs for private messages. Check your IRC client's documentation.

Changing Nickname

To change your nickname, run the /nick new-nickname command. This will change you to your new nickname immediately. Note that, by default, new nicknames you use are not protected by NickServ, but you can add your current nickname to your NickServ account by doing /msg NickServ GROUP while logged in (though there is a limit to how many nicks you can "own" in this manner).

When you change your nickname, all users in all channels you are in will be notified that you have changed nicknames, with this nick message containing both your old and new nicknames.

Emoting

Once in a while, you'll probably see a user "emote", or perform an action in the third person. Emotes are formatted differently in most IRC clients, looking something like this (the line by "KingArthur" is an emote):

< TheBlackNight> None shall pass.
* KingArthur is Arthur, King of the Britons!
< TheBlackNight> ...None shall pass.

To perform an emote, simply use the /me command, like this: /me is Arthur, King of the Britons. As always, press <Enter> to send your line to IRC.

Setting away

If you are going to step away from IRC and want to let people know this, but don't intend on disconnecting, use the /away command to set an "away message" which will appear to other users in various ways. One such way is in WHOIS information (see Whois section below, under Advanced), and some clients will gray out nicknames that are marked away in their nicklists. To set away, run the command /away away message, where away message is the message you want shown to other users. You must specify a message of some sort. To unset your away status (i.e., "return"), run the /back command, or if your client doesn't recognize /back, run /away again, but this time with no arguments.

Conclusion

Sorry, that's probably been quite a bit to read. But you should now know all the basics of IRC and should be ready to jump right into the fray! If you'd like to learn more about IRC, though, for example creating and managing channels, please continue reading!

Advanced

Now this guide will cover advanced IRC topics. Before reading this section, you should of course read the Basics section above, and maybe use IRC for a couple days so you can get a feel for how it works.

Joining Password-Protected Channels

If you get a message that looks like this:

-!- Cannot join channel ##Test (Bad channel key)

It means that the channel is password protected. If you know the correct password, enter it as the second argument to the /join command and the network will allow you to join the channel (e.g., /join ##Test swordfish).

Channel Permissions and Prefixes

If you've been on IRC, especially #lizardirc, you've probably noticed that some people have symbols in front of their name, or an icon of some kind. These represent channel permissions, and are reflective of what a user is allowed to do in a channel. On LizardIRC, they work like this, from least privileged to most:

  • (none) - Regular user.
  • + - Voiced. Allowed to speak when the channel is in restricted mode. Usually a grey symbol in most clients; dark blue in HexChat. Most IRC clients have /voice nickname and /devoice nickname commands to manage this permission.
  • % - Halfop. All privileges of voiced users, plus the ability to kick, ban, change the channel topic, set/unset channel modes, and make other users voiced (or take voiced from users). Can only kick halfops and lower. Usually a blue symbol in most clients; light blue in HexChat.
  • @ - Op (channel operator). All privileges of halfops, plus the ability to kick other ops and lower, and the ability to make or take ops, halfops, or voiced. Usually a green symbol in most clients, including HexChat. Most IRC clients have /op nickname and /deop nickname commands to manage this permission.
  • & - Protected (also called "admin"). All privileges of ops, but cannot be kicked by ops or lower. Can kick other protecteds and lower. Can also take (but not grant) protected status. Usually an orange symbol in most clients, yellow in HexChat.
  • ~ - Owner. All privileges of protected, but cannot be kicked by protected or lower. Can kick other owners and lower. Can grant or take protected, and can take (but not grant) owner. Usually a violet symbol in most clients, orange in HexChat.

Basic Channel Modes

Channel modes are single-letter options that are set and removed on channels, changing various behaviors. Halfops and above can change modes in their channel. A mode change is broadcast to all clients in that channel, and looks like this:

-!- mode/#lizardirc [+m] by TLUL
-!- mode/#lizardirc [-mi+c] by DoctorPain99

In the first line, the user TLUL has set mode m in #lizardirc. In the second line, the user DoctorPain99 removes modes m and i and sets mode c in #lizardirc.

Modes are set using the /mode command. For example, the command DoctorPain99 would have run in the above example is /mode #lizardirc -mi+c. As noted above, each character has a meaning. Some modes take arguments, like the k mode that sets a channel password. For example, to protect a channel with the password "swordfish", you'd do /mode #channel +k swordfish. This, of course, would require anyone who wanted to join the channel to supply the channel key of "swordfish" (/join #channel swordfish).

We'll explain more about what exactly each mode does later. But first....

Basic User Modes

Much like channels, users can also have mode flags set on them. Unlike channels, though, users can only change the modes on themselves, and users' mode changes are not broadcast to anyone. Also like channel modes, user modes are set and unset using the /mode command, but instead of specifying a channel name as the second parameter, you specify your own nickname (for example, /mode RAN1 +i-w).

We'll also explain more about what exactly each user mode does later.

Hostmasks

Hostmasks are unique identifiers of IRC clients connected to IRC servers. Hostmasks are used by IRC servers, services, and bots to identify and keep track of specific IRC sessions.

IRC hostmasks follow the format nick!user@host. The "nick" portion of a user's portion is simply their current nickname. The "user" portion is the either username reported by the ident server on the user's machine (see below), or when no ident is available, a tilde followed by the username specified by the client when connected. The "host" portion either is the hostname of the computer the client is connecting from, or, if the hostname cannot be resolved by the server, the user's IP address. The "host" portion can also be the user's vHost or "cloak", a consistent string that hides the user's IP address in favor of some information about the user (see network rules, "vHosts/Cloaks" section).

Most IRC clients display a user's hostmask in their WHOIS output (see "Whois" section below) and when a user joins a channel; some also display it when a user parts or quits. For example:

-!- FlightTime|Away [~chatzilla@lizardirc/user/FlightTime] has joined #lizardirc

In this example, the user's full hostmask is FlightTime|Away!~chatzilla@lizardirc/user/FlightTime. Note that this user has a vHost hiding his true IP address, which would normally be after the @ sign. Also note that hostmasks are case-insensitive, meaning that FlightTime|Away!~chatzilla@lizardirc/user/FlightTime is equivalent to FLIGHTTIME|AWAY!~CHATZILLA@LizardIRC/User/fLIGHTtIME.

Finally, note that some channel modes take a hostmask as an argument.

Wildcards

In almost all modes and commands that take hostmasks, you can also specify a wildcard, a special character that matches any character or sets of any character.

IRC supports two wildcard characters in hostmasks, * which matches any text (or no text), and ? which matches exactly one character.

Here are some examples:

For the hostmask FastLizard4!fastlizard4@lizardirc/staff/wikipedia.FastLizard4:

  • The wildcard hostmask *!*@* matches (this particular wildcard hostmask will match all hostmasks)
  • The wildcard hostmask *!*@lizardirc/staff/wikipedia.FastLizard4 matches
  • The wildcard hostmask ?!?@lizardirc/staff/wikipedia.FastLizard4 does not match (because ? matches exactly one character, no more and no less)
  • The wildcard hostmask FastLizard4!fastlizard4@lizardirc?staff?wikipedia?FastLizard4 matches

If you are familiar with Perl-compatible regular expressions, the wildcard * is equivalent to the regular expression .*, and ? is equivalent to .{1}.

Whois

You can find out some information about a user by whoising them. This is accomplished by running the /whois username command with the target user's nickname as the argument. For example, /whois Rav3n|afk. This command in particular might result in this output:

* [Rav3n|afk] (znc@lizardirc/staff/Guncraft.CM.Rav3n): Quoth the Rav3n, Nevermore...
* [Rav3n|afk] &#lizardirc #devops #metroid ~#rav3nznc @#help 
* [Rav3n|afk] phazon.lizardirc.org :phazon.lizardirc.org - LizardIRC - Fremont, California, United States of America, Earth, Sol System, Federation Sector 001, Alpha Quadrant, Milky Way Galaxy
* [Rav3n|afk] is away (Auto away at Tue Jun 10 18:51:11 2014)
* [Rav3n|afk] is a SithLord on LizardIRC
* [Rav3n|afk] is logged in as Rav3n
* [Rav3n|afk] is using a secure connection
* [Rav3n|afk] idle 31:08:02, signon: Tue May 20 18:24:48
* [Rav3n|afk] End of WHOIS list.

As you can see, the command displays quite a bit of information about a user. The first line is the user's hostmask (Rav3n|afk!znc@lizardirc/staff/Guncraft.CM.Rav3n, note again the use of a vHost) and their realname ("Quoth the Rav3n, Nevermore..."), a list of channels they are in (with prefixes indicating their status), the specific server they are connected to, their away message (since they are away), their network staff status (SithLord), who they have logged in as with NickServ, the fact that their network connection is encrypted, and how long they have been idle. Some information that is not applicable may not be displayed (for example, users not using an encrypted connection simply have no "is using a secure connection" line, as opposed to having a "is not using a secure cnnection" line). Every client displays this information in slightly different ways, but it should be easy enough to figure out after running the command a few times.

Note that some clients may not show idle and signon time by default; if this is the case, try running the /wii username command instead of /whois username. If /wii isn't recognized by your client, try running /whois but add the username twice (for example, /whois Rav3n|afk Rav3n|afk).

Invites and Knocking

Have a friend on IRC that you'd like to invite to the channel you're in? Simply use the /invite nickname command to invite them to join the channel. The invited user will see a message like this:

* You have been invited to #camelot by KingArthur (irc.lizardirc.org)

Note that you have to be at least a halfop in the channel to invite someone to it, unless the channel has channel mode +A set, which allows all users to send invites.

In addition to sending a request to a user to join a channel, inviting allows the invited user to bypass bans (though they still won't be allowed to speak unless they are given voice or the ban is rescinded) and join the channel without knowing its password (if the channel has mode +k set). In addition, a channel can be made invite-only by a halfop (or greater) setting channel mode +i; in this case, one must be invited to join the channel until the mode is removed.

Aside from being invited, a user can bypass the invite-only restrictions of +i by having an invex, or invitation exception set on them. This is done by a channel operator setting channel mode +I hostmask, where hostmask is the nick!user@host hostmask of the user to be invex'd. Invexes can be removed by channel operators by setting channel mode -I hostmask, and a list of invexes can be seen by channel operators who set mode +I (note the lack of a hostmask argument).

Finally, unless the channel has mode +K set on it, a user can request an invite (knock) by doing the /knock #channel :message command (note that some clients may complain that "knock" isn't a recognized command; in that case, do /quote knock #channel :message). All channel operators will receive a notice that the user is requesting an invite. Banned users cannot knock on a channel. Remember to specify a message to be included with a knock, and be sure to include the colon before the message!

A knock looks like this to channel operators:

!irc.lizardirc.org User LizardSock is KNOCKing on #test (let me in!)

Banning Malcontents

Spammer in the channel? Maybe someone making rude comments? If you're a halfop, op, or greater, you can deal with them!

The first command in your arsenal is /kick nickname message. This will forcibly remove the user nickname from the channel with the kick message message. Of course, this won't stop them from rejoining the channel, but it makes for a good warning.

As an alternative to kicking, you can also "remove" or "force-part" a user from a channel. It effectively does the same thing as kicking, but to the target user and others in the channel, it will appear as if the user parted the channel instead of being outright kicked. This is often useful to prevent people from autorejoining after a kick, since most clients won't autorejoin after a part. There are two ways to force-part someone - both commands have the same effect, but take their parameters in different orders: /quote fpart channel nick reason and /quote remove nick channel reason. Note that the part message will include both the reason you specify, as well as "Removed by " and your own nickname.

If kicking doesn't get the message across, it may be time to ban the user. Banning is accomplished by setting channel mode +b hostmask, where hostmask is the nick!user@host hostmask of the user to be banned. Banning prevents a user from both talking in a channel and from joining it, so if you kick a user after banning them, they won't be able to even rejoin the channel (this behavior can be changed, and you can even use a different matching system than a hostmask; see the Extbans section below). In general, when banning someone by hostmask, one will use *!*@host, as this will match anyone connecting from the same host regardless of nickname. Note that bans on nick!*@* (or any ban hostmask that specifies a nickname) should be avoided, as these can be bypassed by simply changing one's nickname.

Unbanning is accomplished by setting channel mode -b hostmask, and anyone can view a channel's ban list by setting mode +b (note no hostmask argument) in that channel.

To make things easier, though, many IRC clients include a /ban nickname command which automatically detects the target user's hostmask and automatically sets the appropriate mode. Many likewise include a similar /unban nickname command that unbans (though this may not work correctly and you'll probably have to manually set -b hostmask anyway), as well as a /kickban nickname message command that automatically issues a ban then kicks the user from the channel.

Finally, a user can be exempted from bans by setting channel mode +e hostmask. These "exempts" are most useful when you have to set a large ban but still want to let some known good users in. Exempts can be removed by setting -e hostmask, and ops can view the list of exempts by setting +e (without a hostmask argument).

Extbans

Extbans, short for "extended banmasks" or "extended hostmasks", allow one greater freedom with hostmasks than simple nick!user@host, allowing things like only muting a user instead of banning them from joining, to banning based on account name instead of direct hostmask. Unless otherwise noted, extbans are entirely interchangable with hostmasks.

Extbans are split into two types; matching extbans, which match on users in additional ways, and acting extbans, which restrict users in different ways to a standard ban.

To use an extban, simply set +b ban or +e ban with it as the ban, instead of a normal nick!user@host mask, to ban or exempt matching users. Ban exceptions on acting extbans exempt that user from matching an extban of that type, and from any channel mode corresponding to the restriction. Matching extbans may also be used for invite exceptions by setting +I extban.

Matching Extbans

  • j:#channel - Matches anyone in #channel. Does not support wildcards for #channel.
  • r:realname - Matches users with a matching realname.
  • z:fingerprint - Matches users with a matching ssl fingerprint.
  • O:opertype - Matches IRCops of a matching type, mostly useful as an invite exception.
  • R:account - Matches users logged into a matching account.

Acting Extbans

  • c:ban - Blocks any messages that contain colour codes from matching users. Compare to extban "S", which only strips the color codes instead of outright blocking the message.
  • m:ban - Blocks messages from matching users. Users with +v or above are not affected.
  • p:ban - Blocks part messages from matching users.
  • A:ban - Blocks invites by matching users even when channel mode +A is set.
  • B:ban - Blocks all capital messages from matching users.
  • C:ban - Blocks CTCPs to the channel from matching users.
  • S:ban - Strips color/bold/underline from messages from matching users. Compare to extban "c", which outright blocks messages containing color codes.
  • T:ban - Blocks notices from matching users.
  • U:ban - Blocks unregistered users matching the given banmask from joining.

A ban given to an acting extban may either be a nick!user@host mask, matched against users as for a normal ban, or a matching extban.

CTCPs

Using CTCP (Client-To-Client Protocol), you can find out some basic information about other users by using the /ctcp nickname request command. For example, to find out what kind of IRC client Starman uses, one would run /ctcp Starman VERSION. Be aware, though, that many IRC clients will inform their users when they have been CTCP'd, and some users may not appreciate the intrusion! Also, although you can send a CTCP to an entire channel (by replacing nickname with #channel), this is regarded as a rude thing to do and in fact may get you banned! Operators can block CTCPs to a channel by setting channel mode +C in that channel.

Here is a list of commonly supported CTCP requests:

  • VERSION (gets the version information of another user's IRC client)
  • TIME (gets another IRC user's local time)
  • CLIENTINFO
  • USERINFO
  • FINGER (gets another IRC user's username)

There's also a special CTCP type called "PING" that usually has its own command, /ping nickname. Without going into detail about how this works, this will tell you how much lag exists between you and the other user.

Other Commands

To help conclude the Advanced section, here are some other IRC commands you should be aware of. Note that some commands are specific to LizardIRC; if so, it will be noted next to the command. Arguments are italicized, optional arguments are [italicized and in square brackets] (don't include the square brackets when you type the command!).

  • /notice target message - Sends a "notice" to the target (which can be a nickname or a channel). Notices are formatted differently from normal messages, in most clients, and are usually used for important notifications. Notices to a channel are blocked by the +T channel mode.
  • /cycle #channel[1] - Parts then immediately joins the #channel. Automatically bypasses any restrictive modes, such as invite-only (+i), key (+k), etc. Can only be used if you are already in #channel.
  • /topic [new topic] - Views the current channel's topic. With the new topic argument, sets the channel topic to new topic if you have the appropriate permissions.
  • /tban #channel duration hostmask[1] - Sets a timed ban. #channel is the channel for the ban to be set in, duration is the time until the ban expires and will be automatically removed by the server, and hostmask is the hostmask or extban to be set for the ban. Duration is either in seconds, or in a format like 1w2d3h4m6s, meaning "one week, two days, three hours, four minutes, and six seconds". Timed bans appear in the banlist like normal bans and can be safely removed like a normal ban before they expire.
  • /uninvite nickname #channel[1] - Revokes an invitation sent by /invite to nickname for #channel, effectively as if the invitation were never sent. Only works if the user nickname hasn't yet acted upon the invitation they were sent.
  • /accept +-* nick [, +-nick][1] - Manages your accept list. This list is used to determine who can private message you when you have usermode +g set. /accept +nick adds a nick to your accept list, /accept -nick removes a nick from your accept list, and /accept * displays your accept list.
  • /setname realname[1] - Sets your "realname"/"gecos" to the string realname.
  • /whowas nickname - Gets limited /whois-like information about a user who is no longer online.
  • /ison nicknames - When nicknames is a space-separated list of nicknames, returns only those nicknames in nicknames that are online currrently.
  • /watch[1] - Manipulates your watchlist, a list of nicknames for which you will be notified when they come online or go offline. The command has three forms:
    • /watch +-nickname[1] - Adds (if +nickname) or removes (if -nickname) nickname from your watchlist.
    • /watch S[1] - Queries the status of your watchlist.
    • /watch C[1] - Clears your watchlist of all nicknames.
  • /list [pattern] - Searches the list of public channels for pattern (which accepts the standard hostmask wildcards * and ?). Running without the pattern argument rerturns a list of all public channels - this is not recommended and can crash your client! You can also use Mibbit Search or Netsplit.de to search through the list of channels online.
  • /names [#channelList] - With no arguments, lists the people in the current channel. When provided with a #channelList argument (list of channel names, including the leading #, comma-separated), lists the names in all those channels (provided that you are in them).
  • /motd - Shows the IRC server's current Message of the Day.
  • /rules[1] - Shows the IRC server's rules.
  • /map[1] - Shows how the various IRC serves of a network are connected together.
  • /links[1] - Shows the list of servers on the current IRC network.
  • /lusers[1] - Basic network statistics, such as the number of users and the number of channels.
  • /time[1] - Shows the time as recorded by the IRC server.
  • /stats flag[1] - Advanced IRC statistics. See /quote help STATS for full information on how to use this command.
  • /version[1] - Shows version information of the IRC server.
  • /info[1] - Information on and credits for the IRC server software.
  • /sslinfo nickname[1] - Shows SSL information about nickname. Only useful if nickname is connected to the IRC network using a secure connection.

Notes

  1. 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 Server-side command. Some clients may include their own version of this command, or simply not recognize it. To ensure that you perform the server-side version of this command, include /quote or /raw before the command, whichever works. For example, for /cycle #channel, to get the server-side version, one might instead type /quote cycle #channel. Finally, note that these commands are very often LizardIRC-specific.

Full Channel Modes List

Here is the full list of channel modes supported by LizardIRC. Note that other networks will probably have a different list, and the mode flags may do different things.

For modes that take arguments, the argument will be italicized following the mode flag. Remember that the mode characters are case-sensitive!


  • +v nickname - Gives voice to nickname, allowing them to speak while the channel is +m.
  • +h nickname - Gives halfop status to nickname.
  • +o nickname - Gives op status to nickname.
  • +a nickname - Gives protected status to nickname, preventing them from them from being kicked (+q only).
  • +q nickname - Gives owner status to nickname, preventing them from being kicked (Services only).

  • +b hostmask - Bans hostmask from the channel. Omit hostmask to see a list of bans.
  • +e hostmask - Excepts hostmask from bans. Omit hostmask to see a list of these exceptions.
  • +I hostmask - Excepts hostmask from +i, allowing matching users to join while the channel is invite-only. Omit hostmask to see a list of these exceptions.

  • +c - Blocks messages containing mIRC colour codes. Compare to +S, which silently strips color codes.
  • +d time - Blocks messages to a channel from new users until they have been in the channel for time seconds.
  • +f *lines:sec - Kicks on text flood equal to or above the specified rate. With *, the user is banned - omit the * for a kick only.
  • +g mask - Blocks messages to a channel if the text of the message matches mask. This is a list mode; you can set multiple masks to be censored by setting +g multiple times. Omit the mask argument to see a list of censored masks.
  • +i - Makes the channel invite-only. Users can only join if an operator uses /INVITE to invite them.
  • +j joins:sec - Limits joins to the specified rate.
  • +k key - Set the channel key (password) to key.
  • +l limit - Set the maximum allowed users to limit.
  • +m - Enable moderation. Only users with +v, +h, or +o can speak.
  • +n - Blocks users who are not members of the channel from messaging it. Unless you know what you're doing, this should always be set.
  • +p - Make channel private, hiding it in users' whoises and replacing it with * in /LIST (compare with +s).
  • +s - Make channel secret, hiding it in users' whoises and /LIST (compare with +p).
  • +t - Prevents users without +h or +o from changing the topic.
  • +u - Makes the channel an auditorium; normal users only see themselves or themselves and the operators, while operators see all the users.
  • +w flag:hostmask Adds basic channel access controls of flag to hostmask, via the +w listmode. For example, +w o:R:Brain will op anyone identified to the account 'Brain' on join.
  • +z - Blocks non-SSL clients from joining the channel.

  • +A - Allows anyone to invite users to the channel (normally only +h or above can invite).
  • +B - Blocks messages that are all-caps.
  • +C - Blocks any CTCPs to the channel.
  • +F changes:sec - Blocks nick changes when they equal or exceed the specified rate (changes per sec seconds).
  • +H lines:sec - History playback - when a user joins a channel with +H set, lines (maximum 50) from the last sec seconds will be replayed to them. This could be used, for example, so users know what's being discussed.
  • +J seconds - Prevents rejoin after kick for the specified number of seconds. This prevents auto-rejoin.
  • +K - Blocks /KNOCK on the channel.
  • +L channel - If the channel reaches its limit set by +l, redirect users to channel
  • +M - Blocks unregistered users from speaking.
  • +O - Channel is restricted to network staff (opers). Can only be set by network staff.
  • +P - Makes the channel permanent; Bans, invites, the topic, modes, and such will not be lost when it empties. Can only be set by network staff and should be used sparingly and only for network critical channels. Setting +P unnecessarily can increase server overhead.
  • +R - Blocks unregistered users from joining.
  • +S - Strips mIRC colour codes from messages to the channel. Similar to +c, which outright blocks messages containing color codes.
  • +T - Blocks /NOTICEs to the channel from users who are not at least halfop.
  • +V source-channel - Channel will inherit all bans from source-channel. This means that anyone banned in source-channel will also be unable to join the channel +V source-channel is set in, while +V is set.

  • +X restriction:flag - Makes anyone holding a status mode flag (i.e., "h" for halfop, "o" for operator, "q" for owner, "a" for protected, "v" for voiced) immune to the specified restriction. Omit the argument to see list of restriction immunities. Note that restriction must be the name of the restriction, not its mode flag - for example, "filter" is the restriction name corresponding to channel mode +g. For a list of valid restrictions that can be used with +X, please see here.

  • +Z mode-spec - Allows using named channel modes instead of mode characters. For advanced users only; if you don't know how to use +Z, you probably shouldn't be messing with it (yet, anyway).

Full User Modes List

Here is the full list of user modes supported by LizardIRC. As with channel modes, note that other networks will probably have a different list, and the mode flags may do different things.

For modes that take arguments, the argument will be italicized following the mode flag. Remember that the mode characters are case-sensitive!

  • +c - Blocks private messages and notices from users who do not share a common channel with you.
  • +g - In combination with /allow, provides for server side ignore.
  • +h - Marks as 'available for help' in WHOIS. Network staff only.
  • +i - Makes invisible to /WHO if the user using /WHO is not in a common channel. Also hides non-common channels in a user's /WHOIS output.
  • +o - Marks as network staff (oper).
  • +s mask - Receives server notices specified by mask. Network staff only. Use of +s is not recommended; use the output in #opers instead.
  • +w - Receives wallops (less important global notices) messages.
  • +B - Marks as a bot.
  • +R - Blocks private messages from unregistered users.
  • +S - Strips mIRC colour/bold/underline codes out of private messages to the user.
  • +W - Receives notification when a user uses WHOIS on them. Network staff only.

Starting Your Own Channel

Want to create a private chatroom just for you and your friends? Or maybe want to create a public place for people to discuss a favorite topic of yours? It might be time to create your own channel! Before creating your own channel though, you should at least have read the Basics section above, and reading the Advanced section too wouldn't hurt. It's a lot of information, but it will make you ready for creating and managing your very own IRC channel (this section will assume that you've read both Basics and Advanced above).

Before proceeding, make sure that your channel won't break any network rules on the network you want to create your channel on. LizardIRC's network rules can be found here; if you aren't using LizardIRC, make sure to check with the network you are using. Also, be advised that this section is geared towards LizardIRC users, and some of these instructions may not apply on other networks.

Creating a channel is as simple as joining a channel that doesn't exist. We'll assume that you want to create a channel called #myLittleChannel. Channel names are case-insensitive, but the case will be preserved for presentation to users. So, to create your channel, just run the command /join #myLittleChannel. If the channel hasn't been created yet, there should be no one else in the channel, and you should automatically receive channel operator permissions.

For temporary channels, you're done! You will be the only opped user (unless you give it to other people), and you can now invite others to join the channel. This does have some caveats, though:

  • If you leave the channel without making anyone else an op, no one will be an op.
  • The channel will be destroyed once the last person leaves it. After the last person leaves, the first person to join will be considered as creating a new channel, and receive operator privileges automatically. Furthermore, things like the channel topic and banlist will be lost when the channel is destroyed.
  • Note that there is some takeover prevention afforded to unregistered channels via an EFNet-like ChanFix service. Please click the link for information on how ChanFix works and its limitations.

To make your channel more permanent, you can register it with the Channel Registration Service, or ChanServ. Much like registering your nickname to NickServ, it allows you further access to advanced channel management systems, as well as benefits like access to the Protected and Owner channel permission levels. To register a channel, you must be an operator in the channel (note that you don't have to be the person that created the channel as long as you have operator permissions) and you must be logged in to a NickServ account. Then, run the command /msg ChanServ REGISTER #channel. Your channel is now registered. ChanServ should join the channel, then grant you Owner permissions. The full extent of what ChanServ can do is beyond the scope of this page, but you can see a full list of ChanServ commands by doing /msg ChanServ HELP.

There are still some caveats to using ChanServ, and they are:

  • A channel must be used by the owner (or someone else on the channel's "access list"/with channel "flags" in ChanServ) at least once every 360 days. If a ChanServ-registered channel goes more than 360 days without such use, it will be deregistered automatically. Note that the channel won't be deleted if there are still people in it, but it will be reopened for registration.
  • Furthermore, a channel that goes unused by anyone for more than a month may be "abandoned" by ChanServ, meaning that although the channel is still registered, ChanServ will part it. This effectively destroys the channel, though it will be restored when someone enters it; ChanServ will automatically rejoin the channel, restore the topic, and resync channel permissions (things like the banlist and exemptlist will still be lost, though).
  • Due to both of the above, it is highly advised that the creator of a channel always be in it whenever they are on IRC, and to use IRC frequently to ensure the stability of the channel.

On LizardIRC, if you need any help with channel creation or management, feel free to join the #help channel, where our friendly team of LizardIRC Network Staff and helpful users alike will assist you.

Finally, remember that for a channel to be shown in the output of the /list command or to be indexed by Mibbit Search and Netsplit.de, it must not have modes +s or +p set on it. The easiest way to make your channel public is to do /mode #channel -sp.

Staff

LizardIRC network staff, and others who are simply interested in how staff do things, should check out the LizardIRC Staff Guide here.