1. Installation Overview
  2. STEP ONE : Installing the core files in your account.
  3. What do all these files do? Descriptions.
  4. STEP TWO : Preparing the configuration file.
  5. STEP THREE : Starting the bot for the first time.
  6. Checking for Errors : The bot won't come up.

^ 1. Installation Overview

This online document will cover the basics on how to install and configure your new eggdrop bot. This document is geared toward the SATEXAS pre-compiled internal bot. If your using a self-compiled bot, you are on your own.

^ 2. STEP ONE : Installing the core files in your account

The first step is to install the core files needed to run the bot on your shell. Begin by typing "menu" while logged into SATEXAS via telnet. You want to choose option 1, Internal Bot.

The setup process is designed to detect if you have a bot already installed and will prompt you if one is found, and give you options.

After the installation completes, you will have a new directory called Bot on your shell. You must now type "cd Bot" to enter it.

Once you are in the directory, type "ls" to see all the files and directories that where installed. Here is what it should look like when you type "ls":
Botlogs doc language
COPYING egg.config motd
NEWTO1.3.0 eggdrop.conf.dist scripts
READ.ME.SATEXAS filesys weed

(Notice that there are a few readme's and other text help/information files)



^ 3. What do all these files do? Descriptions
Botlogs Directory for your log files
COPYING Copyright stuff
NEWTO1.3.0 What's new in this version of bot
READ.ME.SATEXAS A MUST-READ setup/rules file
doc Symlinked Document Directory (READ THESE!)
egg.config A sample config file WITHOUT all the comments
eggdrop.conf.dist A sample config file WITH all the comments
filesys Bot incoming file directory (dcc)
language Directory that stores the language files
motd Message Of The Day bot display file
scripts Directory that stores all your tcl files
weed A tcl script that converts old user lists

This is basically everthing that was installed.

^ 4. STEP TWO : Preparing the configuration file.

At this stage, you are now ready to prepare the configuration file for use. For this example, we are going to use the "stripped down version" (egg.config) of the configuration file. We will only talk about the REQUIRED lines that need changing. To learn about the other lines, and what they control/change, please read the other configuration file, eggdrop.conf.dist file, which is the same as the one in this example, but has all the comments and descriptions included.

NOTE: Editing the files : At the shell prompt you can type pico egg.config. This will bring up a text editor that is very simple to use. For more information on any program or unix command you can type "man [command/program]". Man stands for manual and there is a extensive built in manual (help) system on most unix servers. All pico editor commands referenced to during this section will be placed in [ ] symbols.

The first line in the config file needs to be:
#!/usr/local/bin/eggdrop/bot
This line is for crontab if you wish to use it later, so leave it be.

unbind dcc -|- su *dcc:su
You can remove this line [ctrl k] because it is no longer needed (The bug was fixed several versions ago).

set username "SATEXAS USER"
This entry is used if the ident request didn't work.

The next main section that needs to editing is the logfiles

logfile mkco * "BotLogs/bot.log"
This entry logs all the console flags mkco to a file called bot.log inside the BotLogs directory. There are many other flags you can log once you start you bot. Read the help files for more information on these flags. In the meantime, leave this line alone.

logfile jk #tester "BotLogs/lamest.log"
This entry logs channel activity. You must change #tester the the channel name your bot is going to be sitting in. The jk is the flags or actions on the channel it will be logging, in this instance the bot will log all joins and kicks. BE CAREFUL here and don't define to many actions or your log will get large very quick. If it gets to large and you reach your quota (space you have been allocated) you bot will not act correctly and may corrupt its userfile, just to name a few things that can go wrong.

The next major section is FILES and DIRECTORIES

set userfile "Bot.user"
This is the name of the user file the bot will use and write to. You can name it anything you want just remember what you decide to use. You can also have it placed anywhere in the bots root directory. For instance say I want to keep it in BotLogs I would use set userfile "BotLogs/bot.user" That would keep the user file in that directory. This is handy if you want to keep your bots root directory clean.
set help-path "/usr/local/bin/eggdrop/help/" DO NOT edit this line! The help files are kept with the system installed bot. By having this configuration, you automatically get upgraded and changes when we upgrade the internal bot on SATEXAS. This eliminates the need for you to reinstall it everytime we upgrade.

set temp-path "/tmp"
DO NOT edit this line! The bot occasionally writes to a tmp file and needs this line. The /tmp directory is the standard location for most programs to write to.

The next major section is BOTNET there are several areas that you need to edit here.

listen 3333 all
This line tells the bot what telnet port to listen at. You must change the 3333 to another number. We would recommend someting above 8000 or even 10000. If you try and use a port another bot is using on SATEXAS you will run into strange errors or connection messges so just be aware if you see these after starting your bot and change the number to something else.

set protect-telnet 1
This means what it says, asking if you want to protect the port from possible intruders. 1 is ON, 0 is OFF.

set ident-timeout 30
This is the amount of time the bot should wait for an ident reply from a connecting client. Increase this time if you are having problems connecting.

There are many other entries you can change, refer to eggdrop.conf.dist for what they do and what you can change them to.

The next major section is ADVANCED STUFF

An important line here to edit is
set owner "MrLame"
You really need to change this to what ever nick (your name on irc) is. Never leave it as MrLame or MrsLame.

The next area in this section is the part where we tell the bot what channel its going to sit in.

channel add #tester { - this line tells it what channel
chanmode "+nt" - what modes to enforce or set on the channel
idle-kick 0 - kick idle people 0=off this is in seconds
flood-chan 10:60 - 10 messages in 60 seconds will get them kicked
flood-deop 3:10 - 3 deops in 10 seconds will get them kicked
flood-kick 3:10 - 3 kicks in 10 seconds will get them kicked
flood-join 5:60 - 5 joins in 60 seconds will get them kicked
flood-ctcp 3:60 - 3 ctcp's in 60 seconds will get them kicked
}


