Eggdrop HOWTO
*SPECIAL NOTE*
This is basic setup to get you up and running. If you have never used Eggdrop or know very little about how to use it, or how it work/what it does, I recommend go to this site for more knowledge on Eggdrop bots
Introduction
Eggdrop is advanced IRC-Bot mainly used for channel management, but it can also be configured with complex extra features for an advanced experience in your chatroom.
Eggdrop is not a simple bot.
With it's staggering array of options, you will find that doing tasks without it, at least some other kind of IRC bot, their would be just too much stuff to do and the Earth would cease to function without this beautiful contraption.
Installation and Configuration - 10 Steps made easy by www.Global-Shellz.org
I will use a basic setup for my bot as an example throughout this HOW-TO.
While logged into your shell, just type this simple command:
getegg --install
Then follow the onscreen instructions:
Step 1: JUST PRESS ENTER
Directory where your eggdrop will be created [/home/t/thewookie/eggdrop...JUST PRESS ENTER]:
This is the directory that you permanently store your Eggdrop installation. Pressing ENTER will install it to the default dir: ~/eggdrop
Step 1.2: Confirm
Install will remove any existing bot files!! Are you sure you want to continue? [y/N] Do you want to config the bot as well? [Y/n]
For the first one, make sure you do want to overwrite any existing bot that may exist in the location you chose. If so, hit y and enter. For the second confirmation, you will want to hit 'enter' if you want to automatically set up your bot. (Recommended)
Step 2: Botnick and Alternative
Botnick. This is the nick by which your bot will join and will become the name of the conf file as well: Alternative nick. This is the nick by which your bot will join if botnick is taken:
I am going to use my botnicks: botboy and boybot - Type in the name you want for your bot on irc and press ENTER. Then enter your Alternative choice. Don't think too hard because we can always change it later.
Step 3: Bot Owner
Your (the bot owner) nickname:
I am going to use my nick: TheWookie - This is where you tell the bot who's bitch it is. You just type in your Nick on IRC and press ENTER
Step 4: Home Channel
Main Channel of the bot (without #):
I am going to use the gshellz bot channel: #gshellz-bots which is what I recommend you use until you are more familiar with the setup - Type in the name of the main channel you want you Eggdrop to join. Remember you don't need the #
Step 5: Your Open Ports
thewookie's portlist
Your ports are: (xxxxx) - (xxxxx) You are using these ports: (xxxxx) Choose one of your ports to use:
I am going to use my open port, but I don't need to tell you it - This where you enter which available port you would like to either DCC or Telnet to you Eggdrop bot once it is on IRC. Type in a port number that is not used and press ENTER
Step Six: Networks
IRC Network where the bot will join : choose number (1=Freenode, 2=Undernet, 3=DALnet, 4=EFnet, 5=Quakenet, 6=Other)
I am going to use the Freenode Network, where the Global-Shellz main channels are - This is where you get to choose which network your channel is on. If you are unsure, select 1. *NOTE* - Picking 6 will require you to do Step Nine. Continue to Step Seven either way.
Step 7: vHosts
Choose which vhost you want to use for your bot:
( WARNING: only choose vhost if you want to connect to ipv6 capable network! Otherwise select 0! )
(*NOTE: The first 7 vhosts are IPv4 )
1 it.came.from.behind.gshellz.org
2 nx01.darkholdings.com
3 peter.piper.picked.a.peck.of.pickled.gshellz.org
4 goatse.is.my.wallpaper.at.gshellz.org
5 my.milkshake.brings.boys.to.gshellz.org
6 when.this.baby.hits.88mph.gshellz.org
7 sleep.is.for.the.weak.at.gshellz.org
8 zetas.ownz.u.at.gshellz.org
9 watch.brabo.fuck.up.ipv6.at.gshellz.org
10 free.gfe.at.gshellz.org
11 black.from.the.waist.down.at.gshellz.org
12 hans.blix.loves.gshellz.org
13 we.have.hot.chicks.at.gshellz.org
14 bellz.and.whistlez.at.gshellz.org
15 free.love.at.gshellz.org
16 i.kissed.brabo.and.i.liked.it.at.gshellz.org
17 bill.gates.named.microsoft.after.his.penis.at.gshellz.org
18 we.made.our.linuxsecured.net
19 dev.null.gshellz.org
20 what.would.you.do.for.a.gshellz.org
21 maximum.warp.to.gshellz.org
22 chuck.gshellz.org
23 Router.Rooters.Team.supports.gshellz.org
24 we.were.framed.net
25 we.are.not.el1t3.org
Enter number :
I am going to use number 19 (we.are.not.el1t3.org) - In this step you need to choose which vHost you would like to use for your bot on IRC. This allows it's IP address to be hidden in a customizable way. You will need to make a selection between 1 and 19
*NOTE - There may be some issues using number 18, so I don't recommend using it at this time.
Step 8: SSL
Use SSL to connect? [y/n]:
I am going to use SSL because it's just better - Choose yes or no for enabling the bots SSL encryption when it connects to IRC. *NOTE* - if enabled, the IRC server's SSL port must be used.
Step 9: Server Address
Enter an IPv4 only server of the network:
OR
Enter an IPv6 only server of the network:
Type in the address of the IPv4 or IPv6 IRC server, depending on which vHost you chose. *NOTE* - This Step is only done when "6=Other" network is chosen in Step Six - Otherwise you are done setup.
Step 10: Server Port
Enter the SSL port of the network:
OR
Enter the IRC port of the network:
This is where you enter the port of the server you want Eggdrop to connect to, depending on whether or not you enabled SSL
Step 11: Running your Eggdrop For the First Time
To run your bot for the first time you must specify the configuration file when starting it. The command to do this is:
./eggdrop -m yourconf.conf
The -m creates the user file and is only required the first time you run the eggdrop; after the user file is created you can omit the -m.
You have just finished a simple install and setup of Eggdrop 1.6.19 on your shell. If you entered everything correctly, you bot should be attempting to connect to IRC and will be in the channel you set.
Connecting to Your Bot
Now that you have installed and configured your Eggdrop Bot, it's time to connect to IRC and start communications with it.
I connected to the Freenode Network and the channel #gshellz-bots in my setup, so I'm going to connect and join this channel in my IRC client.
Say hello and set your password
Once you have joined the channel, you may see you bot already there waiting for you. If not just wait and it should appear very shortly. When you do see it you need to send it a private message with the word "hello" To do this in almost any IRC client, type this command into the open chat window:
/MSG botboy hello
Remember that in place of my bot's nick, botboy, you will enter the name of your bot
You should then receive a Notice in your main open chat windows from your bot saying something like the following:
-botboy- Hi TheWookie! I'm botboy, an eggdrop bot. -botboy- I'll recognize you by hostmask '*!thewookie@*.we.are.not.el1t3.org' from now on. -botboy- YOU ARE THE OWNER ON THIS BOT NOW -botboy- As master you really need to set a password: with /MSG botboy pass <your-chosen-password>. -botboy- All major commands are used from DCC chat. From now on, you don't need to use the -m option when starting the bot. Enjoy !!!
So now that the bot recognizes me, I'm going to set my password for it with this command:
/MSG botboy pass <my-password>
You should now receive a notice from your bot something like this:
-botboy- Password set to: 'xxxxxxxx'
Opening a DCC connection with your Eggdrop
Now you are ready to open a line of communication with your bot. This is where you can do a lot of setup/commands on you Eggdrop. The simplest way to do this is to type in this command in your IRC window:
/CTCP botboy CHAT
*Remember that in place of my bot's nick, botboy, you will enter the name of your bot* You should then a DCC Chat request window from your bot. Accept it and a new chat window should open.
- If you can't connect to your bot with DCC, please see the section titled Connection Problems
If it did connect, you should then see something like this:
Client: botboy (208.73.219.132) Time: Fri Aug 20 12:05:49 2010 - Acknowledging chat request... DCC Chat connection established - <botboy> Nickname. <TheWookie> TheWookie <botboy> Enter your password. <TheWookie> <my-password>
You need to type in YOUR IRC nick that you have been using to communicate with the bot thus far. Then you will need to enter your password that you also set.
You have now open a chat line, a.k.a. the partyline, with your newly installed Eggdrop bot. You should see something along these lines in your chat window with your bot:
<botboy> Connected to botboy, running eggdrop v1.6.19-ipv6+ctcpfix <botboy> ____ __ <botboy> / __/___ _ ___ _ ___/ /____ ___ ___ <botboy> / _/ / _ `// _ `// _ // __// _ \ / _ \ <botboy> /___/ \_, / \_, / \_,_//_/ \___// .__/ <botboy> /___/ /___/ /_/ <botboy> <botboy> Hey TheWookie! My name is botboy and I am running eggdrop v1.6.19-ipv6+ctcpfix, on Linux 2.6.32.15grsec1.0-custom02-grsec. <botboy> <botboy> Local time is now 12:06 <botboy> You are an owner of this bot. Only +n users can see this! For more info, <botboy> see .help set motd. Please edit the motd file in your bot's 'text' <botboy> directory. <botboy> Use .help for basic help. <botboy> Use .help <command> for help on a specific command. <botboy> Use .help all to get a full command list. <botboy> Use .help *somestring* to list any help texts containing "somestring". <botboy> <botboy> Have fun. <botboy> <botboy> Commands start with '.' (like '.quit' or '.help') <botboy> Everything else goes out to the party line. <botboy> ### You have the following note(s) waiting: <botboy> 1. botboy (Aug 20 11:24) <botboy> ### Use '.notes read' to read it. <botboy> *** TheWookie joined the party line.
From this point on you can send commands to the bot through this DCC window.
Connection Problems
If you received a response from you bot when you said Hello to it, AND you set your password, but you are unable to connect after sending the "/ctcp <bot-nick> CHAT" command, then this section will give you insight as to why. Hopefully it is a simple fix, one that only requires you to edit your config file.
Until now, the config file (eggdrop.conf OR <bot-nick>.conf) hasn't required any adjustments because of the amazing "getegg" script or friend Brabo has so gracefully written for us here at Global Shellz. BUT, in order to become an advanced Eggdrop user, this file is one of the most important things to learn.
The first time I tried to DCC my bot, I recieved a DCC request from it, but the conection was refused. This little hiccup that is causing our connection problems MAY be solved by un-setting the 'set my-ip6' and 'set my-ip' lines. You can do this by setting them blank. They would then look like this:
set my-ip "" set my-ip6 ""
Doing this will make your bot use the default vhost and SHOULD allow you to connect through DCC. If this didn't work, then I highly suggest you read up on this problem at this site for more info on DCC connection problems. You should also talk to an Admin in the chatroom and they should give you a hand.