Quick HowTo Guide to IRC

Learn the Basics of IRC and be a Pro in just a Few Minutes

Table of contents

What is IRC?

IRC stands for Internet Relay Chat. It's the oldest, largest, and most well-established text-based chat system on the 'Net. In fact, it's one of the most popular services on the Net as a whole, just behind the Web and email.

First things first:

To connect to IRC, you need an IRC client. An IRC client is to IRC as a web browser is to the web -- it's a program that lets you connect up and use the service. The most common client on Windows is mIRC, with pIRCh close behind. (Although, pIRCh has not upgraded their software since 1998, I often believe newer is not always better -- pIRCh is still a powerful IRC client that works on Win9*/NT/XP, and it's still FREE!) Unix users have a whole lot of choices: ircII, XiRCoN, xchat, etc. The most prominent clients on Mac are ircle and ShadowIRC. The Mozilla internet suite project (which is the basis of Netscape 6+, Beonex, and some other browsers) includes an IRC client called Chatzilla (Netscape 6+ doesn't include it by default; NS6+ users have to install it separately from mozilla.org if they want to use it). If you don't want to download a whole IRC client, there are also clients written in Java and available as applets on the web: Chatster IRC Network offers an enhance-featured one with the help of php and javascript at java.chatster.org/lite/chat.php, and one which does not use php and javascript loading faster at www.chatster.org.

Most of what we will cover are general IRC concepts that apply to all clients. Although, there are some client-specific details relating mostly to mIRC, xchat, and some jIRC.

Connecting to IRC:

Now that you have a client, or are on a page with a Java client, you need to connect to IRC. There are several different IRC networks, each with their quirks. The one I spend most of my time on, and the one I have the most experience with, is the Chatster.org IRC Network. Chatster is at irc.chatster.org. Most of this howto applies to all networks -- I'll tell you when I'm talking about something specific to Chatster.

In jIRC, it's pretty simple: type your preferred nickname into the text box labelled "nick", the server address (irc.chatster.org) into the text box next to the word "server", and the channel name (#irchelp) in the box next to the word "channel". Click on "Connect" and you're ready to rumble. If you see a box option for "password", ignore it for now and I'll get into more details about password protecting your nick with an IRC Services robot (aka bot) called NickServ.

mIRC is a little more complicated. The first thing you should see after you've clicked past the splash screen (the window with a photo of a guy in the corner who is the founder/developer of mIRC) is the options window. In the "Category" box, "Connect" should be highlighted. Go to the second pull-down menu from the top and select "Chatster: Random Server". Fill your info into the text boxes (note: you don't have to use your real name in "Full Name", a lot of people put quotes or dumb jokes in there), most importantly putting your preferred nick in the box labelled "Nickname" and a good alternate in the "Alternate" box. I would recommend clicking in the "invisible mode" box as well, but you don't have to (I'll explain why later). Click "Connect to IRC Server" and you should be in. If you have problems connecting, try typing "/server irc.chatster.org" (without the quotes) in the Status window.

In xchat, when you start the program the first thing you see will be a list of networks, which can be expanded to show servers. Find the one called Chatster, click on it, and click Connect. If you can't find it, click New Server, and in the dialog that pops up fill in the server name ("Chatster") and server ("irc.chatster.org"), and click OK.

Terminology note: what other chat services call "chatrooms" are called "channels" on IRC. It's an older term that comes from CB radio. Channel and Chatroom (or chatroom channel) are pretty interchangeable, but some people can get pedantic about it.

Now that you've connected:

With Chatster's jIRC, you're home free -- signing in automatically sets you in a channel. With mIRC, however, the first thing you do is click out of that silly list of channels that pops up. Almost none of the preset channel names in there are in use on Chatster. I believe there's a checkbox that says "Don't show this again" -- click it, that window is just an annoyance. Now that's over with, type "/join #trivia" and press enter to join the Trivia channel (the # symbol is how IRC tells channel names apart from user nicks -- for example, "#trivia" is the trivia channel, while "trivia" is a user nickname. There are other symbols that also denote channels, but they're rare and fairly unimportant). In xchat, you don't have to worry about a popup window, just type "/join #trivia".

You're in the channel, now what?