The next entries are settings for the channel, telling the bot what to enforce and do. You need to change the setting #tester to the channel it will actually sit on. For more information, see the eggdrop.conf.dist on what each set does.

channel set #tester +autoop +autovoice +protectops -bitch -revenge
channel set #tester +userbans +statuslog +enforcebans +dynamicbans
channel set #tester +greet -stopnethack +shared +cycle

NOTE: You can duplicated the above entry for every channel you want the bot to sit in.

The next line to change is the:
set nick "SLIMJIMS"
Change this line to the nick you want the bot to use. Hint : Check IRC first to ensure its free, and stay within the requirements of your ircd server. DO NOT use funky characters in it.

set altnick " "
This is the alternate nick it will use should the one above be taken already.

set realname " "
Displayed when someone does a whois on the bot.

The next section that need changing is the SERVER LINES.

You will need to check the SATEXAS website for the current authorized servers (In the eggdrop section). The following lines tells the bot what servers to use. You can have as many as you want, as long as they are authorized by the SATEXAS staff. You will need to comment out, or delete, the existing servers in the config file.

set servers {
irc.efnet.net
irc2.efnet.net
}

If you want your file system to work, you need to set these to the full path of the filesystem area. If you are unsure of what the path is, type "pwd" at the SATEXAS unix prompt. This will display the full path of your current location. Both lines should end in /filesys and filesys/incoming respectively.

set files-path "/usr/home/efnet/username/Bot/filesys"

set incoming-path "/usr/home/efnet/username/Bot/filesys/incoming"

Now since you have made it this far find the line that says:
die "Please edit your egg.config file, like we said."
Remove this line [ctrl k]!

At the very bottom of the config file is where you will load up the tcl's (Helper scripts for the bot). The default one is alltools.tcl.

The standard format is:
source scripts/whatever.tcl

You need to have the tcl in the scripts directory, otherwise the bot will not find it and will not start. There are many scripts available from different sources. You can run any kind you like EXCEPT takeover or war scripts (Or anything else against SATEXAS rules). If you are caught with these your account will be locked IMMEDIATELY. If you are unsure ASK or DON'T USE IT. Ignorance is NOT an excuse tolerated on SATEXAS.

FINISHED! Now we can save our file: [ctrl x] [y] [enter]


^ 5. STEP THREE : Starting the bot for the first time.

To start the bot at the shell prompt from inside the Bot directory you will type "bot -m". The -m tells the bot this is the first time and to start in creation mode. You only need to type this the first time you start it.

Now you need to go on IRC and introduced yourself to the bot. Go to the net (efnet,undernet etc.) that you have the bot on and enter the channel it's suppost to be in. You may need to wait, depending on the network and lag. If the bot doesen't show up in 5 minutes or more, you need to check some things we will talk about further down this document.

Once the bot shows up, just /msg hello. This will make you the first owner/master of the bot. Follow the instructions. Once you have established a dcc chat with it type .save to save your information to the user list. If you are really new type .help and start checking out the bot help system.


^ 6. Checking for Errors : The bot won't come up.

If your bot does not show up there are a few things to do to see if its working or not.

1. Process Checking: At the shell prompt type "ps x". This will bring up a list of processes you have running. If one of them says something similar to :

PID TT STAT TIME COMMAND
302 p1- S 1:04.37 bot

Then the bot is running and it is either having trouble gettting on a server or you have not configured it correctly. There are two options we have to check to see what's going on. The first is to telnet to the bot.

2. Telnet: At the shell prompt type "telnet satexas.com xxxx" (Where xxxx is the port number of the bot we told it to listen to in the config file). Please remember if it's on Server #2 (Alamo) you will need to type alamo.satexas.com instead of just satexas.com.

If the bot is running you should be greated with a welcome banner and login prompt. You can type "NEW" here if you want to set yoruself up this way. If the bot doesn't respond to the telnet go to the next steps.

Kill the bot by typing: kill -9 [pid]
(Where pid is the number that the ps x displayed. In the above example its '302'; So you would type "kill -9 302". Do a [ps x] to ensure the bot isn't running now that you've killed it.)

Once its dead we will restart it but this time we will use some different options. Start the bot with bot -mn. This will bring up the bot - but will display for you everthing that is going on. If it looks like it's connecting, see what server it is on and go back to IRC and see if it's there. Connect to the same server it is connected to. If it's still not working, try and see why from the display you are looking at. In this mode you can type [ctrl c] to kill it since you are not running it in the background. If you cannot determine what is wrong, double-check your config file. Then email one of the staff for help. In the email please explain everything you have done to try and make the bot work.