1 |
Features of Eggdrop 1.4.X |
2 |
------------------------------------------------------------------------ |
3 |
|
4 |
EGGDROP -- AN IRC BOT |
5 |
|
6 |
Eggdrop is the most advanced IRC robot available. It has been under |
7 |
development since December 1993, and, unlike most other bots, it is still |
8 |
regularly updated. Its features include: |
9 |
|
10 |
|
11 |
* completely different channel user lists like having a seperate bot for |
12 |
each channel. |
13 |
* complete channel protection, customizable via config file: permanently |
14 |
store a ban list with comments, etc |
15 |
* user records saved on disk and alterable via dcc chat: each user can |
16 |
have a password (encrypted), a list of valid hostmasks, a set of |
17 |
access flags, etc |
18 |
* the ability to "learn" new users (if you choose to have the bot do so) |
19 |
by letting users /MSG the bot "hello" and granting them automatic |
20 |
access of whatever type you specify (or even no access at all) |
21 |
* a "party line" available through dcc chat or telnet, with multiple |
22 |
channels, giving you the ability to talk to people without being |
23 |
affected by netsplits |
24 |
* console mode: you can view each channel through dcc chat or telnet, |
25 |
selectively looking at mode changes, joins and parts, channel talk, or |
26 |
any combination of the above |
27 |
* a file system where people can upload and download files, in an |
28 |
environment that looks and acts (for the most part) like a typical |
29 |
unix system -- plus the ability to mark directories as hidden / |
30 |
unaccessable to people without certain user flags |
31 |
* bot network: link two or more bots together for a party line that can |
32 |
stretch not only across channels, but across irc networks (one bot on |
33 |
EFnet, one bot on Undernet, etc) |
34 |
* script language: commands and features can be added to the bot on the |
35 |
fly, by means of the TCL script language, giving you the power of |
36 |
TOTAL customization of your bot -- similar to ircII script |
37 |
|
38 |
!!! WARNING !!! |
39 |
|
40 |
Eggdrop is NOT a simple bot to use. It is an advanced bot for people who |
41 |
know IRC and know what they're doing. If you don't know what DCC CHAT is or |
42 |
how to use it -- if you don't know the difference between #channels and |
43 |
&channels -- if you don't know what a clonebot or CTCP avalanche is -- then |
44 |
this bot is not for you. Choose a simpler bot like Vladbot or Baloobot or |
45 |
ComBot, or find one of the many scriptbots to use. |
46 |
|
47 |
This is the 1.4.xx branch of the Eggdrop Bot. |
48 |
|
49 |
*** NOTE: |
50 |
|
51 |
This bot is NOT intended for users of very limited MEMORY or DISK shell |
52 |
accounts. The development of this latest design of Eggdrop is geared |
53 |
towards features and flexibility. If you have restraints on the resources |
54 |
allowed to run your bot, then you should instead consider the 1.0 Eggdrop |
55 |
version. |
56 |
|
57 |
*** |
58 |
|
59 |
This latest development of Eggdrop is now compilable in either of two |
60 |
configurations: |
61 |
|
62 |
MODULE - dynamic |
63 |
|
64 |
The MODULE version of Eggdrop 1.4.xx provides for the on-the-fly loading of |
65 |
extensions to the bot code without having to recompile the entire bot. This |
66 |
is available on OS platforms which support dynamically linked/shared |
67 |
libraries in their run-time and TCL libraries. It allows for functionality |
68 |
of the bot to be loaded and unloaded at any time. |
69 |
|
70 |
The base loadable modules distributed with this Eggdrop version are: |
71 |
|
72 |
|
73 |
* assoc This is the functionality of the `assoc' command for naming |
74 |
party `chat' lines. It also serves as an example for writing your own |
75 |
modules. |
76 |
* blowfish The standard Eggdrop encrypting routines for passwords and |
77 |
other encrytions. This can be replaced with a user-written module to |
78 |
perform their own encrypting algorithms. |
79 |
* channels This allows eggdrop to have channel info stored and used on |
80 |
that server that you allowed for with the server module. |
81 |
* console This provides storage of console settings when you exit the |
82 |
bot (or .store). |
83 |
* ctcp This provides the normal ctcp replies that you'd expect. |
84 |
* filesys This module performs the file-system operation for DCC file |
85 |
transfers to and from the BOT over via IRC DCC commands. |
86 |
* irc This controls all other irc related stuff. Not loading it is the |
87 |
equivalent of the old NO_IRC setting. |
88 |
* notes This provides support for storing of notes for users from each |
89 |
other. Notes between currently online users is supported in the core, |
90 |
this is only for storing the notes for later retrieval, direct |
91 |
user->user notes are built-in. |
92 |
* seen This provides seen commands via msg, on channel or via dcc, |
93 |
similar to the various scripts. |
94 |
* server This allows eggdrop to connect to a server, but that's about |
95 |
it. |
96 |
* share This provides the userfile sharing support (this requires the |
97 |
channels & transfer modules). |
98 |
* transfer This module performs the bot-to-bot userfile sharing |
99 |
necessary for sharebots. It is loaded automatically when filesys is |
100 |
loaded. |
101 |
* wire This provides an encrypted partyline communication. |
102 |
* woobie This is a example/skeletal module for writing your own module. |
103 |
|
104 |
MODULE - static |
105 |
|
106 |
The STATIC-MODULE version of Eggdrop 1.4.xx is pretty much the same as the |
107 |
module bot, except each individual module is linked into the excutable. You |
108 |
still need to 'loadmodule <module>' to turn them on. |
109 |
|
110 |
See the file MODULES for more specific MODULE information. |
111 |
New to 1.4.xx (applies to 1.3.xx also): |
112 |
|
113 |
**** BOTNET |
114 |
|
115 |
Major protocol changes, lots less messages & bytes used. |
116 |
|
117 |
You WILL get double messages if you link OLD<->NEW<->NEW<->OLD (or any |
118 |
number of NEW's between them). |
119 |
To prevent this, have all your new bots on 1 side of the botnet, and all |
120 |
the old ones on the other (although OLD<->NEW<->OLD should be ok). |
121 |
|
122 |
The order of the version and handshake messages has reversed this means on |
123 |
a new botlink between an OLD & a NEW, but you must .link from the OLD or |
124 |
the NEW wont know the password. |
125 |
|
126 |
**** USERLIST |
127 |
|
128 |
If you want to have the option of going back to an old version SAVE your |
129 |
userlist!! This is a new version userlist, and it's not backwards |
130 |
compatible once written (it can still READ old userlists take note). |
131 |
|
132 |
**** FLAGS |
133 |
|
134 |
Flags have multiplied & split up: normal user/channel flags still exist and |
135 |
are setable by .chattr. You can also now use .chattr +o|-o #channel. New |
136 |
are the "user-defined" flags which are all of A-Z for users & channels. |
137 |
Also, bot attributes are seperated now and are set using .botattr. Bots |
138 |
have "user-defined" flags 0-9. The old 0-9 user defined flags will be |
139 |
converted to A-J when you upgrade your userfile. |
140 |
|
141 |
**** SHARING |
142 |
|
143 |
*BIG CHANGE* well, big in use, small in code ;) |
144 |
|
145 |
There are now 2 sharing flags, +p = passive share, +s = aggressive share. |
146 |
Your bot will only accept sharing with passively with 1 bot at a time, |
147 |
although any number of aggressive shares is fine. |
148 |
|
149 |
Consider the botnet: |
150 |
|
151 |
HubBotA |
152 |
|-+LeafBotA |
153 |
`-+HubBotB |
154 |
|-+LeafBotB |
155 |
`-or `-+LeafBotC |
156 |
|
157 |
Flags would be set as such: |
158 |
|
159 |
HubBotA has: |
160 |
LeafBotA: +sl |
161 |
HubBotB : +s |
162 |
LeafBotC: +sl |
163 |
LeafBotA has: |
164 |
HubBotA : +ph |
165 |
HubBotB has: |
166 |
LeafBotB: +sl |
167 |
LeafBotC: +sl |
168 |
LeafBotB has: |
169 |
HubBotB : +ph |
170 |
LeafBotC has: |
171 |
HubBotB : +ph |
172 |
HubBotA : +ph |
173 |
|
174 |
how's that look? :) |
175 |
|
176 |
**** Installation |
177 |
|
178 |
make install DEST=<directory> |
179 |
|
180 |
------------------------------------------------------------------------ |
181 |
(c) 1997 Robey Pointer |
182 |
(c) 2000 Eggheads Development Team |