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

Annotation of /eggdrop1.8/eggdrop.conf

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


Revision 1.5 - (hide 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 simple 1.1 #! /path/to/executable/eggdrop
2     # ^- This should contain a fully qualified path to your Eggdrop executable.
3     #
4 pseudo 1.5 # $Id: eggdrop.conf,v 1.4 2010/09/27 19:38:11 pseudo Exp $
5 simple 1.1 #
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 thommey 1.3 #set env(TZ) "$timezone$offset"
53 simple 1.1
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 pseudo 1.2 # 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 pseudo 1.5 # Note that eggdrop will accept IPv4 connections with IPv6 sockets too.
72 pseudo 1.2 #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 simple 1.1
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 pseudo 1.5 # You can setup a SSL port by prepending a plus sign to it:
280     #
281     # listen +5555 all
282     #
283 simple 1.1 # 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 pseudo 1.5 ##### 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 simple 1.1 ##### 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 pseudo 1.2 # 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 simple 1.1 #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 pseudo 1.4 # 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 simple 1.1
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 pseudo 1.5 # 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 simple 1.1 # 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 pseudo 1.5 # Prefix the port with a plus sign to attempt a SSL connection:
986     # server:+port[:password]
987 pseudo 1.2 # If you need to specify a numeric server IPv6 address, use following format:
988     # ip,[port[:password]]
989 simple 1.1 #
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 pseudo 1.2 2001:db8:618:5c0:263::,6669:password
997 pseudo 1.5 ssl.example.net:+6697
998 simple 1.1 }
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