
Background Information
Getting an Eggdrop
Compiling/Installing an eggdrop
Compiling Errors (Old TCL Version / No Installed TCL libraries)
Couldn't Grab Nearby Port...
Editing the config file
Running an eggdrop for the first time
Adding extra functionality ― Tcl Scripts
Crontab
Handlen (Changing the maximum length a nick can be on your eggdrop)
Applying a patch
DCC and Telnet problems
Timer Drift ― (!) timer drift -- spun N minutes
Lost or Forgotton Password
Creating a limbo eggdrop bot
Bot only starts with 'eggdrop -n' or 'eggdrop -nt'
Hostingwget http://www.geteggdrop.com wget ftp://ftp.eggheads.org/pub/eggdrop/source/1.6/eggdrop1.6.17.tar.gz*Use telnet or ssh to log into your shell (using a program like putty (http://www.putty.nl)
tar -zxvf eggdrop1.6.17.tar.gzThis will extract all the files to a directory called "eggdrop1.6.17"
cd eggdrop1.6.17 ./configureThen type the following commands when prompted:
make config (you may need to use gmake config on some systems e.g. freebsd) make (as above you may need to use gmake instead of make on some systems)Some of these steps may take a few minutes, especially on older systems.
make installThis will install the eggdrop to /home/user/eggdrop (assuming your account is located in /home/user). Typing "pwd" at any time will show you the full path to your current location i.e. /home/user/eggdrop1.6.17
make install DEST=<directory>e.g.
make install DEST=/home/user/bot1
make install DEST=~/bot1
cd ~/bot1
If you called your directory bot1.
cd ~/eggdrop
If you didn't specify a directory.
This next step requires you to read COMPLETELY through and make a config file to determine what your eggdrops name will be and what server it will be on.
You will have eggdrop.advanced.conf, eggdrop.complete.conf and eggdrop.simple.conf in your directory. Copies of these files are made available for you to download on this site.
If your not sure just go for eggdrop.simple.conf it really isn't that hard to edit, just make sure you read it through completely :-).
We will go into more detail regarding editing your config file later on.
Well now you have edited the .conf file you are ready to start your bot.
./eggdrop -m myfile.conf
Running your bot for the first time.
Windows Installation:
Make sure you have downloaded the windrop file to a place on your harddrive.
Run the executable file, by double clicking on it from windows explorer - this will inflate the archive to a directory of your choosing.
Edit you config file and rename it to eggdrop.conf
Place your dns server in resolv.conf (This may no longer be necessary on the latest windrop releases)
On Windows 95/98/ME: Open Start Menu, choose Run, type in "winipcfg", click on More Info >> and use IP address listed next to DNS Servers
On Windows NT/2000/XP: Open Start Menu, go to Accessories, choose Command Prompt, type "ipconfig /all" and use the first IP address listed next to DNS Servers
Open a dos prompt, move to the directory and type "eggdrop -m"
Running your bot for the first time.
Compiling Errors
One of the errors you might run into when trying to compile your bot could be with regards
to the version of Tcl libraries you have loaded or the lack of such libraries.
Your Tcl version is much too old for Eggdrop to use. You should download and compile a more recent version.
or
There is no Tcl installed.
If you are sure that your tcl version is new enough to run the eggdrop then try compiling
with the options below specifying the location of the tcl files.
If you are unfortunate enough not to have any tcl installed you can always
download the latest tcl (Tcl 8.4.9 at the time of writing) and install it to the /tmp
directory for a short period to allow you to compile your eggdrop. The latest version
of tcl can be gotten from this ftp site.
Follow the steps in the README file to install the TCL.
Again with this method you will need to specify the paths to the relative files as below.
./configure --with-tclinc='<full path to tcl.h>' --with-tcllib='<full path to Tcl library>'e.g.
./configure --with-tclinc=/usr/include/tcl.h --with-tcllib=/usr/lib/libtcl.so
Couldn't Grab Nearby Port...listen 3333 allTry to choose a port number between 1024 and 65535 that you think noone else might use. Any random number in this range will do really, although try not to use the default value of 3333.
set username "eggie"This line is for information purposes only.
set admin "Gh0st <email: nospam@nomail.com>"Important - Designates permanent owner in the bots userfile, set to the nick you will identify to the bot with.
set owner "Gh0st"The IRC network the bot will be on. Again this is for information purposes only, this information will be displayed when queried on a botnet.
set network "Irc.Dal.Net"The following lines are used to designate what files you want the bot to store relavent information about users, channels it is on and notes. I would suggest naming them after your bot to keep things tidy.
set userfile "botname.user"
set chanfile "botname.chan"
set notefile "botname.notes"This sets what port the bot will listen on when you telnet to it and/or want to connect other bots with. I would always suggest changing it from the default 3333 setting. The value for this can be anywhere in the range of 1024 to 65535. Note that if you leave it at default and that port is already in use the bot will simply choose the next available free port.
listen 8788 allThe lines below will set what nick the bot uses and the name displayed in whois.
set nick "Egggbot"
set altnick "Egggbot_"
set realname "want some cookies?"The next imortant section is to add a channel that the bot will always join. Before you do that though I would make sure all the following modules are loaded.
loadmodule dns
loadmodule channels
loadmodule server
loadmodule ctcp
loadmodule irc
loadmodule notes
loadmodule console
loadmodule uptime
loadmodule irc
All of the above modules should be loaded by default so nothing to change here. Although without server, irc, channels, the bot
will not join an IRC server.
loadmodule blowfishThe blowfish module is the encryption system that the eggdrop will use to store passwords and such. You will need an encryption module to run with your eggdrop, without one your eggdrop will not start. This line will normally be commented out so you will only need to remove the hash #.
loadmodule seenThe seen module is also commented out as default. This module is very basic and will only identify users that match the bots userfile. A better option to use the Bseen module from http://nasadude.dnsalias.org/choice.shtml
channel add #mainchan {
chanmode "+nt-likm"
- channel modes to enforceidle-kick 0- should it kick idle users, set to 1 to turn it on, 0 to disable.
stopnethack-mode 0- stop the server from opping people when a netsplit rejoins, 0 off, 6 most stringent.
revenge-mode 1- should it take revenge on people who kick the bot, options 0 to 3
aop-delay 5:30- how long should the bot wait before opping a user in seconds - 0 is not wait, 5:30 is a random time between 5 and 30 seconds.
flood-chan 10:60- what constitutes a flood (example shows 10 lines of text in 60 seconds constitutes a flood)
flood-deop 5:10- deop flood setting
flood-kick 5:10- how many kicks constitute a flood
flood-join 5:60- number of joins from a single host.
flood-ctcp 5:60- ctcp flooding.
flood-nick 5:60- nick change flooding.
}Additional options that can be set on a channel:
channel set #mainchan -bitch -enforcebans -greet -revenge -cycle -protectfriends +seenThe follwoing are server settings telling your bot what server to join and what ports to use
set default-port 6668
set servers {
arcor.dal.net:6667
irc.dal.net:6668
}
Well if you have edited those few settings that have been described here you should be able to run the bot without any
trouble. One final note though, remove any lines in the config you choose that begin with die. These lines are
there to encourage you to read as much as the config file as possible and the bot will not start without these lines
removed.source scripts/somescript.tclMost scripts that you download will either be zipped (.zip) or in a tarball archive (.tar.gz, .tgz, .gz). You can uncompress these on your shell, or use your regular uncompressing utility on windows (e.g. winzip, winrar) and upload the file once uncompressed.
unzip filename.tar.gz & .tgz
tar -zxvf filename.gz
gunzip filename.tar
tar -xvf filename
#! /path/to/eggdropSetting up crontab using autobotchk
./autobotchk /home/user/bot1/eggdrop.conf -noemail -10This should set up a crontab to check every 5 minutes if your bot is running and will not send you an email every time it restarts your bot.
pico botchkEdit the 4 lines it tells you to.
0,10,20,30,40,50 * * * * /home/mydir/botchkor if you don't want to get emails.
0,10,20,30,40,50 * * * * /home/mydir/botchk >/dev/null 2>&1Once you have saved one of the above lines in a file you need to type:
crontab New_FilenameTo list existing crontabs type.
crontab -lIn the new file you created for the crontab you will need 1 line, as above for each bot you have running on tthat shell and want to be able to have the crontab checking.
#define HANDLEN 9 /* valid values 9->NICKMAX */All you need to do here is change the 9 to a 32 (I think that 99% of networks won't go beyond this nick length) and save the file. e.g.
#define HANDLEN 32 /* valid values 9->NICKMAX */Once the line has been changed as above you will need to ./configure (or reconfigure the bot if you have already done this) and follow through with the usual prompts make etc... (./configure, make config, make, make install). You may have to run a 'make clean' prior to the make if you have ran the make process previously.
/home/account/eggdrop1.6.17Once here you will need to type the following command:
patch -p1 < ../path.to.the/patchonce the above is done you will need to type the following to ensure that the patch did actually apply correctly.
find . -name "*.rej" -printIf this returns a list of files with extentions ending in .rej then the patch did not apply correctly. If this is the case then the patch might not of been intended for your version of eggdrop. Check your version of eggdrop with the version that the patch was created for and download an updated patch if necessary.
/ctcp botnick chat /dcc chat botnick telnet IP/Address portIf you are dcc chatting the bot for the first time make sure you have said hello to it and set a password. You can always tell if you have been added to the bots userlist by opening the user file in a text editor and checking to see if you exist. There will be a line similar to "--PASS xon71l7991f5" under your nick if you have set a password.
/msg botname ident YourPassword HandleIf you do not get any responce doing this you will need to telnet the bot and see if that gives you an indication as to why you can't dcc it.
telnet host porte.g.
telnet 158.197.1.5 3334Make sure you have got the correct host/ip and port information (from your config).
set reserved-portrange 2010:2020Once your ports are forwarded try the commands above again to try and access the bots partyline.
./eggdrop -nt filename.confThe nickname used for the partyline in this instance will be HQ. From this point of view you can monitor the bots responces to your attempts to dcc and/or telnet to it.
//raw privmsg $me : $+ $chr(1) $+ dcc chat chat $longip(BotsIP) Port $+ $chr(1) e.g. //raw privmsg $me : $+ $chr(1) $+ dcc chat chat $longip(198.197.5.6) 3333 $+ $chr(1)or
//raw privmsg BotNick : $+ $chr(1) $+ CHAT chat $longip(BotsIP) Port $+ $chr(1) e.g. //raw privmsg mregg : $+ $chr(1) $+ CHAT chat $longip(198.197.5.6) 3333 $+ $chr(1)I am sure other IRC clients can also facilitate similar commands to open up a telnet connection in their respective DCC dialog.
When this happens you will see a message while you are on dcc chat like the folowing:
(!) timer drift -- spun N minutes (!) timer drift -- spun 5 minutesThis means that your bot was unable to do anything for the last x minutes for some reason. This could be a result of a tcl script you have loaded that is running commands that the bot is waiting on a responce before continuing. Other causes can include a server with a high load and is extremely busy, thus not allowing the eggdrop to do its usual maintenance checks every few minutes.
Make sure you are typing the password correctly and using the correct handle... most eggdrops as default will only recognise the 1st 9 letters of your nickname. Also note the password is case sensitive so Password is different to PASSWORD, which is different to password.
If your bot no longer recognises your password, you can either remove the .user file from your shell and restart the bot in user creation mode (./eggdrop -m eggdrop.conf)
The second option available to you is to open up the userfile (somefile.user) and look for a line with your nickname in it. underneath your nickname you will see a line that will be similar to the following:
--PASS +2/SSy/rTPfU/
Before proceeding note that your eggdrop must not be running when you modify the .user file or your changes are likely to get over written.
This is your password in its encrypted form. You need to remove this line and save the file. This will allow you to message your bot with a new password once it is restarted and reconnects to an IRC server.
/msg BotNick pass <Password>
./eggdrop -n>/dev/null&Just to quickly explain what this command does.
Back to the top
| Home, Tcl Tutorial, Tcl/Tk Installation, Modules, Tcl Scripts, Misc Downloads, Bot Commands, |
| Help/FAQ, Unix Commands, Message Commands, Shell Info/Reviews, About, Contact, Links. Nano & Pico. |
| Bnc's, Config Generator, OnJoin/Greet Generator, Identification Generator, Botnet creation & userfile sharing |
|
IPV6,
Vi Editor,
Sitemap,
Knowledgebase
. Select your language: ![]() |
|
|
|
Copyright © 2008
egginfo.org - All Rights Reserved.
|