/[cvs]/eggdrop1.8/eggdrop.conf
ViewVC logotype

Contents of /eggdrop1.8/eggdrop.conf

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.5 - (show annotations) (download)
Tue Oct 19 12:13:32 2010 UTC (8 years, 5 months ago) by pseudo
Branch: MAIN
Changes since 1.4: +110 -2 lines
Added full SSL support including Tcl commands.
Added support for certificate authentication.
Added support for botnet and partyline encryption using ssl.
Documented the new features and commands.
Fixed add_server() problems with IPv6 addresses in the server list.

1 #! /path/to/executable/eggdrop
2 # ^- This should contain a fully qualified path to your Eggdrop executable.
3 #
4 # $Id: eggdrop.conf,v 1.4 2010/09/27 19:38:11 pseudo Exp $
5 #
6 # This is a sample Eggdrop configuration file which includes all possible
7 # settings that can be used to configure your bot.
8 #
9 # The pound signs (#) that you see at the beginning of some lines mean that
10 # the remainder of that line is a comment, or just for your information. By
11 # adding or deleting pound signs, you can comment or uncomment a setting,
12 # respectively.
13 #
14 # Arguments for a command or setting may be inclosed in <>'s or []'s in the
15 # example/description. Arguments in <>'s are required, while [] means optional.
16 #
17 # More detailed descriptions of all these settings can be found in
18 # doc/settings/.
19
20
21
22 ##### BASIC SETTINGS #####
23
24 # This setting defines the username the bot uses on IRC. This setting has
25 # no effect if an ident daemon is running on your bot's machine.
26 set username "lamest"
27
28 # This setting defines which contact person should be shown in .status,
29 # /msg help, and other places. You really should include this information.
30 set admin "Lamer <email: lamer@lamest.lame.org>"
31
32 # This setting is used only for info to share with others on your botnet.
33 # Set this to the IRC network your bot is connected to.
34 set network "I.didn't.edit.my.config.file.net"
35
36 # This setting defines which timezone is your bot in. It's used for internal
37 # routines as well as for logfile timestamping and scripting purposes.
38 # The timezone string specifies the name of the timezone and must be three
39 # or more alphabetic characters. For example, Central European Time(UTC+1)
40 # should be "CET".
41 set timezone "EST"
42
43 # The offset setting specifies the time value to be added to the local
44 # time to get Coordinated Universal Time (UTC aka GMT). The offset is
45 # positive if the local timezone is west of the Prime Meridian and
46 # negative if it is east. The value (in hours) must be between -23 and
47 # 23. For example, if the timezone is UTC+1, the offset is -1.
48 set offset "5"
49
50 # If you don't want to use the timezone setting for scripting purposes only,
51 # but instead everywhere possible, un-comment the following line.
52 #set env(TZ) "$timezone$offset"
53
54 # If you're using virtual hosting (your machine has more than 1 IP), you
55 # may want to specify the particular IP to bind to. You can specify either
56 # by hostname or by IP. Note that this is not used for listening. Use the
57 # 'listen-addr' variable to specify the listening address.
58 #set vhost4 "virtual.host.com"
59 #set vhost4 "99.99.0.0"
60
61 # IPv6 vhost to bind to for outgoing IPv6 connections. You can set it
62 # to any valid IPv6 address or hostname, resolving to an IPv6 address.
63 # Note that this is not used for listening. Use the 'listen-addr'
64 # variable to specify the listening address.
65 #set vhost6 "my.ipv6.host.com"
66 #set vhost6 "2001:db8::c001:b07"
67
68 # IPv4/IPv6 address (or hostname) to bind for listening. If you don't set
69 # this variable, eggdrop will listen on all available IPv4 or IPv6 interfaces,
70 # depending on the 'prefer-ipv6' variable (see below).
71 # Note that eggdrop will accept IPv4 connections with IPv6 sockets too.
72 #set listen-addr "99.99.0.0"
73 #set listen-addr "2001:db8:618:5c0:263::"
74 #set listen-addr "virtual.host.com"
75
76 # Prefer IPv6 over IPv4 for connections and dns resolution?
77 # If the preferred protocol family is not supported, the other one
78 # will be tried.
79 set prefer-ipv6 0
80
81 # If you want to have your Eggdrop messages displayed in a language other
82 # than English, change this setting to match your preference. An alternative
83 # would be to set the environment variable EGG_LANG to that value.
84 #
85 # Languages included with Eggdrop: Danish, English, French, Finnish, German.
86 #addlang "english"
87
88
89 ##### LOG FILES #####
90
91 # Eggdrop is capable of logging various things, from channel chatter to
92 # commands people use on the bot and file transfers. Logfiles are normally
93 # kept for 24 hours. Afterwards, they will be renamed to "(logfile).yesterday".
94 # After 48 hours, they will be overwritten by the logfile of the next day.
95 #
96 # Events are logged by certain categories. This way, you can specify
97 # exactly what kind of events you want sent to various logfiles.
98 #
99 # Logfile flags:
100 # b - information about bot linking and userfile sharing
101 # c - commands
102 # d - misc debug information
103 # h - raw share traffic
104 # j - joins, parts, quits, and netsplits on the channel
105 # k - kicks, bans, and mode changes on the channel
106 # m - private msgs, notices and ctcps to the bot
107 # o - misc info, errors, etc (IMPORTANT STUFF)
108 # p - public text on the channel
109 # r - raw incoming server traffic
110 # s - server connects, disconnects, and notices
111 # t - raw botnet traffic
112 # v - raw outgoing server traffic
113 # w - wallops (make sure the bot sets +w in init-server)
114 # x - file transfers and file-area commands
115 #
116 # Note that modes d, h, r, t, and v can fill disk quotas quickly. There are
117 # also eight user-defined levels (1-8) which can be used by Tcl scripts.
118 #
119 # Each logfile belongs to a certain channel. Events of type 'k', 'j', and 'p'
120 # are logged to whatever channel they happened on. Most other events are
121 # currently logged to every channel. You can make a logfile belong to all
122 # channels by assigning it to channel "*".
123
124 # This is the maximum number of logfiles allowed. This setting can be
125 # increased; however, don't decrease it.
126 set max-logs 5
127
128 # This is the maximum size of your logfiles. Set it to 0 to disable.
129 # This value is in kilobytes, so '550' would mean cycle logs when it
130 # reaches the size of 550 kilobytes. Note that this only works if you
131 # have keep-all-logs 0 (OFF).
132 set max-logsize 0
133
134 # This could be good if you have had problem with the logfile filling
135 # your quota/hard disk or if you log +p and publish it to the web and
136 # need more up-to-date info. Note that this setting might increase the
137 # CPU usage of your bot (on the other hand it will decrease your mem usage).
138 set quick-logs 0
139
140 # This setting allows you the logging of raw incoming server traffic via
141 # console/log flag 'r', raw outgoing server traffic via console/log mode 'v',
142 # raw botnet traffic via console/log mode 't', and raw share traffic via
143 # console/log mode 'h'. These flags can create a large security hole,
144 # allowing people to see user passwords. This is now restricted to +n users
145 # only. Please choose your owners with care.
146 set raw-log 0
147
148 # This creates a logfile named eggdrop.log containing private msgs/ctcps,
149 # commands, errors, and misc. info from any channel.
150 logfile mco * "logs/eggdrop.log"
151
152 # This creates a logfile named lamest.log containing joins, parts,
153 # netsplits, kicks, bans, mode changes, and public chat on the
154 # channel #lamest.
155 #logfile jpk #lamest "logs/lamest.log"
156
157 # Use this feature to timestamp entries in the log file.
158 set log-time 1
159
160 # Set the following to the timestamp for the logfile entries. Popular times
161 # might be "[%H:%M]" (hour, min), or "[%H:%M:%S]" (hour, min, sec).
162 # Read `man strftime' for more formatting options. Keep it below 32 chars.
163 set timestamp-format {[%H:%M:%S]}
164
165 # If you want to keep your logfiles forever, turn this setting on. All
166 # logfiles will get suffix ".[day, 2 digits][month, 3 letters][year, 4 digits]".
167 # Note that your quota/hard-disk might be filled by this, so check your
168 # logfiles often and download them.
169 set keep-all-logs 0
170
171 # If keep-all-logs is 1, this setting will define the suffix of the logfiles.
172 # The default will result in a suffix like "04May2000". "%Y%m%d" will produce
173 # the often used yyyymmdd format. Read the strftime manpages for more options.
174 # NOTE: On systems which don't support strftime, the default format will
175 # be used _always_.
176 set logfile-suffix ".%d%b%Y"
177
178 # You can specify when Eggdrop should switch logfiles and start fresh. You
179 # must use military time for this setting. 300 is the default, and describes
180 # 03:00 (AM).
181 set switch-logfiles-at 300
182
183 # "Writing user file..." and "Writing channel file..." messages won't be logged
184 # anymore if this option is enabled. If you set it to 2, the "Backing up user
185 # file..." and "Backing up channel file..." messages will also not be logged.
186 # In addition to this, you can disable the "Switching logfiles..." and the new
187 # date message at midnight, by setting this to 3.
188 set quiet-save 0
189
190
191 ##### CONSOLE #####
192
193 # This is the default console mode. It uses the same event flags as the log
194 # files do. The console channel is automatically set to your "primary" channel,
195 # which is set in the modules section of the config file. Masters can change
196 # their console channel and modes with the '.console' command.
197
198 set console "mkcobxs"
199
200
201 ##### FILES AND DIRECTORIES #####
202
203 # Specify here the filename your userfile should be saved as.
204 set userfile "LamestBot.user"
205
206 # Specify here the filename Eggdrop will save its pid to. If no pidfile is
207 # specified, pid.(botnet-nick) will be used.
208 #set pidfile "pid.LamestBot"
209
210 # If you want your userfile to be sorted upon saving, enable this setting.
211 # This causes the bot to use a bit more CPU when saving the userfile.
212 set sort-users 0
213
214 # Specify here where Eggdrop should look for help files. Don't modify this
215 # setting unless you know what you're doing!
216 set help-path "help/"
217
218 # Specify here where Eggdrop should look for text files. This is used for
219 # certain Tcl and DCC commands.
220 set text-path "text/"
221
222 # Set here a place to store temporary files.
223 set temp-path "/tmp"
224
225 # The MOTD (Message Of The day) is displayed when people dcc chat or telnet
226 # to the bot. Look at doc/TEXT-SUBSTITUTIONS for options.
227 set motd "text/motd"
228
229 # This banner will be displayed on telnet connections. Look at
230 # doc/TEXT-SUBSTITUTIONS for options.
231 set telnet-banner "text/banner"
232
233 # This specifies what permissions the user, channel, and notes files should
234 # be set to. The octal values are the same as for the chmod system command.
235 #
236 # To remind you:
237 #
238 # u g o u g o u g o
239 # 0600 rw------- 0400 r-------- 0200 -w------- u - user
240 # 0660 rw-rw---- 0440 r--r----- 0220 -w--w---- g - group
241 # 0666 rw-rw-rw- 0444 r--r--r-- 0222 -w--w--w- o - others
242 #
243 # Note that the default 0600 is the most secure one and should only be changed
244 # if you need your files for shell scripting or other external applications.
245 set userfile-perm 0600
246
247
248 ##### BOTNET/DCC/TELNET #####
249
250 # Settings in this section should be unimportant for you until you deal
251 # with botnets (multiple Eggdrops connected together to maximize efficiency).
252 # You should read doc/BOTNET before modifying these settings.
253
254 # If you want to use a different nickname on the botnet than you use on
255 # IRC (i.e. if you're on an un-trusted botnet), un-comment the next line
256 # and set it to the nick you would like to use.
257 #set botnet-nick "LlamaBot"
258
259 # This opens a telnet port by which you and other bots can interact with the
260 # Eggdrop by telneting in.
261 #
262 # There are more options for the listen command in doc/tcl-commands.doc. Note
263 # that if you are running more than one bot on the same machine, you will want
264 # to space the telnet ports at LEAST 5 apart, although 10 is even better.
265 #
266 # Valid ports are typically anything between 1025 and 65535 assuming the
267 # port is not already in use.
268 #
269 # If you would like the bot to listen for users and bots in separate ports,
270 # use the following format:
271 #
272 # listen 3333 bots
273 # listen 4444 users
274 #
275 # If you wish to use only one port, use this format:
276 #
277 # listen 3333 all
278 #
279 # You can setup a SSL port by prepending a plus sign to it:
280 #
281 # listen +5555 all
282 #
283 # You need to un-comment this line and change the port number in order to open
284 # the listen port. You should not keep this set to 3333.
285 #listen 3333 all
286
287 # This setting defines whether or not people can boot users on the Eggdrop
288 # from other bots in your botnet. Valid settings are:
289 # 0 - allow *no* outside boots
290 # 1 - allow boots from sharebots
291 # 2 - allow any boots
292 set remote-boots 2
293
294 # This setting prohibits remote bots from telling your Eggdrop to unlink from
295 # share bots.
296 set share-unlinks 1
297
298 # This setting will drop telnet connections not matching a known host.
299 set protect-telnet 0
300
301 # This setting will make the bot ignore DCC chat requests which appear to
302 # have bogus information on the grounds that the user may have been trying
303 # to make the bot connect to somewhere that will get it into trouble, or
304 # that the user has a broken client, in which case the connect wouldn't work
305 # anyway.
306 set dcc-sanitycheck 0
307
308 # This settings defines a time in seconds that the bot should wait before
309 # a dcc chat, telnet, or relay connection times out.
310 set ident-timeout 5
311
312 # Define here whether or not a +o user still needs the +p flag to dcc the bot.
313 set require-p 1
314
315 # If you want people allow to telnet in and type 'NEW' to become a new user,
316 # set this to 1. This is similar to the 'hello' msg command. The protect-telnet
317 # setting must be set to 0 to use this.
318 set open-telnets 0
319
320 # If you don't want Eggdrop to identify itself as an eggdrop on a telnet
321 # connection, set this setting to 1. Eggdrop will display 'Nickname' instead.
322 set stealth-telnets 0
323
324 # If you want Eggdrop to display a banner when telneting in, set this setting
325 # to 1. The telnet banner is set by 'set telnet-banner'.
326 set use-telnet-banner 0
327
328 # This settings defines a time in seconds that the bot should wait before
329 # a dcc chat, telnet, or relay connection times out.
330 set connect-timeout 15
331
332 # Specify here the number of lines to accept from a user on the partyline
333 # within 1 second before they are considered to be flooding and therefore
334 # get booted.
335 set dcc-flood-thr 3
336
337 # Define here how many telnet connection attempts in how many seconds from
338 # the same host constitute a flood. The correct format is Attempts:Seconds.
339 set telnet-flood 5:60
340
341 # If you want telnet-flood to apply even to +f users, set this setting to 1.
342 set paranoid-telnet-flood 1
343
344 # Set here the amount of seconds before giving up on hostname/address
345 # lookup (you might want to increase this if you are on a slow network).
346 set resolve-timeout 7
347
348
349 ##### SSL SETTINGS #####
350
351 # Settings in this section take effect when eggdrop is compiled with TLS
352 # support.
353
354 # File containing your private key, needed for the SSL certificate
355 # (see below). You can create one issuing the following command:
356 #
357 # openssl genrsa -out eggdrop.key 2048
358 #
359 # It will create a 2048 bit RSA key, strong enough for eggdrop.
360 # This is required for SSL hubs/listen ports, secure file transfer and
361 # /ctcp botnick schat
362 # For your convenience, you can type 'make sslcert' after 'make install'
363 # and you'll get a key and a certificate in your DEST directory.
364 #set ssl-privatekey "eggdrop.key"
365
366 # Specify the filename where your SSL certificate is located. If you
367 # don't set this, eggdrop will not be able to act as a server in SSL
368 # connections, as with most ciphers a certificate and a private key
369 # are required on the server side. Must be in PEM format.
370 # If you don't have one, you can create it using the following command:
371 #
372 # openssl req -new -key eggdrop.key -x509 -out eggdrop.crt -days 365
373 #
374 # This is required for SSL hubs/listen ports, secure file transfer and
375 # /ctcp botnick schat
376 # For your convenience, you can type 'make sslcert' after 'make install'
377 # and you'll get a key and a certificate in your DEST directory.
378 #set ssl-certificate "eggdrop.crt"
379
380 # Sets the maximum depth for the certificate chain verification that will
381 # be allowed for ssl. When certificate verification is enabled, any chain
382 # exceeding this depth will fail verification.
383 #set ssl-verify-depth 9
384
385 # Specify the location at which CA certificates for verification purposes
386 # are located. These certificates are trusted. If you don't set this,
387 # certificate verification will not work.
388 set ssl-capath "/etc/ssl/"
389 #set ssl-cafile ""
390
391 # Specify the list of ciphers (in order of preference) allowed for use with
392 # ssl. The cipher list is one or more cipher strings separated by colons,
393 # commas or spaces. Unavailable ciphers are silently ignored unless no useable
394 # cipher could be found. For the list of possible cipher strings and their
395 # meanings, please refer to the ciphers(1) manual.
396 # Note: if you set this, the value replaces any ciphers OpenSSL might use by
397 # default. To include the default ciphers, you can put DEFAULT as a cipher
398 # string in the list.
399 # For example:
400 #
401 # set ssl-ciphers "DEFAULT ADH"
402 #
403 # This will make eggdrop allow the default OpenSSL selection plus anonymous
404 # DH ciphers.
405 #
406 # set ssl-ciphers "ALL"
407 #
408 # This will make eggdrop allow all ciphers supported by OpenSSL, in a
409 # reasonable order.
410 #set ssl-ciphers ""
411
412 # Enable certificate authorization. Set to 1 to allow users and bots to
413 # identify automatically by their certificate fingerprints. Setting it
414 # to 2 to will force fingerprint logins. With a value of 2, users without
415 # a fingerprint set or with a certificate UID not matching their handle
416 # won't be allowed to login on SSL enabled telnet ports. Fingerprints
417 # must be set in advance with the .fprint and .chfinger commands.
418 # NOTE: this setting has no effect on plain-text ports.
419 #set ssl-cert-auth 0
420
421 # You can control SSL certificate verification using the following variables.
422 # All of them are flag-based. You can set them by adding together the numbers
423 # for all exceptions you want to enable. By default certificate verification
424 # is disabled and all certificates are assumed to be valid. The numbers are
425 # the following:
426 #
427 # Enable certificate verification - 1
428 # Allow self-signed certificates - 2
429 # Don't check peer common or alt names - 4
430 # Allow expired certificates - 8
431 # Allow certificates which are not valid yet - 16
432 # Allow revoked certificates - 32
433 # A value of 0 disables verification.
434
435 # Control certificate verification for DCC chats (only /dcc chat botnick)
436 #set ssl-verify-dcc 0
437
438 # Control certificate verification for linking to hubs
439 #set ssl-verify-bots 0
440
441 # Control cerfificate verification for SSL listening ports. This includes
442 # leaf bots connecting, users telneting in and /ctcp bot chat.
443 #set ssl-verify-clients 0
444
445
446 ##### MORE ADVANCED SETTINGS #####
447
448 # Set this to your socks host if your Eggdrop sits behind a firewall. If
449 # you use a Sun "telnet passthru" firewall, prefix the host with a '!'.
450 #set firewall "!sun-barr.ebay:3666"
451
452 # If you have a NAT firewall (you box has an IP in one of the following
453 # ranges: 192.168.0.0-192.168.255.255, 172.16.0.0-172.31.255.255,
454 # 10.0.0.0-10.255.255.255 and your firewall transparently changes your
455 # address to a unique address for your box) or you have IP masquerading
456 # between you and the rest of the world, and /dcc chat, /ctcp chat or
457 # userfile sharing aren't working, enter your outside IP here. This IP
458 # is used for transfers only, and has nothing to do with the vhost4/6
459 # or listen-addr settings. You may still need to set them.
460 #set nat-ip "127.0.0.1"
461
462 # If you want all dcc file transfers to use a particular portrange either
463 # because you're behind a firewall, or for other security reasons, set it
464 # here.
465 #set reserved-portrange 2010:2020
466
467 # Set the time in minutes that temporary ignores should last.
468 set ignore-time 15
469
470 # Define here what Eggdrop considers 'hourly'. All calls to it, including such
471 # things as note notifying or userfile saving, are affected by this.
472 # For example:
473 #
474 # set hourly-updates 15
475 #
476 # The bot will save its userfile 15 minutes past every hour.
477 set hourly-updates 00
478
479 # Un-comment the next line and set the list of owners of the bot.
480 # You NEED to change this setting.
481 #set owner "MrLame, MrsLame"
482
483 # Who should a note be sent to when new users are learned?
484 set notify-newusers "$owner"
485
486 # Enter the flags that all new users should get by default. See '.help whois'
487 # on the partyline for a list of flags and their descriptions.
488 set default-flags "hp"
489
490 # Enter all user-defined fields that should be displayed in a '.whois'.
491 # This will only be shown if the user has one of these extra fields.
492 # You might prefer to comment this out and use the userinfo1.0.tcl script
493 # which provides commands for changing all of these.
494 set whois-fields "url birthday"
495
496 # Enable this setting if you want your Eggdrop to die upon receiving a SIGHUP
497 # kill signal. Otherwise, the Eggdrop will just save its userfile and rehash.
498 set die-on-sighup 0
499
500 # Enable this setting if you want your Eggdrop to die upon receiving a SIGTERM
501 # kill signal. Otherwise, the Eggdrop will just save its userfile and rehash.
502 set die-on-sigterm 1
503
504 # Uncomment these two lines if you wish to disable the .tcl and .set commands.
505 # If you select your owners wisely, you should be okay enabling these.
506 #unbind dcc n tcl *dcc:tcl
507 #unbind dcc n set *dcc:set
508
509 # If you enable this setting, only permanent owners (owner setting) will be
510 # able to use .tcl and .set. Moreover, if you want only let permanent owners
511 # use .dump, then set this to 2.
512 # WARNING: setting this to 0 is a security risk, don't do it unless you trust
513 # your owners enough to give them shell access to the account the bot is
514 # running on.
515 set must-be-owner 1
516
517 # Comment out this line to add the 'simul' partyline command (owners can
518 # manipulate other people on the party line). Please select owners wisely
519 # and use this command ethically!
520 unbind dcc n simul *dcc:simul
521
522 # Set here the maximum number of socket connections you will allow. You can
523 # increase this later, but never decrease it below current usage.
524 # If you're using Tcl threads, this is a per-thread maximum.
525 set max-socks 100
526
527 # Enable this setting if you want +d & +k users to use commands bound as -|-.
528 set allow-dk-cmds 1
529
530 # If your Eggdrop rejects bots that actually have already disconnected from
531 # another hub, but the disconnect information has not yet spread over the
532 # botnet due to lag, use this setting. The bot will wait dupwait-timeout
533 # seconds before it checks again and then finally reject the bot.
534 set dupwait-timeout 5
535
536 # Set this to 0 if you want the bot to strip '~+-^=' characters from user@hosts
537 # before matching them.
538 # This setting is currently kept for compatibility, but will be removed from
539 # the next release. Please leave it set to 1 to avoid problems with your user
540 # files in the future.
541 set strict-host 1
542
543 # Enable cidr support for b/e/I modes. This means the bot will understand
544 # and match modes in cidr notation, and will be able to put and enforce such
545 # bans or unban itself, if banned with a cidr mask.
546 # Do NOT set this, if your network/server does not support cidr!
547 set cidr-support 0
548
549 # You MUST remove this line for your bot to start. This has been added to
550 # prevent you from starting up a bot that is not fully configured. Bots
551 # that have not been fully configured may join the wrong IRC network, the
552 # wrong channels, or generally do things that you do not want. Please make
553 # sure that you have double-checked every setting. There's also a similar line
554 # lower down, just to make sure you're reading :)
555 die "Please make sure you edit your config file completely."
556
557
558 ##### MODULES #####
559
560 # Below are various settings for the modules included with Eggdrop.
561 # PLEASE READ AND EDIT THEM CAREFULLY, even if you're an old hand at
562 # Eggdrop, things change.
563
564 # This path specifies the path were Eggdrop should look for its modules.
565 # If you run the bot from the compilation directory, you will want to set
566 # this to "". If you use 'make install' (like all good kiddies do ;), this
567 # is a fine default. Otherwise, use your head :)
568 set mod-path "modules/"
569
570
571 #### BLOWFISH MODULE ####
572
573 # IF YOU DON'T READ THIS YOU MAY RENDER YOUR USERFILE USELESS LATER
574 # Eggdrop encrypts its userfile, so users can have secure passwords.
575 # Please note that when you change your encryption method later (i.e.
576 # using other modules like a md5 module), you can't use your current
577 # userfile anymore. Eggdrop will not start without an encryption module.
578 loadmodule blowfish
579
580
581 #### DNS MODULE ####
582
583 # This module provides asynchronous dns support. This will avoid long
584 # periods where the bot just hangs there, waiting for a hostname to
585 # resolve, which will often let it timeout on all other connections.
586 loadmodule dns
587
588 # In case your bot has trouble finding dns servers or you want to use
589 # specific ones, you can set them here. The value is a list of dns servers.
590 # The order doesn't matter. You can also specify a non-standard port.
591 # The default is to use the system specified dns servers. You don't need to
592 # modify this setting normally.
593 #set dns-servers "8.8.8.8 8.8.4.4"
594
595 # Specify how long should the DNS module cache replies at maximum. The value
596 # must be in seconds.
597 # Note that it will respect the TTL of the reply and this is just an upper
598 # boundary.
599 set dns-cache 86400
600
601 # Specify how long should the DNS module cache negative replies (NXDOMAIN,
602 # DNS Lookup failed). The value must be in seconds.
603 set dns-negcache 600
604
605 # How many times should the DNS module resend the query for a given domain
606 # if it receives no reply?
607 set dns-maxsends 4
608
609 # Specify how long should the DNS module wait for a reply before resending the
610 # query. The value must be in seconds.
611 set dns-retrydelay 3
612
613 #### CHANNELS MODULE ####
614
615 # This module provides channel related support for the bot. Without it,
616 # you won't be able to make the bot join a channel or save channel
617 # specific userfile information.
618 loadmodule channels
619
620 # Enter here the filename where dynamic channel settings are stored.
621 set chanfile "LamestBot.chan"
622
623 # Set this setting to 1 if you want your bot to expire bans/exempts/invites set
624 # by other opped bots on the channel.
625 set force-expire 0
626
627 # Set this setting to 1 if you want your bot to share user greets with other
628 # bots on the channel if sharing user data.
629 set share-greet 0
630
631 # Set this setting to 1 if you want to allow users to store an info line.
632 set use-info 1
633
634 # Set this setting to 1 if you want to allow both +p and +s channel modes
635 # to be enforced at the same time by the chanmode channel setting.
636 # Make sure your server supports +ps mixing or you may get endless mode
637 # floods.
638 set allow-ps 0
639
640 # The following settings are used as default values when you .+chan #chan or .tcl
641 # channel add #chan. Look below for explanation of every option.
642
643 set global-flood-chan 15:60
644 set global-flood-deop 3:10
645 set global-flood-kick 3:10
646 set global-flood-join 5:60
647 set global-flood-ctcp 3:60
648 set global-flood-nick 5:60
649 set global-aop-delay 5:30
650 set global-idle-kick 0
651 set global-chanmode "nt"
652 set global-stopnethack-mode 0
653 set global-revenge-mode 0
654 set global-ban-type 3
655 set global-ban-time 120
656 set global-exempt-time 60
657 set global-invite-time 60
658
659 set global-chanset {
660 -autoop -autovoice
661 -bitch +cycle
662 +dontkickops +dynamicbans
663 +dynamicexempts +dynamicinvites
664 -enforcebans +greet
665 -inactive -nodesynch
666 -protectfriends +protectops
667 -revenge -revengebot
668 -secret -seen
669 +shared -statuslog
670 +userbans +userexempts
671 +userinvites -protecthalfops
672 -autohalfop -static
673 }
674
675 # chanmode +/-<modes>
676 # This setting makes the bot enforce channel modes. It will always add
677 # the +<modes> and remove the -<modes> modes.
678 #
679 # idle-kick 0
680 # This setting will make the bot check every minute for idle
681 # users. Set this to 0 to disable idle check.
682 #
683 # stopnethack-mode 0
684 # This setting will make the bot de-op anyone who enters the channel
685 # with serverops. There are seven different modes for this settings:
686 # 0 turn off
687 # 1 isoptest (allow serverop if registered op)
688 # 2 wasoptest (allow serverop if op before split)
689 # 3 allow serverop if isop or wasop
690 # 4 allow serverop if isop and wasop.
691 # 5 If the channel is -bitch, see stopnethack-mode 3
692 # If the channel is +bitch, see stopnethack-mode 1
693 # 6 If the channel is -bitch, see stopnethack-mode 2
694 # If the channel is +bitch, see stopnethack-mode 4
695 #
696 # revenge-mode 0
697 # This settings defines how the bot should punish bad users when
698 # revenging. There are four possible settings:
699 # 0 Deop the user.
700 # 1 Deop the user and give them the +d flag for the channel.
701 # 2 Deop the user, give them the +d flag for the channel, and kick them.
702 # 3 Deop the user, give them the +d flag for the channel, kick, and ban them.
703 #
704 # ban-type 3
705 # This setting defines what type of bans should eggdrop place for +k users or
706 # when revenge-mode is 3.
707 # Available types are:
708 # 0 *!user@host
709 # 1 *!*user@host
710 # 2 *!*@host
711 # 3 *!*user@*.host
712 # 4 *!*@*.host
713 # 5 nick!user@host
714 # 6 nick!*user@host
715 # 7 nick!*@host
716 # 8 nick!*user@*.host
717 # 9 nick!*@*.host
718 # You can also specify types from 10 to 19 which correspond to types
719 # 0 to 9, but instead of using a * wildcard to replace portions of the
720 # host, only numbers in hostnames are replaced with the '?' wildcard.
721 # Same is valid for types 20-29, but instead of '?', the '*' wildcard
722 # will be used.
723 #
724 # ban-time 120
725 # Set here how long temporary bans will last (in minutes). If you
726 # set this setting to 0, the bot will never remove them.
727 #
728 # exempt-time 60
729 # Set here how long temporary exempts will last (in minutes). If you
730 # set this setting to 0, the bot will never remove them. The bot will
731 # check the exempts every X minutes, but will not remove the exempt if
732 # a ban is set on the channel that matches that exempt. Once the ban is
733 # removed, then the exempt will be removed the next time the bot checks.
734 # Please note that this is an IRCnet feature.
735 #
736 # invite-time 60
737 # Set here how long temporary invites will last (in minutes). If you
738 # set this setting to 0, the bot will never remove them. The bot will
739 # check the invites every X minutes, but will not remove the invite if
740 # a channel is set to +i. Once the channel is -i then the invite will be
741 # removed the next time the bot checks. Please note that this is an IRCnet
742 # feature.
743 #
744 # aop-delay (minimum:maximum)
745 # This is used for autoop, autohalfop, autovoice. If an op or voice joins a
746 # channel while another op or voice is pending, the bot will attempt to put
747 # both modes on one line.
748 # aop-delay 0 No delay is used.
749 # aop-delay X An X second delay is used.
750 # aop-delay X:Y A random delay between X and Y is used.
751 #
752 # need-op { putserv "PRIVMSG #lamest :op me cos i'm lame!" }
753 # This setting will make the bot run the script enclosed in brackets
754 # if it does not have ops. This must be shorter than 120 characters.
755 # If you use scripts like getops.tcl or botnetop.tcl, you don't need
756 # to set this setting.
757 #
758 # need-invite { putserv "PRIVMSG #lamest :let me in!" }
759 # This setting will make the bot run the script enclosed in brackets
760 # if it needs an invite to the channel. This must be shorter than 120
761 # characters. If you use scripts like getops.tcl or botnetop.tcl, you
762 # don't need to set this setting.
763 #
764 # need-key { putserv "PRIVMSG #lamest :let me in!" }
765 # This setting will make the bot run the script enclosed in brackets
766 # if it needs the key to the channel. This must be shorter than 120
767 # characters. If you use scripts like getops.tcl or botnetop.tcl, you
768 # don't need to set this setting
769 #
770 # need-unban { putserv "PRIVMSG #lamest :let me in!" }
771 # This setting will make the bot run the script enclosed in brackets
772 # if it needs to be unbanned on the channel. This must be shorter than
773 # 120 characters. If you use scripts like getops.tcl or botnetop.tcl,
774 # you don't need to set this setting
775 #
776 # need-limit { putserv "PRIVMSG #lamest :let me in!" }
777 # This setting will make the bot run the script enclosed in brackets
778 # if it needs the limit to be raised on the channel. This must be
779 # shorter than 120 characters. If you use scripts like getops.tcl or
780 # botnetop.tcl, you don't need to set this setting
781 #
782 # flood-chan 15:60
783 # Set here how many channel messages in how many seconds from one
784 # host constitutes a flood. Setting this to 0 or 0:0 disables
785 # flood protection for the channel.
786 #
787 # flood-deop 3:10
788 # Set here how many deops in how many seconds from one host constitutes
789 # a flood. Setting this to 0 or 0:0 disables deop flood protection for
790 # the channel.
791 #
792 # flood-kick 3:10
793 # Set here how many kicks in how many seconds from one host constitutes
794 # a flood. Setting this to 0 or 0:0 disables kick flood protection for
795 # the channel.
796 #
797 # flood-join 5:60
798 # Set here how many joins in how many seconds from one host constitutes
799 # a flood. Setting this to 0 or 0:0 disables join flood protection for
800 # the channel.
801 #
802 # flood-ctcp 3:60
803 # Set here how many channel ctcps in how many seconds from one host
804 # constitutes a flood. Setting this to 0 or 0:0 disables ctcp flood
805 # protection for the channel.
806 #
807 # flood-nick 5:60
808 # Set here how many nick changes in how many seconds from one host
809 # constitutes a flood. Setting this to 0 or 0:0 disables nick flood
810 # protection for the channel.
811 #
812 # A complete list of all available channel settings:
813 #
814 # enforcebans
815 # When a ban is set, kick people who are on the channel and match
816 # the ban?
817 #
818 # dynamicbans
819 # Only activate bans on the channel when necessary? This keeps
820 # the channel's ban list from getting excessively long. The bot
821 # still remembers every ban, but it only activates a ban on the
822 # channel when it sees someone join who matches that ban.
823 #
824 # userbans
825 # Allow bans to be made by users directly? If turned off, the bot
826 # will require all bans to be made through the bot's console.
827 #
828 # dynamicexempts
829 # Only activate exempts on the channel when necessary? This keeps
830 # the channel's exempt list from getting excessively long. The bot
831 # still remembers every exempt, but it only activates a exempt on
832 # the channel when it sees a ban set that matches the exempt. The
833 # exempt remains active on the channel for as long as the ban is
834 # still active.
835 #
836 # userexempts
837 # Allow exempts to be made by users directly? If turned off, the
838 # bot will require all exempts to be made through the bot's console.
839 #
840 # dynamicinvites
841 # Only activate invites on the channel when necessary? This keeps
842 # the channel's invite list from getting excessively long. The bot
843 # still remembers every invite, but the invites are only activated
844 # when the channel is set to invite only and a user joins after
845 # requesting an invite. Once set, the invite remains until the
846 # channel goes to -i.
847 #
848 # userinvites
849 # Allow invites to be made by users directly? If turned off, the
850 # bot will require all invites to be made through the bot's console.
851 #
852 # autoop
853 # Op users with the +o flag as soon as they join the channel?
854 # This is insecure and not recommended.
855 #
856 # autohalfop
857 # Halfop users with the +l flag as soon as they join the channel?
858 # This is insecure and not recommended.
859 #
860 # bitch
861 # Only let users with +o) flag be opped on the channel?
862 #
863 # greet
864 # Say a user's info line when they join the channel?
865 #
866 # protectops
867 # Re-op a user with the +o flag if they get deopped?
868 #
869 # protecthalfops
870 # Re-halfop a user with the +l flag if they get dehalfopped?
871 #
872 # protectfriends
873 # Re-op a user with the +f flag if they get deopped?
874 #
875 # statuslog
876 # Log the channel status line every 5 minutes? This shows the bot's
877 # status on the channel (op, voice, etc.), the channel's modes, and
878 # the number of +m/+o/+v/+n/+b/+e/+I users on the channel. A sample
879 # status line follows:
880 #
881 # [01:40] @#lamest (+istn) : [m/1 o/1 v/4 n/7 b/1 e/5 I/7]
882 #
883 # revenge
884 # Remember people who deop/kick/ban the bot, valid ops, or friends
885 # and punish them? Users with the +f flag are exempt from revenge.
886 #
887 # revengebot
888 # This is similar to to the 'revenge' option, but it only triggers
889 # if a bot gets deopped, kicked or banned.
890 #
891 # autovoice
892 # Voice users with the +v flag when they join the channel?
893 #
894 # secret
895 # Prevent this channel from being listed on the botnet?
896 #
897 # shared
898 # Share channel-related user info for this channel?
899 #
900 # cycle
901 # Cycle the channel when it has no ops?
902 #
903 # dontkickops
904 # Do you want the bot not to be able to kick users who have the +o
905 # flag, letting them kick-flood for instance to protect the channel
906 # against clone attacks.
907 #
908 # inactive
909 # This prevents the bot from joining the channel (or makes it leave
910 # the channel if it is already there). It can be useful to make the
911 # bot leave a channel without losing its settings, channel-specific
912 # user flags, channel bans, and without affecting sharing.
913 #
914 # seen
915 # Respond to seen requests in the channel? The seen module must be
916 # loaded for this to work.
917 #
918 # nodesynch
919 # Allow non-ops to perform channel modes? This can stop the bot from
920 # fighting with services such as ChanServ, or from kicking IRCops when
921 # setting channel modes without having ops.
922 #
923 # static
924 # Allow only permanent owners to remove the channel?
925
926 # To add a channel to eggdrop, please enter the bot's partyline and type
927 # .+chan #channel. Check also .help chanset and .help chaninfo.
928 # You can still add a channel here and it will be saved if you have a
929 # chanfile. We recommend you to use the partyline though.
930 #
931 #channel add #lamest
932
933
934 #### SERVER MODULE ####
935
936 # This module provides the core server support. You have to load this
937 # if you want your bot to come on IRC. Not loading this is equivalent
938 # to the old NO_IRC define.
939 loadmodule server
940
941 # Control certificate verification for irc servers. For a description of the
942 # possible values, look at the SSL SETTINGS section above.
943 #set ssl-verify-server 0
944
945 # What is your network?
946 # 0 = EFnet
947 # 1 = IRCnet
948 # 2 = Undernet
949 # 3 = DALnet
950 # 4 = +e/+I/max-modes 20 Hybrid
951 # 5 = Others
952 set net-type 0
953
954 # Set the nick the bot uses on IRC, and on the botnet unless you specify a
955 # separate botnet-nick, here.
956 set nick "Lamestbot"
957
958 # Set the alternative nick which the bot uses on IRC if the nick specified
959 # by 'set nick' is unavailable. All '?' characters will be replaced by random
960 # numbers.
961 set altnick "Llamab?t"
962
963 # Set what should be displayed in the real-name field for the bot on IRC.
964 # This can not be blank, it has to contain something.
965 set realname "/msg LamestBot hello"
966
967 # This is a Tcl script to be run immediately after connecting to a server.
968 bind evnt - init-server evnt:init_server
969
970 proc evnt:init_server {type} {
971 global botnick
972 putquick "MODE $botnick +i-ws"
973 }
974
975 # Set the default port which should be used if none is specified with
976 # '.jump' or in 'set servers'.
977 set default-port 6667
978
979 # This is the bot's server list. The bot will start at the first server listed,
980 # and cycle through them whenever it gets disconnected. You need to change these
981 # servers to YOUR network's servers.
982 #
983 # The format is:
984 # server[:port[:password]]
985 # Prefix the port with a plus sign to attempt a SSL connection:
986 # server:+port[:password]
987 # If you need to specify a numeric server IPv6 address, use following format:
988 # ip,[port[:password]]
989 #
990 # Both the port and password fields are optional; however, if you want to set a
991 # password you must also set a port. If a port isn't specified it will default to
992 # your default-port setting.
993 set servers {
994 you.need.to.change.this:6667
995 another.example.com:7000:password
996 2001:db8:618:5c0:263::,6669:password
997 ssl.example.net:+6697
998 }
999
1000 # Number of seconds to wait between transmitting queued lines to the server.
1001 # Lower this value at your own risk. ircd is known to start flood control
1002 # at 512 bytes/2 seconds.
1003 set msg-rate 2
1004
1005 # This setting makes the bot try to get his original nickname back if its
1006 # primary nickname is already in use.
1007 set keep-nick 1
1008
1009
1010 # This setting makes the bot squelch the error message when rejecting a DCC
1011 # CHAT, SEND or message command. Normally, Eggdrop notifies the user that the
1012 # command has been rejected because they don't have access. Note that sometimes
1013 # IRC server operators detect bots that way.
1014 set quiet-reject 1
1015
1016 # If you want your bot to answer lower case ctcp requests (non rfc-
1017 # compliant), set this setting to 1. mIRC will do this, most other
1018 # clients will not.
1019 set lowercase-ctcp 0
1020
1021 # Set how many ctcps should be answered at once.
1022 set answer-ctcp 3
1023
1024 # Set here how many msgs in how many seconds from one host constitutes
1025 # a flood. If you set this to 0:0, msg flood protection will be disabled.
1026 set flood-msg 5:60
1027
1028 # Set here how many ctcps in how many seconds from one host constitutes
1029 # a flood. If you set this to 0:0, ctcp flood protection will be disabled.
1030 set flood-ctcp 3:60
1031
1032 # This settings makes the bot cycle forever through the server list until
1033 # it successfully connects to one.
1034 set never-give-up 1
1035
1036 # This setting defines how long Eggdrop should wait before moving from one
1037 # server to another on disconnect. If you set 0 here, Eggdrop will not wait
1038 # at all and will connect instantly. Setting this too low could result in
1039 # your bot being K:Lined.
1040 set server-cycle-wait 60
1041
1042 # Set here how long Eggdrop should wait for a response when connecting to a
1043 # server before giving up and moving on to next server.
1044 set server-timeout 60
1045
1046 # If the number of servers on the net gets below this number, the bot
1047 # will jump to a new server (it will assume it's on the losing end of
1048 # a netsplit). Set this to 0 to turn off. If your bot is running on
1049 # any major IRC network, this should probably be turned off.
1050 set servlimit 0
1051
1052 # Set this to 1 if Eggdrop should check for stoned servers? (where the
1053 # server connection has died, but Eggdrop hasn't been notified yet).
1054 set check-stoned 1
1055
1056 # If you want your bot to exit the server if it receives an ERROR message,
1057 # set this to 1.
1058 set serverror-quit 1
1059
1060 # Set here the maximum number of lines to queue to the server. If you're
1061 # going to dump large chunks of text to people over IRC, you will probably
1062 # want to raise this. 300 is fine for most people though.
1063 set max-queue-msg 300
1064
1065 # If you want Eggdrop to trigger binds for ignored users, set this to 1.
1066 set trigger-on-ignore 0
1067
1068 # This setting configures PUBM and MSGM binds to be exclusive of PUB and MSG
1069 # binds. This means if a MSGM bind with the mask "*help*" exists and is
1070 # triggered, any MSG bindings with "help" in their mask will not be
1071 # triggered. Don't enable this unless you know what you are doing!
1072 set exclusive-binds 0
1073
1074 # Allow identical messages in the mode queue?
1075 set double-mode 1
1076
1077 # Allow identical messages in the server queue?
1078 set double-server 1
1079
1080 # Allow identical messages in the help queue?
1081 set double-help 1
1082
1083 # This optimizes the kick queue. It also traces nick changes and parts in
1084 # the channel and changes the kick queue accordingly. There are three
1085 # different options for this setting:
1086 # 0 = Turn it off.
1087 # 1 = Optimize the kick queue by summarizing kicks.
1088 # 2 = Trace nick changes and parts on the channel and change the queue
1089 # accordingly. For example, bot will not try to kick users who have
1090 # already parted the channel.
1091 # ATTENTION: Setting 2 is very CPU intensive.
1092 set optimize-kicks 1
1093
1094 # If your network supports more recipients per command then 1, you can
1095 # change this behavior here. Set this to the number of recipients per
1096 # command, or set this to 0 for unlimited.
1097 set stack-limit 4
1098
1099 ### SERVER MODULE - OTHER NETWORKS (net-type 5) ###
1100
1101 # This settings defines how umode +r is understood by Eggdrop. Some networks
1102 # use +r to indicate a restricted connection. If this is your case, and you
1103 # want your bot to leave restricted servers and jump to the next server on its
1104 # list, then set it to 1.
1105 #set check-mode-r 1
1106
1107 # This setting allows you to specify the maximum nick-length supported by your
1108 # network. The default setting is 9. The maximum supported length by Eggdrop
1109 # is 32.
1110 #set nick-len 9
1111
1112 #### CTCP MODULE ####
1113
1114 # This module provides the normal ctcp replies that you'd expect.
1115 # Without it loaded, CTCP CHAT will not work. The server module
1116 # is required for this module to function.
1117 loadmodule ctcp
1118
1119 # Set here how the ctcp module should answer ctcps. There are 3 possible
1120 # operating modes:
1121 # 0: Normal behavior is used.
1122 # 1: The bot ignores all ctcps, except for CHAT and PING requests
1123 # by users with the +o flag.
1124 # 2: Normal behavior is used, however the bot will not answer more
1125 # than X ctcps in Y seconds (defined by 'set flood-ctcp').
1126 set ctcp-mode 0
1127
1128 # There are also several variables to help make your bot less noticeable.
1129 # They are: ctcp-version, ctcp-finger, and ctcp-userinfo. You can use set to set
1130 # them to values you'd like.
1131
1132
1133 #### IRC MODULE ####
1134
1135 # This module provides basic IRC support for your bot. You have to
1136 # load this if you want your bot to come on IRC. The server and channels
1137 # modules must be loaded for this module to function.
1138 loadmodule irc
1139
1140 # Set this to 1 if you want to bounce all server bans.
1141 set bounce-bans 0
1142
1143 # Set this to 1 if you want to bounce all server exemptions (+e modes).
1144 # This is disabled if use-exempts is disabled.
1145 set bounce-exempts 0
1146
1147 # Set this to 1 if you want to bounce all server invitations (+I modes).
1148 # This is disabled if use-invites is disabled.
1149 set bounce-invites 0
1150
1151 # Set this to 1 if you want to bounce all server modes.
1152 set bounce-modes 0
1153
1154 # Set here the maximum number of bans you want the bot to set on a channel.
1155 # Eggdrop will not place any more bans if this limit is reached. Undernet
1156 # currently allows 45 bans, IRCnet allows 30, EFnet allows 100, and DALnet
1157 # allows 100.
1158 set max-bans 30
1159
1160 # Set here the maximum number of exempts you want Eggdrop to set on a channel.
1161 # Eggdrop will not place any more exempts if this limit is reached.
1162 set max-exempts 20
1163
1164 # Set here the maximum number of invites you want Eggdrop to set on a channel.
1165 # Eggdrop will not place any more invites if this limit is reached.
1166 set max-invites 20
1167
1168 # There is a global limit for +b/+e/+I modes. This limit should be set to
1169 # the same value as max-bans for networks that do not support +e/+I.
1170 set max-modes 30
1171
1172 # The following settings should be left commented unless the default values
1173 # are being overridden. By default, exempts and invites are on for EFnet and
1174 # IRCnet, but off for all other large networks. This behavior can be modified
1175 # with the following 2 flags. If your network doesn't support +e/+I modes then
1176 # you will be unable to use these features.
1177 #
1178 # Do you want to enable exempts (+e modes)?
1179 #set use-exempts 0
1180
1181 # Do you want to enable invites (+I modes)?
1182 #set use-invites 0
1183
1184 # Set this to 1 if you want the bot to kick for control character/ctcp
1185 # avalanches to a channel. Remember that if it does, it won't ban them.
1186 # This can start kick floods.
1187 set kick-fun 0
1188
1189 # Set this to 1 if you want the bot to ban for control character/ctcp
1190 # avalanches to a channel. This can prevent kick floods, but it also can
1191 # fill the banlist.
1192 set ban-fun 0
1193
1194 # If you want people to be able to add themselves to the bot's userlist
1195 # with the default userflags (defined above in the config file) via the
1196 # 'hello' msg command, set this to 1.
1197 set learn-users 0
1198
1199 # Set here the time (in seconds) to wait for someone to return from a netsplit
1200 # (i.e. wasop will expire afterwards). Set this to 1500 on IRCnet since its
1201 # nick delay stops after 30 minutes.
1202 set wait-split 600
1203
1204 # Set here the time (in seconds) that someone must have been off-channel
1205 # before re-displaying their info line.
1206 set wait-info 180
1207
1208 # Set this to the maximum number of bytes to send in the arguments
1209 # of modes sent to the server. Most servers default this to 200.
1210 set mode-buf-length 200
1211
1212 # Many IRCops find bots by seeing if they reply to 'hello' in a msg.
1213 # You can change this to another word by un-commenting the following
1214 # two lines and changing "myword" to the word wish to use instead of
1215 # 'hello'. It must be a single word.
1216 #unbind msg - hello *msg:hello
1217 #bind msg - myword *msg:hello
1218
1219 # Many takeover attempts occur due to lame users blindly /msg ident'ing to
1220 # the bot and attempting to guess passwords. We now unbind this command by
1221 # default to discourage them. You can enable these commands by commenting the
1222 # following two lines.
1223 unbind msg - ident *msg:ident
1224 unbind msg - addhost *msg:addhost
1225
1226 # Some IRC servers are using some non-standard op-like channel prefixes/modes.
1227 # Define them here so the bot can recognize them. Just "@" should be fine for
1228 # most networks. Un-comment the second line for some UnrealIRCds.
1229
1230 set opchars "@"
1231 #set opchars "@&~"
1232
1233 # If you are so lame you want the bot to display peoples info lines, even
1234 # when you are too lazy to add their chanrecs to a channel, set this to 1.
1235 # *NOTE* This means *every* user with an info line will have their info
1236 # line displayed on EVERY channel they join (provided they have been gone
1237 # longer than wait-info).
1238 set no-chanrec-info 0
1239
1240 ### IRC MODULE - IRCnet SPECIFIC FEATURES (net-type 1) ###
1241
1242 # Attention: Use these settings *only* if you set 'net-type' to 1!
1243
1244 # At the moment, the current IRCnet IRCd version (2.10) doesn't support the
1245 # mixing of b, o and v modes with e and I modes. This might be changed in the
1246 # future, so use 1 at the moment for this setting.
1247 set prevent-mixing 1
1248
1249 ### IRC MODULE - OTHER NETWORKS (net-type 5) ###
1250
1251 # Attention: Use these settings *only* if you set 'net-type' to 5!
1252
1253 # If your network supports more users per kick command then 1, you can
1254 # change this behavior here. Set this to the number of users to kick at
1255 # once, or set this to 0 for all at once.
1256 #set kick-method 1
1257
1258 # Some networks allow you to stack lots of channel modes into one line.
1259 # They're all guaranteed to support at least 3, so that's the default.
1260 # If you know your network supports more, you may want to adjust this.
1261 # This setting is limited to 6, although if you want to use a higher value,
1262 # you can modify this by changing the value of MODES_PER_LINE_MAX in
1263 # src/chan.h and recompiling the bot.
1264 #set modes-per-line 3
1265
1266 # Some networks don't include the +l limit and +k or -k key modes
1267 # in the modes-per-line (see above) limitation. Set include-lk to 0 for
1268 # these networks.
1269 #set include-lk 1
1270
1271 # Set this to 1 if your network uses IRCu2.10.01 specific /who requests.
1272 # Eggdrop can, therefore, ask only for exactly what's needed.
1273 #set use-354 0
1274
1275 # If your network doesn't use rfc 1459 compliant string matching routines,
1276 # set this to 0.
1277 #set rfc-compliant 1
1278
1279
1280 #### TRANSFER MODULE ####
1281
1282 # The transfer module provides DCC SEND/GET support and userfile transfer
1283 # support for userfile sharing. Un-comment the next line to load it if you
1284 # need this functionality.
1285 #loadmodule transfer
1286
1287 # Set here the maximum number of simultaneous downloads to allow for
1288 # each user.
1289 set max-dloads 3
1290
1291 # Set here the block size for dcc transfers. ircII uses 512 bytes,
1292 # but admits that it may be too small. 1024 is standard these days.
1293 # 0 is turbo-dcc (recommended).
1294 set dcc-block 0
1295
1296 # Enable this setting if you want to copy files into the /tmp directory
1297 # before sending them. This is useful on most systems for file stability,
1298 # but if your directories are NFS mounted, it's a pain, and you'll want
1299 # to set this to 0. If you are low on disk space, you may also want to
1300 # set this to 0.
1301 set copy-to-tmp 1
1302
1303 # Set here the time (in seconds) to wait before an inactive transfer times out.
1304 set xfer-timeout 30
1305
1306
1307 #### SHARE MODULE ####
1308
1309 # This module provides userfile sharing support between two directly
1310 # linked bots. The transfer and channels modules are required for this
1311 # module to correctly function. Un-comment the following line to load
1312 # the share module.
1313 #loadmodule share
1314
1315 # Settings in this section must be un-commented before setting.
1316
1317 # When two bots get disconnected, this setting allows them to create a
1318 # resync buffer which saves all changes done to the userfile during
1319 # the disconnect. When they reconnect, they will not have to transfer
1320 # the complete user file, but, instead, just send the resync buffer.
1321 #
1322 # NOTE: This has been known to cause loss of channel flags and other
1323 # problems. Using this setting is not recommended.
1324 #set allow-resync 0
1325
1326 # This setting specifies how long to hold another bots resync data
1327 # before flushing it.
1328 #set resync-time 900
1329
1330 # When sharing user lists, DON'T ACCEPT global flag changes from other bots?
1331 # NOTE: The bot will still send changes made on the bot, it just won't accept
1332 # any global flag changes from other bots. This overrides the private-globals
1333 # setting (below).
1334 #set private-global 0
1335
1336 # When sharing user lists, if private-global isn't set, which global flag
1337 # changes from other bots should be ignored?
1338 #set private-globals "mnot"
1339
1340 # When sharing user lists, don't accept ANY userfile changes from other
1341 # bots? Paranoid people should use this feature on their hub bot. This
1342 # will force all userlist changes to be made via the hub.
1343 #set private-user 0
1344
1345 # This setting makes the bot discard its own bot records in favor of
1346 # the ones sent by the hub.
1347 # NOTE: No passwords or botflags are shared, only ports and
1348 # address are added to sharing procedure. This only works with hubs that
1349 # are v1.5.1 or higher.
1350 #set override-bots 0
1351
1352
1353 #### COMPRESS MODULE ####
1354
1355 # This module provides provides support for file compression. This allows the
1356 # bot to transfer compressed user files and therefore save a significant amount
1357 # of bandwidth. The share module must be loaded to load this module. Un-comment
1358 # the following line to the compress module.
1359 #loadmodule compress
1360
1361 # Allow compressed sending of user files? The user files are compressed with
1362 # the compression level defined in `compress-level'.
1363 set share-compressed 1
1364
1365 # This is the default compression level used. These levels are the same as
1366 # those used by GNU gzip.
1367 #set compress-level 9
1368
1369
1370 #### FILESYSTEM MODULE ####
1371
1372 # This module provides an area within the bot where users can store and
1373 # manage files. With this module, the bot is usable as a file server. The
1374 # transfer module is required for this module to function. Un-comment
1375 # the following line to load the filesys module.
1376 #loadmodule filesys
1377
1378 # Set here the 'root' directory for the file system.
1379 set files-path "/home/mydir/filesys"
1380
1381 # If you want to allow uploads, set this to the directory uploads
1382 # should be put into. Set this to "" if you don't want people to
1383 # upload files to your bot.
1384 set incoming-path "/home/mydir/filesys/incoming"
1385
1386 # If you don't want to have a central incoming directory, but instead
1387 # want uploads to go to the current directory that a user is in, set
1388 # this setting to 1.
1389 set upload-to-pwd 0
1390
1391 # Eggdrop creates a '.filedb' file in each subdirectory of your file area
1392 # to keep track of its own file system information. If you can't do that (for
1393 # example, if the dcc path isn't owned by you, or you just don't want it to do
1394 # that) specify a path here where you'd like all of the database files to be
1395 # stored instead.
1396 set filedb-path ""
1397
1398 # Set here the maximum number of people that can be in the file area at once.
1399 # Setting this to 0 makes it effectively infinite.
1400 set max-file-users 20
1401
1402 # Set here the maximum allowable file size that will be received (in KB).
1403 # Setting this to 0 makes it effectively infinite.
1404 set max-filesize 1024
1405
1406
1407 #### NOTES MODULE ####
1408
1409 # This module provides support for storing of notes for users from each other.
1410 # Note sending between currently online users is supported in the core, this is
1411 # only for storing the notes for later retrieval.
1412 loadmodule notes
1413
1414 # Set here the filename where private notes between users are stored.
1415 set notefile "LamestBot.notes"
1416
1417 # Set here the maximum number of notes to allow to be stored for each user
1418 # (to prevent flooding).
1419 set max-notes 50
1420
1421 # Set here how long (in days) to store notes before expiring them.
1422 set note-life 60
1423
1424 # Set this to 1 if you want to allow users to specify a forwarding address
1425 # for forwarding notes to another account on another bot.
1426 set allow-fwd 0
1427
1428 # Set this to 1 if you want the bot to let people know hourly if they have
1429 # any notes.
1430 set notify-users 0
1431
1432 # Set this to 1 if you want the bot to let people know on join if they have
1433 # any notes.
1434 set notify-onjoin 1
1435
1436 # Comment out this next line. Otherwise, your bot won't start.
1437 die "You didn't edit your config file completely like you were told, did you?"
1438
1439
1440 #### CONSOLE MODULE ####
1441
1442 # This module provides storage of console settings when you exit the
1443 # bot or type .store on the partyline.
1444 loadmodule console
1445
1446 # Save users console settings automatically? Otherwise, they have
1447 # to use the .store command.
1448 set console-autosave 1
1449
1450 # If a user doesn't have any console settings saved, which channel
1451 # do you want them automatically put on?
1452 set force-channel 0
1453
1454 # Enable this setting if a user's global info line should be displayed
1455 # when they join a botnet channel.
1456 set info-party 0
1457
1458
1459 #### WOOBIE MODULE ####
1460
1461 # This is for demonstrative purposes only. If you are looking for starting
1462 # point in writing modules, woobie is the right thing.
1463 #loadmodule woobie
1464
1465
1466 #### SEEN MODULE ####
1467
1468 # This module provides very basic seen commands via msg, on channel or via dcc.
1469 # This module works only for users in the bot's userlist. If you are looking for
1470 # a better and more advanced seen module, try the gseen module by G'Quann. You
1471 # can find it at http://www.kreativrauschen.com/gseen.mod/.
1472 #loadmodule seen
1473
1474
1475 #### ASSOC MODULE ####
1476
1477 # This module provides assoc support, i.e. naming channels on the botnet.
1478 # You can load it by un-commenting the following line.
1479 #loadmodule assoc
1480
1481
1482 #### WIRE MODULE ####
1483
1484 # This module provides all the standard .wire commands via dcc. It is an
1485 # encrypted partyline communication tool, compatible with wire.tcl. An
1486 # encryption module must be loaded to use this module. Un-comment the
1487 # following line to load the wire module.
1488 #loadmodule wire
1489
1490 #### UPTIME MODULE ####
1491
1492 # This module reports uptime statistics to http://uptime.eggheads.org.
1493 # Go look and see what your uptime is! It takes about 9 hours to show up,
1494 # so if your bot isn't listed, try again later. The server module must be
1495 # loaded for this module to function.
1496 #
1497 # Information sent to the server includes the bot's uptime, botnet-nick,
1498 # server, version, and IP address. This information is stored in a temporary
1499 # logfile for debugging purposes only. The only publicly available information
1500 # will be the bot's botnet-nick, version and uptime. If you do not wish for this
1501 # information to be sent, comment out the following line.
1502 loadmodule uptime
1503
1504 ##### SCRIPTS #####
1505
1506 # This is a good place to load scripts to use with your bot.
1507
1508 # This line loads script.tcl from the scripts directory inside your Eggdrop's
1509 # directory. All scripts should be put there, although you can place them where
1510 # you like as long as you can supply a fully qualified path to them.
1511 #
1512 # source scripts/script.tcl
1513
1514 source scripts/alltools.tcl
1515 source scripts/action.fix.tcl
1516
1517 # This script enhances Eggdrop's built-in dcc '.whois' command to allow all
1518 # users to '.whois' their own handle.
1519 source scripts/dccwhois.tcl
1520
1521 # This script provides many useful informational functions, like setting
1522 # users' URLs, e-mail address, ICQ numbers, etc. You can modify it to add
1523 # extra entries.
1524 source scripts/userinfo.tcl
1525 loadhelp userinfo.help
1526
1527 # Use this script for Tcl and Eggdrop backwards compatibility.
1528 # NOTE: This can also cause problems with some newer scripts.
1529 #source scripts/compat.tcl
1530
1531 # A few IRC networks (EFnet and Undernet) have added some simple checks to
1532 # prevent drones from connecting to the IRC network. While these checks are
1533 # fairly trivial, they will prevent your Eggdrop from automatically
1534 # connecting. In an effort to work-around these, we have developed a couple of
1535 # TCL scripts to automate the process.
1536
1537 if {[info exists net-type]} {
1538 switch -- ${net-type} {
1539 "0" {
1540 # EFnet
1541 source scripts/quotepong.tcl
1542 }
1543 "2" {
1544 # Undernet
1545 source scripts/quotepass.tcl
1546 }
1547 }
1548 }

webmaster@eggheads.org
ViewVC Help
Powered by ViewVC 1.1.23