Skip to content

Configure simple eggdrop.conf

Eggdrop has a very complex configuration file which can overwhelm new users. To make things simpler, we focus on just the most essential settings you must change.

Create a new file inside ~// called examplebot.conf:

set username "botusername"
set admin "username <email: username@example.com>"
set nick "botnick"
set altnick "botn?ck"
set realname "/msg botnick hello"
set network "Your Network"
set userfile "botusername.user"
set chanfile "botusername.chan"

Replace with your own settings. For network, use a short simple name instead of theactual server address. For example, the network name might be IRCNow instead of irc.ircnow.org.

set prefer-ipv6 1

We set prefer-ipv6 to 1, meaning eggdrop will attempt to use IPv6 wherever possible. Among other benefits, this will allow our eggdrop to have a unique vhost.

loadmodule server
set net-type "Other"
set default-port 6667
server add irc6.example.com +6697

Here, we configure the network we want to connect to. There are several network types: EFnet, IRCnet, Undernet, DALnet, Libera, freenode, QuakeNet, Rizon, Twitch, and Other. If you're not sure, choose Other.

You'll want to replace irc6.example.com +6697 with your actual server and port. It's best to use an IPv6-only server address. If you're using SSL, make sure to add a + plus sign. If you're using a plaintext port like port 6667, leave out the + plus sign.

WARNING: Don't confuse plaintext with SSL# If you're connecting to port 6667, do not put a + plus sign in front. If you're connecting to port +6697, do put a + sign in front.

Below, we set the vhosts assigned to us when we created the shell account:

set vhost4 "username.example.com"
set vhost6 "username.example.com"

You cannot pick any vhost you want; you must use the vhost given to you when you created the shell account. This is because your vhost must have forward and [reverse DNS entries configured in order to work correctly. You cannot pick any vhost you want; you must use the vhost given to you when you created the shell account. This is because your vhost must have forward and [reverse DNS entries configured in order to work correctly.

If you'd like to pick a different vhost, contact your sysadmin.

Finally, we just copy the rest of these lines unchanged into the conf file (Attach:eggdrop-simple.conf.txt):

bind evnt - init-server evnt:init_server
proc evnt:init_server {type} {
  global botnick
  putquick "MODE $botnick +i-ws"
}
if {[info exists net-type]} {
  switch -- ${net-type} {
    "EFnet" {
      source scripts/quotepong.tcl
    }
    "0" {
      source scripts/quotepong.tcl
    }
  }
}


set timezone "EST"
set offset "5"
set max-logs 20
set max-logsize 0
set quick-logs 0
set raw-log 0
logfile mco * "logs/eggdrop.log"
set log-time 1
set timestamp-format {[%25H:%25M:%25S]}
set keep-all-logs 0
set logfile-suffix ".%25d%25b%25Y"
set switch-logfiles-at 300
set quiet-save 0
set console "mkcoblxs"
set help-path "help/"
set text-path "text/"
set motd "text/motd"
set telnet-banner "text/banner"
set userfile-perm 0600
set remote-boots 2
set share-unlinks 1
set protect-telnet 0
set dcc-sanitycheck 0
set ident-timeout 5
set require-p 1
set open-telnets 0
set stealth-telnets 0
set stealth-prompt "\n\nNickname.\n"
set use-telnet-banner 0
set connect-timeout 15
set dcc-flood-thr 3
set telnet-flood 5:60
set paranoid-telnet-flood 1
set ssl-capath "/etc/ssl/"
set ignore-time 15
set hourly-updates 00
set notify-newusers "$owner"
set default-flags "hp"
set whois-fields "url birthday"
set must-be-owner 1
unbind dcc n simul *dcc:simul
set max-socks 100
set allow-dk-cmds 1
set dupwait-timeout 5
set cidr-support 0
set show-uname 1
set mod-path "modules/"
loadmodule pbkdf2
loadmodule blowfish
set blowfish-use-mode cbc
loadmodule dns
set dns-cache 86400
set dns-negcache 600
set dns-maxsends 4
set dns-retrydelay 3
loadmodule channels
set force-expire 0
set share-greet 0
set use-info 1
set allow-ps 0
set default-flood-chan 15:60
set default-flood-deop 3:10
set default-flood-kick 3:10
set default-flood-join 5:60
set default-flood-ctcp 3:60
set default-flood-nick 5:60
set default-aop-delay 5:30
set default-idle-kick 0
set default-chanmode "nt"
set default-stopnethack-mode 0
set default-revenge-mode 0
set default-ban-type 3
set default-ban-time 120
set default-exempt-time 60
set default-invite-time 60
set default-chanset {
        -autoop         -autovoice
        -bitch          +cycle
        +dontkickops    +dynamicbans
        +dynamicexempts +dynamicinvites
        -enforcebans    +greet
        -inactive       -nodesynch
        -protectfriends +protectops
        -revenge        -revengebot
        -secret         -seen
        +shared         -statuslog
        +userbans       +userexempts
        +userinvites    -protecthalfops
        -autohalfop     -static
}
set msg-rate 2
set keep-nick 1
set quiet-reject 1
set lowercase-ctcp 0
set answer-ctcp 3
set flood-msg 5:60
set flood-ctcp 3:60
set server-cycle-wait 60
set server-timeout 60
set check-stoned 1
set serverror-quit 1
set max-queue-msg 300
set trigger-on-ignore 0
set exclusive-binds 0
set double-mode 1
set double-server 1
set double-help 1
set optimize-kicks 1
set stack-limit 4
loadmodule ctcp
set ctcp-mode 0
loadmodule irc
set bounce-bans 0
set bounce-exempts 0
set bounce-invites 0
set bounce-modes 0
set learn-users 0
set wait-split 600
set wait-info 180
set mode-buf-length 200
unbind msg - ident *msg:ident
unbind msg - addhost *msg:addhost
set opchars "@"
set no-chanrec-info 0
set prevent-mixing 1
set max-dloads 3
set dcc-block 0
set copy-to-tmp 1
set xfer-timeout 30
set share-compressed 1
set files-path "/home/mydir/filesys"
set incoming-path "/home/mydir/filesys/incoming"
set upload-to-pwd 0
set filedb-path ""
set max-file-users 20
set max-filesize 1024
loadmodule notes
set notefile "LamestBot.notes"
set max-notes 50
set note-life 60
set allow-fwd 0
set notify-users 0
set notify-onjoin 1
if {[file exists aclocal.m4]} { die {You are attempting to run Eggdrop from the source directory. Please finish installing Eggdrop by running "make install" and run it from the install location.} }
loadmodule console
set console-autosave 1
set force-channel 0
set info-party 0
loadmodule uptime
source scripts/alltools.tcl
source scripts/action.fix.tcl
source scripts/dccwhois.tcl
source scripts/userinfo.tcl
loadhelp userinfo.help