+# Remember people who deop/kick/ban the bot, valid ops, or friends
+# and punish them? Users with the +f flag are exempt from revenge.
+#
+# revengebot
+# This is similar to to the 'revenge' option, but it only triggers
+# if a bot gets deopped, kicked or banned.
+#
+# autovoice
+# Voice users with the +v flag when they join the channel?
+#
+# secret
+# Prevent this channel from being listed on the botnet?
+#
+# shared
+# Share channel-related user info for this channel?
+#
+# cycle
+# Cycle the channel when it has no ops?
+#
+# dontkickops
+# Do you want the bot not to be able to kick users who have the +o
+# flag, letting them kick-flood for instance to protect the channel
+# against clone attacks.
+#
+# inactive
+# This prevents the bot from joining the channel (or makes it leave
+# the channel if it is already there). It can be useful to make the
+# bot leave a channel without losing its settings, channel-specific
+# user flags, channel bans, and without affecting sharing.
+#
+# seen
+# Respond to seen requests in the channel? The seen module must be
+# loaded for this to work.
+#
+# nodesynch
+# Allow non-ops to perform channel modes? This can stop the bot from
+# fighting with services such as ChanServ, or from kicking IRCops when
+# setting channel modes without having ops.
+#
+# static
+# Allow only permanent owners to remove the channel?
+
+# To add a channel to eggdrop, please enter the bot's partyline and type
+# .+chan #channel. Check also .help chanset and .help chaninfo.
+# You can still add a channel here and it will be saved if you have a
+# chanfile. We recommend you to use the partyline though.
+#
+#channel add #lamest
+
+
+#### SERVER MODULE ####
+
+# This module provides the core server support. You have to load this
+# if you want your bot to come on IRC. Not loading this is equivalent
+# to the old NO_IRC define.
+loadmodule server
+
+# Control certificate verification for irc servers. For a description of the
+# possible values, look at the SSL SETTINGS section above.
+#set ssl-verify-server 0
+
+# This is a Tcl script to be run immediately after connecting to a server.
+bind evnt - init-server evnt:init_server
+
+proc evnt:init_server {type} {
+ global botnick
+ putquick "MODE $botnick +i-ws"
+}
+
+# Set the default port which should be used if none is specified with
+# '.jump' or in 'set servers'.
+set default-port 6667
+
+# Number of seconds to wait between transmitting queued lines to the server.
+# Lower this value at your own risk. ircd is known to start flood control
+# at 512 bytes/2 seconds.
+set msg-rate 2
+
+# This setting makes the bot try to get his original nickname back if its
+# primary nickname is already in use.
+set keep-nick 1
+
+
+# This setting makes the bot squelch the error message when rejecting a DCC
+# CHAT, SEND or message command. Normally, Eggdrop notifies the user that the
+# command has been rejected because they don't have access. Note that sometimes
+# IRC server operators detect bots that way.
+set quiet-reject 1
+
+# If you want your bot to answer lower case ctcp requests (non rfc-
+# compliant), set this setting to 1. mIRC will do this, most other
+# clients will not.
+set lowercase-ctcp 0
+
+# Set how many ctcps should be answered at once.
+set answer-ctcp 3
+
+# Set here how many msgs in how many seconds from one host constitutes
+# a flood. If you set this to 0:0, msg flood protection will be disabled.
+set flood-msg 5:60
+
+# Set here how many ctcps in how many seconds from one host constitutes
+# a flood. If you set this to 0:0, ctcp flood protection will be disabled.
+set flood-ctcp 3:60
+
+# This setting defines how long Eggdrop should wait before moving from one
+# server to another on disconnect. If you set 0 here, Eggdrop will not wait
+# at all and will connect instantly. Setting this too low could result in
+# your bot being K:Lined.
+set server-cycle-wait 60
+
+# Set here how long Eggdrop should wait for a response when connecting to a
+# server before giving up and moving on to next server.
+set server-timeout 60
+
+# Set this to 1 if Eggdrop should check for stoned servers? (where the
+# server connection has died, but Eggdrop hasn't been notified yet).
+set check-stoned 1
+
+# If you want your bot to exit the server if it receives an ERROR message,
+# set this to 1.
+set serverror-quit 1
+
+# Set here the maximum number of lines to queue to the server. If you're
+# going to dump large chunks of text to people over IRC, you will probably
+# want to raise this. 300 is fine for most people though.
+set max-queue-msg 300
+
+# If you want Eggdrop to trigger binds for ignored users, set this to 1.
+set trigger-on-ignore 0
+
+# This setting configures PUBM and MSGM binds to be exclusive of PUB and MSG
+# binds. This means if a MSGM bind with the mask "*help*" exists and is
+# triggered, any MSG bindings with "help" in their mask will not be
+# triggered. Don't enable this unless you know what you are doing!
+set exclusive-binds 0
+
+# Allow identical messages in the mode queue?
+set double-mode 1
+
+# Allow identical messages in the server queue?
+set double-server 1
+
+# Allow identical messages in the help queue?
+set double-help 1
+
+# This optimizes the kick queue. It also traces nick changes and parts in
+# the channel and changes the kick queue accordingly. There are three
+# different options for this setting:
+# 0 = Turn it off.
+# 1 = Optimize the kick queue by summarizing kicks.
+# 2 = Trace nick changes and parts on the channel and change the queue
+# accordingly. For example, bot will not try to kick users who have
+# already parted the channel.
+# ATTENTION: Setting 2 is very CPU intensive.
+set optimize-kicks 1
+
+# If your network supports more recipients per command then 1, you can
+# change this behavior here. Set this to the number of recipients per
+# command, or set this to 0 for unlimited.
+set stack-limit 4
+
+### SERVER MODULE - OTHER NETWORKS (net-type 5) ###
+
+# This settings defines how umode +r is understood by Eggdrop. Some networks
+# use +r to indicate a restricted connection. If this is your case, and you
+# want your bot to leave restricted servers and jump to the next server on its
+# list, then set it to 1.
+#set check-mode-r 1
+
+# This setting allows you to specify the maximum nick-length supported by your
+# network. The default setting is 9. The maximum supported length by Eggdrop
+# is 32.
+if {$network == "freenode"} {
+ set nick-len 16
+}
+
+#### CTCP MODULE ####
+
+# This module provides the normal ctcp replies that you'd expect.
+# Without it loaded, CTCP CHAT will not work. The server module
+# is required for this module to function.
+loadmodule ctcp
+
+# Set here how the ctcp module should answer ctcps. There are 3 possible
+# operating modes:
+# 0: Normal behavior is used.
+# 1: The bot ignores all ctcps, except for CHAT and PING requests
+# by users with the +o flag.
+# 2: Normal behavior is used, however the bot will not answer more
+# than X ctcps in Y seconds (defined by 'set flood-ctcp').
+set ctcp-mode 0
+
+# There are also several variables to help make your bot less noticeable.
+# They are: ctcp-version, ctcp-finger, and ctcp-userinfo. You can use set to set
+# them to values you'd like.
+
+
+#### IRC MODULE ####
+
+# This module provides basic IRC support for your bot. You have to
+# load this if you want your bot to come on IRC. The server and channels
+# modules must be loaded for this module to function.
+loadmodule irc
+
+# Set this to 1 if you want to bounce all server bans.
+set bounce-bans 0
+
+# Set this to 1 if you want to bounce all server exemptions (+e modes).
+# This is disabled if use-exempts is disabled.
+set bounce-exempts 0
+
+# Set this to 1 if you want to bounce all server invitations (+I modes).
+# This is disabled if use-invites is disabled.
+set bounce-invites 0
+
+# Set this to 1 if you want to bounce all server modes.
+set bounce-modes 0
+
+# Set here the maximum number of bans you want the bot to set on a channel.
+# Eggdrop will not place any more bans if this limit is reached. Undernet
+# currently allows 45 bans, IRCnet allows 64, EFnet allows 100, and DALnet
+# allows 100.
+set max-bans 30
+
+# Set here the maximum number of exempts you want Eggdrop to set on a channel.
+# Eggdrop will not place any more exempts if this limit is reached.
+set max-exempts 20
+
+# Set here the maximum number of invites you want Eggdrop to set on a channel.
+# Eggdrop will not place any more invites if this limit is reached.
+set max-invites 20
+
+# There is a global limit for +b/+e/+I modes. This limit should be set to
+# the same value as max-bans for networks that do not support +e/+I.
+set max-modes 30
+
+# The following settings should be left commented unless the default values
+# are being overridden. By default, exempts and invites are on for EFnet and
+# IRCnet, but off for all other large networks. This behavior can be modified
+# with the following 2 flags. If your network doesn't support +e/+I modes then
+# you will be unable to use these features.
+#
+# Do you want to enable exempts (+e modes)?
+#set use-exempts 0
+
+# Do you want to enable invites (+I modes)?
+#set use-invites 0
+
+# If you want people to be able to add themselves to the bot's userlist
+# with the default userflags (defined above in the config file) via the
+# 'hello' msg command, set this to 1.
+set learn-users 0
+
+# Set here the time (in seconds) to wait for someone to return from a netsplit
+# (i.e. wasop will expire afterwards). Set this to 1500 on IRCnet since its
+# nick delay stops after 30 minutes.
+set wait-split 600
+
+# Set here the time (in seconds) that someone must have been off-channel
+# before re-displaying their info line.
+set wait-info 180
+
+# Set this to the maximum number of bytes to send in the arguments
+# of modes sent to the server. Most servers default this to 200.
+set mode-buf-length 200
+
+# Many IRCops find bots by seeing if they reply to 'hello' in a msg.
+# You can change this to another word by un-commenting the following
+# two lines and changing "myword" to the word wish to use instead of
+# 'hello'. It must be a single word.
+#unbind msg - hello *msg:hello
+#bind msg - myword *msg:hello
+
+# Many takeover attempts occur due to lame users blindly /msg ident'ing to
+# the bot and attempting to guess passwords. We now unbind this command by
+# default to discourage them. You can enable these commands by commenting the
+# following two lines.
+unbind msg - ident *msg:ident
+unbind msg - addhost *msg:addhost
+
+# Some IRC servers are using some non-standard op-like channel prefixes/modes.
+# Define them here so the bot can recognize them. Just "@" should be fine for
+# most networks. Un-comment the second line for some UnrealIRCds.
+
+set opchars "@"
+#set opchars "@&~"
+
+# If you are so lame you want the bot to display peoples info lines, even
+# when you are too lazy to add their chanrecs to a channel, set this to 1.
+# *NOTE* This means *every* user with an info line will have their info
+# line displayed on EVERY channel they join (provided they have been gone
+# longer than wait-info).
+set no-chanrec-info 0
+
+### IRC MODULE - IRCnet SPECIFIC FEATURES (net-type 1) ###
+
+# Attention: Use these settings *only* if you set 'net-type' to 1!
+
+# At the moment, the current IRCnet IRCd version (2.10) doesn't support the
+# mixing of b, o and v modes with e and I modes. This might be changed in the
+# future, so use 1 at the moment for this setting.
+set prevent-mixing 1
+
+### IRC MODULE - OTHER NETWORKS (net-type 5) ###
+
+# Attention: Use these settings *only* if you set 'net-type' to 5!
+
+# If your network supports more users per kick command then 1, you can
+# change this behavior here. Set this to the number of users to kick at
+# once, or set this to 0 for all at once.
+#set kick-method 1
+
+# Some networks allow you to stack lots of channel modes into one line.
+# They're all guaranteed to support at least 3, so that's the default.
+# If you know your network supports more, you may want to adjust this.
+# This setting is limited to 6, although if you want to use a higher value,
+# you can modify this by changing the value of MODES_PER_LINE_MAX in
+# src/chan.h and recompiling the bot.
+if {$network == "freenode"} {
+ set modes-per-line 4
+}
+
+# Some networks don't include the +l limit and +k or -k key modes
+# in the modes-per-line (see above) limitation. Set include-lk to 0 for
+# these networks.
+#set include-lk 1
+
+# Set this to 1 if your network uses IRCu2.10.01 specific /who requests.
+# Eggdrop can, therefore, ask only for exactly what's needed.
+#set use-354 0
+
+# If your network doesn't use rfc 1459 compliant string matching routines,
+# set this to 0.
+#set rfc-compliant 1
+
+
+#### TRANSFER MODULE ####
+
+# The transfer module provides DCC SEND/GET support and userfile transfer
+# support for userfile sharing. Un-comment the next line to load it if you
+# need this functionality.
+#loadmodule transfer
+
+# Set here the maximum number of simultaneous downloads to allow for
+# each user.
+set max-dloads 3
+
+# Set here the block size for dcc transfers. ircII uses 512 bytes,
+# but admits that it may be too small. 1024 is standard these days.
+# 0 is turbo-dcc (recommended).
+set dcc-block 0
+
+# Enable this setting if you want to copy files to a temporary location before
+# sending them. This might be useful for file stability, but if your
+# directories are NFS mounted, it's a pain. Setting this to 1 is not advised
+# for big files or if you're low on disk space.
+set copy-to-tmp 1
+
+# Set here the time (in seconds) to wait before an inactive transfer times out.
+set xfer-timeout 30
+
+
+#### SHARE MODULE ####
+
+# This module provides userfile sharing support between two directly
+# linked bots. The transfer and channels modules are required for this
+# module to correctly function. Un-comment the following line to load
+# the share module.
+#loadmodule share
+
+# Settings in this section must be un-commented before setting.
+
+# When two bots get disconnected, this setting allows them to create a
+# resync buffer which saves all changes done to the userfile during
+# the disconnect. When they reconnect, they will not have to transfer
+# the complete user file, but, instead, just send the resync buffer.
+#
+# NOTE: This has been known to cause loss of channel flags and other
+# problems. Using this setting is not recommended.
+#set allow-resync 0
+
+# This setting specifies how long to hold another bots resync data
+# before flushing it.
+#set resync-time 900
+
+# When sharing user lists, DON'T ACCEPT global flag changes from other bots?
+# NOTE: The bot will still send changes made on the bot, it just won't accept
+# any global flag changes from other bots. This overrides the private-globals
+# setting (below).
+#set private-global 0
+
+# When sharing user lists, if private-global isn't set, which global flag
+# changes from other bots should be ignored?
+#set private-globals "mnot"
+
+# When sharing user lists, don't accept ANY userfile changes from other
+# bots? Paranoid people should use this feature on their hub bot. This
+# will force all userlist changes to be made via the hub.
+#set private-user 0
+
+# This setting makes the bot discard its own bot records in favor of
+# the ones sent by the hub.
+# NOTE: No passwords or botflags are shared, only ports and
+# address are added to sharing procedure. This only works with hubs that
+# are v1.5.1 or higher.
+#set override-bots 0
+
+
+#### COMPRESS MODULE ####
+
+# This module provides provides support for file compression. This allows the
+# bot to transfer compressed user files and therefore save a significant amount
+# of bandwidth. The share module must be loaded to load this module. Un-comment
+# the following line to the compress module.
+#loadmodule compress
+
+# Allow compressed sending of user files? The user files are compressed with
+# the compression level defined in `compress-level'.
+set share-compressed 1
+
+# This is the default compression level used. These levels are the same as
+# those used by GNU gzip.
+#set compress-level 9
+
+
+#### FILESYSTEM MODULE ####
+
+# This module provides an area within the bot where users can store and
+# manage files. With this module, the bot is usable as a file server. The
+# transfer module is required for this module to function. Un-comment
+# the following line to load the filesys module.
+#loadmodule filesys
+
+# Set here the 'root' directory for the file system.
+set files-path "filesys"
+
+# If you want to allow uploads, set this to the directory uploads
+# should be put into. Set this to "" if you don't want people to
+# upload files to your bot.
+set incoming-path "filesys/incoming"
+
+# If you don't want to have a central incoming directory, but instead
+# want uploads to go to the current directory that a user is in, set
+# this setting to 1.
+set upload-to-pwd 0
+
+# Eggdrop creates a '.filedb' file in each subdirectory of your file area
+# to keep track of its own file system information. If you can't do that (for
+# example, if the dcc path isn't owned by you, or you just don't want it to do
+# that) specify a path here where you'd like all of the database files to be
+# stored instead.
+set filedb-path ""
+
+# Set here the maximum number of people that can be in the file area at once.
+# Setting this to 0 makes it effectively infinite.
+set max-file-users 20
+
+# Set here the maximum allowable file size that will be received (in KB).
+# Setting this to 0 makes it effectively infinite.
+set max-filesize 1024
+
+
+#### NOTES MODULE ####
+
+# This module provides support for storing of notes for users from each other.
+# Note sending between currently online users is supported in the core, this is
+# only for storing the notes for later retrieval.
+loadmodule notes
+
+# Set here the filename where private notes between users are stored.
+set notefile "$username/notes"
+
+# Set here the maximum number of notes to allow to be stored for each user
+# (to prevent flooding).
+set max-notes 50
+
+# Set here how long (in days) to store notes before expiring them.
+set note-life 60
+
+# Set this to 1 if you want to allow users to specify a forwarding address
+# for forwarding notes to another account on another bot.
+set allow-fwd 0
+
+# Set this to 1 if you want the bot to let people know hourly if they have
+# any notes.
+set notify-users 0
+
+# Set this to 1 if you want the bot to let people know on join if they have
+# any notes.
+set notify-onjoin 1
+
+# This next line checks if eggdrop is being executed from the source directory
+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.} }
+
+#### CONSOLE MODULE ####
+
+# This module provides storage of console settings when you exit the
+# bot or type .store on the partyline.
+loadmodule console
+
+# Save users console settings automatically? Otherwise, they have
+# to use the .store command.
+set console-autosave 1
+
+# If a user doesn't have any console settings saved, which channel
+# do you want them automatically put on?
+set force-channel 0
+
+# Enable this setting if a user's global info line should be displayed
+# when they join a botnet channel.
+set info-party 0
+
+
+#### WOOBIE MODULE ####
+
+# This is for demonstrative purposes only. If you are looking for starting
+# point in writing modules, woobie is the right thing.
+#loadmodule woobie
+
+
+#### SEEN MODULE ####
+
+# This module provides very basic seen commands via msg, on channel or via dcc.
+# This module works only for users in the bot's userlist. If you are looking for
+# a better and more advanced seen module, try the gseen module by G'Quann. You
+# can find it at http://www.kreativrauschen.com/gseen.mod/.
+#loadmodule seen
+
+
+#### ASSOC MODULE ####
+
+# This module provides assoc support, i.e. naming channels on the botnet.
+# You can load it by un-commenting the following line.
+#loadmodule assoc
+
+
+#### UPTIME MODULE ####
+
+# This module reports uptime statistics to http://uptime.eggheads.org.
+# Go look and see what your uptime is! It takes about 9 hours to show up,
+# so if your bot isn't listed, try again later. The server module must be
+# loaded for this module to function.
+#
+# Information sent to the server includes the bot's uptime, botnet-nick,
+# server, version, and IP address. This information is stored in a temporary
+# logfile for debugging purposes only. The only publicly available information
+# will be the bot's botnet-nick, version and uptime. If you do not wish for this
+# information to be sent, comment out the following line.