Go ahead and talk! Anything you type in the channel is sent once you hit return. However, there's one caveat: if you start the line with a slash ("/"), your IRC client will interpret that as a command.

The most common command is the action. If you start your message with the word /me, it will broadcast your message in the third person: for example, if I, nick named as unixgirl, type "/me does jumping jacks", it will show up in the channel as "* unixgirl does jumping jacks", sometimes in a different color depending on the client. (Note: be sure you write your actions in the third person, instead of falling back on the first person, since it's supposed to be describing something you're doing as if the other people in the channel are seeing it. It's a common mistake to write something like "/me goes out to get myself a soda", which would show up in-channel in my case as "* unixgirl goes out to get myself a soda", which sounds awkward)

To change your nickname, you use the /nick command. The next word after /nick becomes your new nick: e.g., if I want to show that I'll be away from the computer for a while, I'd type "/nick unixgirl-afk" to change my nick to unixgirl-afk (AFK stands for "Away From the Keyboard").

If you want to join another channel, use /join. Put the channel name after /join, like this: /join #irchelp. If the channel doesn't exist yet, it will be created and you'll become its first op -- I'll tell you what that's all about in the next section. Some active channels on Chatster are: #trivia, #lounge, #zjam, #irchelp (Chatster's IRC help channel), and #cafe.

If somebody is bothering you, most clients have an /ignore command (jIRC, the javachat used by Chatster, has an Ignore button as part of the popup window when someone sends you a private message.) To prevent any messages from a specific user from showing up in your client, type /ignore followed by the nick of the offending party. With jIRC, you just click on the Ignore button.

If you ever want to leave a channel, you use /part. Put the name of the channel after /part: to leave #irchelp, you'd type "/part #irchelp". If you want, you add a message after the channel name, which will show up as a "parting message".

If you want to log off, you use /quit. You don't have to type anything after /quit, but like /part you can add a message if you like.

Finally, /help is implemented in most clients as a way to access help pages. mIRC has very comprehensive help files, while jIRC users will pretty much have to read the help information displayed from the IRC server. mIRC also allows you to specify what you want help on by adding parameters to /help: for example, to get help on the /ignore command, you'd type "/help ignore". jIRC users can view /help command details provided by the server's help system, but not all commands are supported by jIRC.

Why do some people have an @ sign in front of their names?

In the list of users on the channel, some are prefixed with an @ and usually show up at the top of the list. These are the channel operators, commonly called chanops or just ops. The ops run (or operate) the channel -- they can kick people out, ban people from entering, change the channel's modes, and more. They're there to keep the channel running smoothly.

On some channels, you'll see some users with a + sign in front of their nicks. This is called "voice", and it's really only meaningful on moderated channels (channels with the mode "m" set), where it means that they are allowed to speak. On unmoderated channels, it's usually just there for show.

Registering nicks:

In general, on IRC, you are allowed to use any nick you'd like as long as no one else is using it at the same time. However, on Chatster (and many other networks), it is possible to register your nick so that you are the only user allowed to use it. To do this, type:
 
/nickserv register <password> [email address]
 
with your preferred password in place of <password>. If you get a message saying that your client doesn't understand the command, use this instead:
 
/msg nickserv register <password> [email address]
 
Note: a valid email address for the email parameter is important, just in case you forget your password and the SENDPASS command is needed to email your current password as a reminder.

Then, every time you log in with that nick, the first thing you should do is type:
 
/nickserv identify <password>
 
or
 
/msg nickserv identify <password>
 
using the password you gave when you registered.

If you are using Chatster's jIRC javachat, there is an optional field at the login screen to enter your nick's password. Just enter your correct password and when you connect to the server, jIRC will automatically identify you with NickServ.

If you're using mIRC, you can set it up to do so automatically when you connect. Go into the "Options" window (the little icon in the upper left hand corner with a hammer and folder opens that window), and click on "Perform" under "IRC" in the Category box. In the large text box, type the proper identification command. Then click in the little checkbox that says "On connect, perform these commands:" and click OK. If you're using xchat, you can also do this. Go into the Servers window (the one that appears when you start the program -- if you're already on a network, go into the X-Chat menu ad select Server List). Click on the server you will be using, and click Edit. In the text box labelled "Connect Cmd:", type the identification command, and click OK.

On Chatster, it is possible to group several nicks so they are all treated as the same. To do so, register your main nick name first (here I'll call them nick1 as your main nick name and nick2 to add in nick1 group.) Then, change your nick name to nick2 and as nick2, type:
 
/nickserv group nick1 <password for nick1>
 
with the password you gave when registering nick1 (or replace /nickserv with /msg nickserv, if necessary.)

Here's the most useful thing about registering. Sometimes, due to certain conditions on the Internet, you get disconnected from the server, reconnect, and find that your nick is still in use. In other words, you got disconnected, but the server hasn't found out yet and thinks your old connection is still active. If you haven't registered the nick, you'll have to wait for the old connection to die (which could take a while), but if you've registered your nick, you can take the initiative and have it killed. To kill off a "ghost" like that, use the ghost-kill command:
 
/nickserv ghost <nick> <password>
 
with the ghost's nick and your password in the appropriate places. This will cause NickServ to force that connection to terminate, allowing you to change your nick back (with /nick) and go about your business.

Help! I forgot to identify, and NickServ changed my nick and won't let me change back!

If you forget to identify for your nick, NickServ may change your nick (on Chatster, it will change your nick to chatster#######, where ####### is some random number). It will also create a "phantom user" called a "hold" with that nick so nobody can use it for a short period of time -- this is to prevent people who haven't registered for the nick from simply changing their nick back each time they get the boot. The ghost command can't get rid of the hold. Instead, you have a couple of options: wait until the hold disappears by itself, or use the NickServ "release" command: /nickserv release <nick> <password>, which will remove the hold immediately. Once the hold is gone, you can change your nick back. However, remember that you will still have to identify once you've recovered the nick, otherwise NickServ will give you the boot again.

What's that little +x in my title bar for?

When you're in the status window in mIRC, your user modes show up in the title bar. The "+x" is a special mode that means that part of your computer host name is hidden, preventing malicious users from finding your IP address and ping flooding you or hacking into your computer. You can turn it off by typing: /mode <yournick> -x, although I highly recommend you keep it on.

The other user mode that will show up is the +G mode. This is also a special mode to help keep Chatster IRC Network a safer place for young children to chat by filtering a predefined Bad Words List in private message with censored #@)$&*%! characters. You can turn it off by typing: /mode <yournick> -G. (This same mode can be set on channels to censor the same bad word list from public chat by typing: /mode <channel> +G. Of course, you must be a channel operator to change channel modes. More on this later in the next section.)

If you clicked the "invisible mode" checkbox in mIRC, it'll also have an "i" in the list of modes. This prevents you from showing up in lists of all users on the network. So, to talk to you, somebody either has to join a channel you happen to be on or already know your nick. If you have this mode set, you are much less likely to get random messages from people you don't know asking you if you want to chat. You can turn it on by typing: /mode <yournick> +i and off with /mode <yournick> -i. Chatster's server automatically has usermode set to +i as an extra safety measure for those on IRC.

Another usermode you can set on yourself is mode "w", which allows you to see "wallops" messages, which are messages that administrators occasionally send out, usually joking around with each other. Almost nobody uses wallops on Chatster. It's entirely useless. Don't bother.

Some other user modes exist, but are reserved for admins and IRC operators (called IRCops, or opers, these folks help run the network, but unlike the admins they don't have physical access to the servers). You won't be able to set these on yourself, and they're really not that interesting to anyone who isn't running the network anyway.

So, what about the weird characters in the title bar when I'm in a channel?

When you're in a channel, mIRC shows a bunch of characters like "+nrt" in the title bar along with the name of the channel and the topic. These are channel modes, which give the channel special characteristics. They can only be set by the ops. Here's what they mean:

As well as these general modes, there are a few that affect specific users. These don't show up in the list of modes: +o gives a user op status, +v gives a user voice, +b bans a user (prevents them from entering the channel or, if they are in the channel, prevents them from speaking), +h gives a user halfops (halfops can ban and kick users from the channel but cannot give other users op status.)

What is ChanServ?

ChanServ, along with its partners NickServ and MemoServ, is a program that runs on the network with special privileges. Its job is to maintain channels that have been registered with it. It automatically gives ops to the channel founder and other users designated by the founder. Chatster's ChanServ is quite sophisticated, and allows a lot of customization in how each channel is run: users are assigned access levels, and access to specific features are allowed based on level. This can be anything from automatically giving voice to automatically opping, to even more powerful options. However, unless you're an op in a registered channel, you really don't need to worry about it too much.

MemoServ, for what it's worth, allows you to send short messages to other registered users even if they aren't logged in. It's sort of like email, although the messages can't be long. It is useful in certain circumstances, for example if you need to get in contact with someone but are rarely on at the same time as they are, and you don't know their email address.

To get more info on the services, type /nickserv help, /chanserv help, or /memoserv help. The help files can also be accessed on the web: NickServ,ChanServ, and MemoServ.

Private chat:

As well as chatting on channels, it's possible to chat privately with individual users. mIRC and jIRC both allow you to double-click on a user's nick in the list of names on a channel to open a new window for chatting with that person. You can also type "/msg <nick> <message>" on any client. On most clients, each private chat gets its own tab (window in jIRC).

Pinging and lag:

It's possible to check out certain facts about another user through a feature called CTCP. The most basic CTCP command is the ping, which is used to check the network lag time between yourself and another user. Just type /ping followed by the nick of the person you're pinging and you'll receive a notice (in your status window if you're using mIRC) with the target nick and the time it took for the ping to get there and back. It's possible to ping everyone on a channel if you put the channel name as the target of your ping, which is a good way of comparing lag times to see how much lag is on your end. Note that jIRC users are out of luck on this: jIRC doesn't display the time elapsed, which makes pings pretty useless--it doesn't reply to other people's pings at all. Some people are irritated by unannounced pings, especially pinging an entire channel or pinging repeatedly, so it's best to ask unless you know the subject doesn't mind.

There are other CTCP commands besides ping: TIME gets the time on the target user's computer, and VERSION gets the name and version of the target user's client. These don't have their own commands (/time and /version do something else entirely), so you need to send them with the /ctcp command:
 
/ctcp TIME
 
and
 
/ctcp VERSION
 
respectively. There are other standard CTCP queries, like CLIENTINFO (lists CTCPs supported by the target), FINGER (almost never used), and USERINFO (user data--the target must be specially set up to respond to this), but they're rare and not particularly useful. The /me command is actually the ACTION CTCP, but typing "/me does something" is faster and easier than typing "/ctcp #<channel name> ACTION does something".

It's also possible to make up your own CTCP commands, although you shouldn't expect any sort of meaningful response: the /ctcp command can be used with any message.

A bunch of people just quit without warning. What gives?

Sometimes a bunch of users will seem to all quit at once with cryptic-looking quit messages. What happened is that their server has lost contact with your server. This is called a "netsplit", since it splits the IRC network into two pieces. The strange quit message is actually the addresses of the two servers that lost contact.

IRC works through a group of servers. Each server is connected to one "hub" server. Any number of servers may share a hub. If a hub crashes, or two servers lose a connection, then any servers connected to each other through that hub (or connection) will no longer be able to see each other on the network.

Why did I just get cut off?

A couple of things may have happened. One is that your computer may have lost contact with the server due to conditions on the Internet itself. Another is that the server you were connected to crashed (hey, it happens.) When this happens, just try to reconnect. If you can't, the server is probably temporarily down. If you can, it was just an internet glitch.

Sometimes if you reconnect after being cut off, you'll get a message saying that your nick is already in use. This means that the server hasn't realized that you were cut off, and still thinks your old connection is active. In this case, use the NickServ Ghost command (see the intro to NickServ) if your nick is registered. If your nick isn't registered, just use a different nick until the server drops your old connection.

What's up with the quit message "Connection reset by peer"?

This quit message comes up when the server can't contact a connected client. See the previous section.

Trading files:

It's possible to trade files over IRC using a feature called DCC (which stands for Direct Client Connection). Chatster DOES NOT recommend trading files on IRC or clicking on any webpage posted by a non-trusted user or stranger! Viruses and Trojans (malicious "hidden" Bots that run on your computer without you knowing it) can easily be hidden in these type of files that you download from IRC or from a webpage. Please take my word on this... you do not want to visit any website posted by a stranger or accept any DCC files on IRC. Please read the next section on "The Do's - Netiquette" regarding how to protect yourself. Meanwhile, for learning purposes, and for those who have an excellent AntiVirus/AntiTrojan program installed on their computer, I'll continue...

Once again, jIRC users do not have this feature. mIRC has a nifty little menu just for this purpose. Just select "Send" in the DCC menu and a dialog box will pop up. Type the target nick in the "nick" text box and select a file to send just like in any other file dialog. The other user has to accept the file before it gets sent. DCC is fairly convenient and trustworthy for moderately-sized files like text, graphics, or short sounds

You can also use DCC to chat. The main difference between regular private chat and DCC chat is that DCC chat, once started, is independent of the IRC network itself--even if the entire IRC network crashes, or one or both of the people chatting disconnect from the server, the chat will be unaffected.

LAST WARNING!!! : DCC works by trading IP addresses, then creating a direct connection between the two computers that bypasses IRC completely. This means that it's fairly easy for somebody to get ahold of your computer's IP address this way. Do NOT accept any DCC file or request for DCC chat unless you are sure that you can trust the other person.

Internet Etiquette

There are certain rules of etiquette for chatting on IRC, usually called 'Netiquette', and if you'll follow a few rules of common courtesy, you'll find your stay quite enjoyable. For example, TYPING IN ALL CAPS is usually viewed as shouting, and not recommended in channels you wish to continue to participate. Using foul language, or being rude to others is also discouraged on most channels. If you join a channel and find it offensive, simply leave; there are plenty other channels to choose.

Listed below you'll find more common rules of Netiquette to help you on IRC :

The Do's - Netiquette

 
The Do Not's - Netiquette

Common abbreviations and shorthand:

There are loads of abbreviations used all of the time on IRC. Most are fairly common to the Internet as a whole, showing up in email, newsgroup postings, web-based discussion forums, etc. You probably already know some of these... Listed here are a few more that are specific to IRC (or at least to chat):

afkaway from the keyboard
asapas soon as possible
bblbe back later
bbsbe back shortly
brbbe right back
bbiabbe back in a bit
bbiafbe back in a few
bbfnbye bye for now
btwby the way
ctccare to chat?
cyasee ya
FAQFrequently Asked Questions
foclfalling off chair laughing
fwiwfor what it's worth
fyifor your information
<g>Grin
gmtaGreat Minds Think Alike
icI see
imoin my opinion
imhoin my humble opinion
iowin other words
irlin real life
j/kjust kidding
ltnslong time no see
ltslaughing to self
l8rlater
lollaughing out loud
lylove you
motdmessage of the day
n/pno problem - np also used
oicOh, I see
otohon the other hand
pplpeople
reRE hi or RE hello
roflrolling on floor laughing
tafnthat's all for now
ttyltalk (type) to you later
ttystalk (type) to you soon
wbwelcome back
wfmworks for me
wtgway to go
WYSIWYGwhat you see is what you get


What does it mean when people type :) and what are emoticons?

Emoticons such as :) and :( are text expressions, usually facial, describing yourself as happy, sad, angry, etc... Below is a table "guideline" of typical emoticons. When using jIRC javachat for Chatster, many of these expressions are replaced with graphic-emoticons.

:) Smile
:-) Smile with a nose
;) Wink
;-) Wink with a nose
:D Very Wide Grin
:P Sticking out Tongue
:I Hmmm...
:( Frown
>:( Angry Frown
:[ Real Downer
:< Forlorn
:x My lips are sealed
:o Oh, nooooooo!
:! Foot in mouth - oops!
O:) Angel
}:[ Angry, frustrated
^5 High Five!
:/ Wry or discomforted
8) Smile with glasses
=:O Oh, I'm scared!
@_@ stunned
o_o shocked
~\0/~ Waving hello or goodbye
:))) Reeeaaally big happy smile
&:) From a person with curly hair
#:) From a person with matted hair
:> Smile with a bit of sarcasm
*<|:) clown
=^.^= A cat smiley
~:( Steaming Mad
\_/ Empty Glass
\~/ Full Glass
|_|} Cup of coffee
<:-) Innocently asking dumb question