::+ban
###  %b+ban%b <hostmask> [channel] [%%<XdXhXm>] [comment]
   Adds a ban to the list of bans stored on the bot, with optional comment and
   ban time. This ban is stored with your handle as the creator, and will be
   in effect for every channel if no channel is specified. Prefixing a comment
   with '@' will make it only visible within the bot, and not used as the ban
   reason. Ban time has to be expressed in days, hours, and/or minutes.
 
See also: bans, -ban, stick, unstick
::+chan
### %b+chan%b <channel> [options]
    Adds a channel to the bot's channel list. If options are specified, the 
    channel will be configured with the options.
 
See also: -chan, chanset, chaninfo
::+chrec
###  %b+chrec%b <handle> [channel]
   Adds an empty channel record for the specified user so that channel lastons
   and info lines can be saved. No flags are associated with the channel.
 
See also: -chrec, chattr%{+n}, +chan, -chan
::+exempt
###  %b+exempt%b <hostmask> [channel] [%%<XdXhXm>] [comment]
   Adds an exempt to the list of exempts stored on the bot, with optional
   comment and exempt time. This exempt is stored with your handle as the
   creator, and will be in effect for every channel if no channel is specified.
   Exempt time has to be expressed in days, hours, and/or minutes.
 
See also: exempts, -exempt, stick, unstick
::+host
###  %b+host%b [handle] <hostmask>
   Adds a hostmask to a user's user record. Hostmasks are used to identify your
   handle on IRC. If a handle is not specified, the hostmask will be added to
   YOUR user record.
 
See also: -host
::+ignore
###  %b+ignore%b <hostmask> [%%<XdXhXm>] [comment]
   Adds an ignore to the list of ignores stored on the bot, with optional
   comment and ignore time. This ignore is stored with your handle as the
   creator. Ignore time has to be expressed in days, hours, and/or minutes.
 
See also: -ignore, ignores
::+invite
###  %b+invite%b <hostmask> [channel] [%%<XdXhXm>] [comment]
   Adds an invite to the list of invites stored on the bot, with optional
   comment and invite time. This invite is stored with your handle as the
   creator, and will be in effect for every channel if no channel is specified.
   Invite time has to be expressed in days, hours, and/or minutes.
 
See also: invites, -invite, stick, unstick
::+noteign
###  %b+noteign%b%{+m} [user]%{-} <ignoremask>
   Add a new ignore to the user's note ignore list.
 
See also: -noteign noteigns
::+user
###  %b+user%b <handle> [hostmask]
   Creates a new user record for the handle given. The new user record will
   have no flags, an optional hostmask, and a random pass/secpass.
 
See also: -user, +host, -host%(hub)%{+n}, newleaf
::-ban
###  %b-ban%b <banmask or number> [channel]
   Removes the specified ban from the list of bans stored on the bot. You may
   also reference the ban by the number shown by the 'bans' command.
 
See also: bans, +ban, stick, unstick
:hub:-bot
###  %b-bot%b <bot>
   This is exactly the same as %b'%d-user'%b (it removes a user record). It is
   included for convenience.
 
See also: +user, -user%{+n}, newleaf
::-chan
### %b-chan%b <channel>
     This removes ALL information about a channel from the bot. 
 
     %f*** IMPORTANT ***%f
 
     This erases ALL information about the channel, including channel settings,
     bans, exempts, invites, and channel records for users -- %bEVERYTHING%b.
 
     %bDO NOT%b use it to have the bot temporarily leave a channel. This
     command is for abandoning a channel (e.g. the channel will have to be
     redefined and all user flags for that channel will have to be redone.
 
     If you want to do this try '%dcycle' or '%ddown'
 
See also: +chan, chanset, chaninfo, cycle, down
::-chrec
###  %b-chrec%b <handle> [channel]
   Removes a channel record for the specified user, including channel lastons,
   info lines, and flags.
 
See also: +chrec, chattr
::-exempt
   Removes the specified exempt from the list of exempts stored on the bot. You
   may also reference the exempt by the number shown by the 'exempts' command.
 
See also: exempts, +exempt, stick, unstick
::-host
###  %b-host%b <hostmask>
   Removes a host from your handle.
%{+m|m}
###  %b-host%b <handle> <hostmask>
   Removes a hostmask from a user's user record.
%{-}
 
See also: +host
::-ignore
###  %b-ignore%b <hostmask/number>
   Removes the specified ignore from the list of ignores stored on the bot. You
   may also reference the ignore by the number shown by the 'ignores' command.
 
See also: +ignore, ignores
::-invite
###  %b-invite%b <hostmask or number>
   Removes the specified invite from the list of invites stored on the bot. You
   may also reference the invite by the number shown by the 'invites' command.
 
See also: invites, +invite, stick, unstick
::-noteign
###  %b-noteign%b%{+m} [user]%{-} <ignoremask>
   Remove an existing ignore from the user's note ignore list.
 
See also: +noteign noteigns
::-user
###  %b-user%b <handle>
   Removes the specified handle's user record.
 
See also: +user%(hub)%{+a}, -bot%{+n}, newleaf
:leaf:act
###  %bact%b [channel] <text>
   Performs an action on the current console channel (or otherwise
   specified channel), as if the bot did it.  Just like the /me
   command in IRC.
 
See also: console
::addlog
###  %baddlog%b <text>
   Adds your comment to the bot's logfile. Bot masters can go back later and
   review the log, and will see your comment (with your handle attached). This
   is useful for explaining confusing activity.
:leaf:adduser
###  %badduser%b [!]<nickname> [handle]
   Creates a new user record for a user on the channel, using their
   current hostname.  It's similar to a user msg'ing the bot 'hello'
   except that no information is sent to that user.  If the bot
   already knows someone by that nickname, and the user on the channel
   doesn't have a bot record, then it does the equivalent of an
   'ident' for that user -- except that, again, no information is
   sent to the user telling them that anything was done.
 
   If the user is using a different nickname than the bot normally
   knows her by, you can specify her "handle" (the nickname that the
   bot remembers).
 
   If you want to add a user using a static hostmask, prefix their nick
   with a '!'. i.e. .adduser !Lamer
 
See also: +host, -host%{+m}, +user, -user%{-}
::away
###  %baway%b [reason]
   Marks you as "away" on the party line. Your away message will show up in
   the %b'%dwho'%b list, and will be displayed to anyone who tries to send you
   a note. Your notes will be stored, and then displayed to you as soon as you
   are no longer away. Saying something on the party line will automatically
   remove your "away" status, or you can type %b'%dback'%b or %b'%daway'%b by
   itself.
 
See also: back
::back
###  %bback%b
   This marks you as no longer away on the party line.
 
See also: away
:hub:backup
###  %bbackup%b
   This makes the bot write a backup of its entire user list to the disk. 
   This is useful if you feel the need to backup the userfile and channel
   settings.
 
See also: reload, save
::bans
###  %bbans%b [[channel/all]/wildcard]
   Shows you a list of the global bans active on the current channel, and the
   list of channel-specific bans, as well as any bans that are on the channel
   but weren't placed by the bot.
 
   Here's a sample entry;
      [ 5] *!*habib@*frys.com (perm)
           paulie: revolving check policy
           Created 15:10
 
   The number (5) can be used to reference the ban if you wish to remove it
   (see %b'-ban'%b). Next is the actual hostmask being banned. The "(perm)"
   means that the ban is "permanent": that is, it doesn't automatically expire.
   If there is an elapsed time showing instead, the time displayed is how long
   the ban has been active. These types of bans expire after two hours. The
   second line of the ban entry is the comment ("revolving check policy"), and
   who set the ban (paulie). The last line shows when the ban was added, and
   possibly the last time the ban was activated on the channel (if it's
   different from the creation time).
 
   Sometimes there will be a "!" or "*" right before the number. A "!" means
   the ban is in the bot's ban list, but is not currently on the channel. A "*"
   marks a ban which is NOT in the bot's ban list but IS on the channel.
 
   If you use 'bans' without an argument, it will show you only the bans which
   are currently active on the channel. If you use 'bans all', it will show you
   every ban in the global ban list and on the channel. If you use 'bans
   <wildcard>', it will list all bans (active or not) that match against your
   wildcard. Consider it a 'bans all' list matched against your wildcard.
 
   The ban list may change according to which channel you're currently viewing
   in the console. Different bans may be active on different channels. If you
   specify a channel name, that channel will be used instead of your current
   console channel.
 
See also: -ban, +ban, console%{+m|m}, chanset, chaninfo%{-}, stick, unstick
:hub:binds
###  %bbinds%b [type/match] [all]
   Shows the Tcl bindings in effect, in a list similar to this:
      Command bindings:
        TYPE FLGS COMMAND              HITS BINDING (TCL)
        msg  -|-  rose                    0 msg_rose
        msg  -|-  go                      0 msg_go
        dcc  m|-  bind                    0 cmd_bind
        pub  -|-  gross                   0 pub_gross
   The fields should be self-explanatory, except for HITS, which records the
   number of times that binding has been called. If not, go read the file
   %b'doc/tcl-commands.doc'%b for help on the Tcl bind command. Note that the
   builtin commands are now shown. You may also specify a type of binding to
   show (i.e. %b'%dbinds msg'%b) or you can specify a wild card match (i.e.
   %b'%dbinds *seen*'%b) if you want to narrow the field a bit. The wild card
   matches will match against the TYPE, COMMAND and BINDING fields. You can
   view more binds by adding 'all' to the end of the command.
 
See also: tcl
:hub:boot
###  %bboot%b <handle[@bot]> [reason]
   Kicks a user off the party line and displays the reason, if you specify
   one. You can also specify a bot, and attempt to boot someone from another
   bot on the botnet, though it may be rejected if that bot does not allow
   remote boots. You can not boot a bot owner.
:hub:botinfo
###  %bbotinfo%b
   Requests information from every bot currently on the botnet. Each bot should
   eventually send you one line containing its version, network setting,
   channels, and uptime.
 
See also: %{+n}bottree, vbottree%{+m}, bots
:hub:bots
###  %bbots%b
   Shows the list of bots currently on the botnet.
   Example:
      Bots: cEvin, ruthie, Killa1
   There is no indication of which bots are directly connected to this current
   bot. %{+n}Use %b'%dwho'%b or %b'%dbottree'%b for that information.%{-}
 
See also: downbots%{+n}, bottree, vbottree%{-}, botinfo
:hub:bottree
###  %bbottree%b
   Shows a tree-format diagram of the bots currently on the botnet. It's just a
   nice way to get a feel for how the bots are physically connected. If 2 bots
   are sharing, a + will be indicated, or a ? if nothing is known.
 
See also: bots, downbots, botinfo, vbottree
:hub:chaddr
###  %bchaddr%b <bot> <address[:bot port[/user port]]>
   Changes the address for a bot. This is the address your bot will try to
   connect to when linking. If the bot has a separate port for bots and users,
   they should be separated  by a slash (/).
%{+a}
   It is not recommneded that this is used, you should change your source,
   and update all bots instead.
%{-}
 
See also: link
:leaf:channel
###  %bchannel%b [channel-name]
   Shows you an extensive display of the users on a channel, and
   the current channel attributes.  By default, it shows you the
   channel you are currently viewing on the console, but you can
   specify another channel if you wish.
 
   The first line will look like:
      Channel #hiya, 8 members, 45 users, mode +tn:
   This means that the bot is sitting on channel #hiya, where 8
   other irc'ers are.  There are 45 people that the bot knows by
   hostmask, and the channel mode is +tn.  If the bot isn't on
   the channel it is supposed to be on, it will say "Desiring
   channel #hiya" instead.  Next is a list of the users on the
   channel, with each entry looking like this:
       NICKNAME  HANDLE    JOIN   HOPS IDLE  USER@HOST
      @kantSF    kantSF    14:53 o 2 6m  josh@random.edu
   The "@kantSF" means that the user's nickname is kantSF and that
   he is a chanop.  The second "kantSF" is the nickname that the
   bot knows him by.  Sometimes this will differ from the nickname
   a person is using.  The time displayed is the time the user
   joined the channel.  The next field is the attributes:
      n - bot owner                      o - can get ops (+o)
      m - bot master or owner            f - channel friend
      b - another bot                    d - cannot get ops (+d)
   The last field is the user@host he is using irc from.
 
See also: status, whois
::chanset
###  %bchanset%b <channel> <settings>
   Allows you to change the channel settings (see %b'chaninfo'%b for the
   settings) for one specific channel or all channels. Use '*' to to apply the
   change to all channels.
   Changes are used until the next restart, and are saved
   whenever the userfile is saved.
 
See also: %{+n}+chan, -chan%{-}, chaninfo
::chat
###  %bchat%b <on/off>
###  %bchat%b <[*]channel number/name>
   Changes your current channel on the partyline. When you first connect to
   the partyline, it places you on channel 0 (the main party line).
   Some channels may have assigned names if the assoc module is loaded. For
   these, you can specify the channel by name instead of channel number if
   you wish.
   %b'%dchat off'%b removes you from all channels, including the main party line.
   You can still use bot commands and see the console, but you can't talk to
   anyone except via %b'%dnote'%b. %b'%dchat on'%b returns you to the main party
   line (channel 0) if you were elsewhere.
   If you prefix the channel with a '*', you will join a local channel.
 
See also: console
::chattr
###  %bchattr%b <handle> [flags] [channel]
   This lets you view and change the flags for a user.
   For example, to give Lamer the p and f flags:
      .chattr Lamer +pf
   To remove Denali from the global op list:
      .chattr Denali -o
   You may also do any combination of the above:
      .chattr Fred1 -m+xj-o
   You can also change the flags for Usagi on a specific channel by supplying
   the channel after the attributes:
      .chattr Usagi -m+dk-o #blah
   Changing global and channel specific flags within the same command line is
   also possible (global +f, +o #lamer):
      .chattr Bill f|o #lamer
   Whether or not you change any flags, it will show you the user's attributes
   afterwards. To get a list of all possible flags, see %b'%dhelp whois'%b.
   %bNOTES:%b Only the owner may add or remove the 'a' (admin) or 'n' (owner) flags.
          It is pointless to -a a permanent owner.
          You must remove the permanent owner in the binary.
 
See also: whois
:hub:chhandle
###  %bchhandle%b <oldhandle> <newhandle>
   Changes the handle of a user. For example, to change the handle of user
   'gavroche' to 'jamie', you would use 'chhandle gavroche jamie'.
 
See also: chpass%{+n}, chsecpass
::chinfo
###  %bchinfo%b <user> [channel] [info-line/none]
   Sets the information line for a user. This line is shown via the /msg
   commands %b'who'%b and %b'whois'%b. If you have set greet on, it is also
   shown when the user joins the channel. If the info line begins with an '@',
   then it is "locked", and that user may no longer change it. If the channel
   name is omitted, the default info line is changed. If you specify 'none'
   as the info-line, it will be erased.
 
See also: info
:hub:chnick
See: chhandle
:hub:chpass
###  %bchpass%b <handle> [newpassword|rand]
   Changes a user's password. If you do not specify the new password, the user
   effectively no longer has a password set. A password is needed to get ops,
   join the party line, etc. If the newpassword is 'rand', a random password
   will be used.
 
See also: chhandle%{+n}, chsecpass
:hub:chsecpass:
###  %bchsecpass%b <handle> [newpassword|rand]
   Changes a user's secpass. If you do not specify the new password, the user
   effectively no longer has a password set. A secpass is needed to auth and
   login via DCC chat. If the newpassword is 'rand', a random password
   will be used.
 
See also: chhandle, chpass
:leaf:clearqueue
###  %bclearqueue%b <queue>
   removes all msgs from the specified queue (mode/server/help/all)
::comment
###  %bcomment%b <user> <comment>
   Creates or changes the comment field for a user. The comment field can only
   be seen via 'whois' or 'match'. Non-masters cannot see the comment field.
   Using the comment 'none' will clear a user's comment.
::console:
###  %bconsole%b [channel] [modes]
   Changes your console level so that you will see only the types of console
   messages that you want to. Your current console channel is the channel (that
   the bot is on) from which you can view from the party line, and which
   channel-specific commands (like 'say' and 'op') take affect on.
 
   Valid flags are:
     %bj%b  joins, parts, quits, and netsplits on the channel
     %bk%b  kicks, bans, and mode changes on the channel
     %bm%b  private msgs, notices and ctcps to the bot
     %bp%b  public text on the channel
     %bs%b  server connects, disconnects, and notices
 
%{+m}
   Masters only:
      %bb%b  information about bot linking and userfile sharing
      %bd%b  misc debug information
      %bc%b  commands
      %bo%b  misc info, etc (IMPORTANT STUFF)
      %bw%b  wallops
 
%{+n}
   Owners only (these have to be enabled in the config file via "set raw-log"):
      %be%b  errors
      %bg%b  (getin) botnet op/invite/key requests
      %bh%b  raw share traffic
      %br%b  raw incoming server traffic
      %bt%b  raw botnet traffic
      %bu%b  warnings
      %bv%b  raw outgoing server traffic
 
%{+o|o}
   The mode can also be a modifier like '+p' or '-jk' or '+mp-b'. If you omit
   the channel and modes, your current console channel and flags will be shown.
 
%{+m|m}
###  %bconsole%b <user> [channel] [modes]
   This is used to set the console level of another user. This can even be used
   on users who normally would not be able to set their own console mode.
::cycle:
###  %bcycle%b <channel> [delay]
   Makes all linked bots cycle the specified channel. Delay defaults to 10
   seconds, which means bots will part and not rejoin for that time.
 
See also: down
::date
###  %bdate%b
   Displays the time/date in local and GMT. Also displays which time zone
   is being used by the bot for internal logging.
:hub:dccstat
###  %bdccstat%b
   Displays a table-format list of all "dcc" connections in use on the bot.
   Dcc stands for "Direct Client-to-client Communication", and Eggdrop expands
   this to cover every open socket. Any type of network connection to the bot
   is considered a "dcc" connection.
   The headings of the table are:
     %bSOCK%b  the socket number of this connection (always unique)
     %bADDR%b  the ip address mask of the host the bot is connected to, if
           applicable
     %bPORT%b  the port number being used for this connection
     %bNICK%b  the handle of the user or bot, if applicable
     %bHOST%b  the hostname corresponding to the IP address, if available
     %bTYPE%b  the type of dcc connection (see below)
   The types of connections currently possible are as follows (but more are
   being added all the time):
     %bCHAT%b  dcc-chat partyline user
     %bPASS%b  user entering dcc chat (being asked for password)
     %bSEND%b  user sending a file
     %bGET%b   sending a file to a user
     %bGETP%b  pending get (waiting for the user to acknowledge)
     %bLSTN%b  telnet listening port (in place of a hostname, it will show the
           callback procedure name, or a mask of acceptable handles)
     %bT-IN%b  incoming telnet user (being asked for handle)
     %bFILE%b  user in dcc-chat file area
     %bBOT%b   connected bot (botnet connection)
     %bBOT*%b  pending bot link (waiting for acknowledgement)
     %bRELA%b  user in relay connection to another bot
     %b>RLY%b  bot being relay'd to (one for each "RELA")
     %bCONN%b  pending telnet connection (chat, relay, bot-link, etc)
     %bNEW%b   new user via telnet (entering a handle)
     %bNEWP%b  new user via telnet (entering a password)
   In addition, 'CHAT' and 'BOT' have flags listed for each connection. Capital
   letters mean that the flag is on, and lowercase letters mean that the flag
   is off. The flags for 'CHAT' are:
     %bC%b  in file area, but allowed to return to party line
     %bP%b  party line access only
     %bT%b  telnet connection (instead of dcc chat)
     %bE%b  echo is on
     %bP%b  paging is on
     %b6%b  socket is ipv6
   The flags for 'BOT' are:
     %bP%b  ping sent, waiting for reply
     %bU%b  user-file sharing is active
     %bC%b  local bot initiated the connection
     %bO%b  user-file offered, waiting for reply
     %bS%b  in the process of sending the user-file
     %bG%b  in the process of getting the user-file
     %bW%b  warned this bot to stop hubbing
     %bL%b  leaf-only bot (not allowed to be a hub)
     %bI%b  bot is currently in the 'linking' stage
     %bA%b  bot is being aggressively shared with
   For 'CHAT' users, the party-line channel is also listed.
::debug
###  %bdebug%b
   Display a dump of memory allocation information, assuming the bot was
   compiled with memory debugging. It's useless to anyone but developers
   trying to find memory leaks.
:leaf:deluser
###  %bdeluser%b <nickname>
   deletes a user record for a user on the channel, using their
   current hostname.  Channel masters can remove users so long as
   the user isn't a bot master.
 
see also: adduser%{+m}, +user, -user%{-}
:leaf:deop
###  %bdeop%b <nickname> [channel|*]
   will remove chanop from the person you specify, so long as the
   bot is opped on that channel, and the person you specify isn't
   on the bot's list of authorized chanops. Specify * for all
   channels.
 
See also: op, console
:leaf:devoice
### %bdevoice%b <nickname> [channel|*]
    will remove the +v voice from the person you specify, so long as
    the bot is opped on that channel. Specify * for all channels.
::die
###  %bdie%b [reason]
   This kills the bot. The bot goes offline immediately, logging who issued
   the 'die' command. You shouldn't have to use this too often. If you specify
   a reason, it is logged, otherwise the reason is "authorized by <handle>".
::down:
###  %bdown%b <channel>
   All linked bots will deop themselves in the specified channel. They
   will not reop for 10 seconds.
 
See also: cycle
:hub:downbots
###  %bdownbots%b
   Shows the list of bots that are NOT currently linked to the botnet.
 
   Example:
      Down bots: cEvin, ruthie, Killa1
 
See also: bots
:leaf:dump
###  %bdump%b <text>
   dumps the text to the server.  keep in mind that this bot doesn't
   run through ircII, so ircII commands will most likely not work this
   way.  they need to be raw irc codes. read rfc1459 from ftp.internic.net
   for more help.
::echo
###  %becho%b <on/off>
   Specifies whether you want your messages echoed back to you. If it's on,
   then when you say something on the party line, it will be displayed to you
   just like everyone else will see it. If it's off, then it won't happen.
 
See also: color
::exempts
###  %bexempts%b [[channel/all]/wildcard]
   Shows you a list of the global exempts active on the current channel, and
   the list of channel-specific exempts, as well as any exempts that are on the
   channel but weren't placed by the bot.
 
   Here's a sample entry;
      ! [ 3] *!test@test.com (perm)
             Wcc: requested
             Created 01:15
 
   The number (3) can be used to reference the exempt if you wish to remove it
   (see %b'-exempt'%b). Next is the actual hostmask being exempted. The "(perm)"
   means that the exempt is "permanent": that is, it doesn't automatically
   expire. If there is an elapsed time showing instead, the time displayed is
   how long the exempt has been active. These types of exempts expire after one
   hour. The second line of the exempt entry is the comment ("requested"), and
   who set the exempt (Wcc). The last line shows when the exempt was added, and
   possibly the last time the exempt was activated on the channel (if it's
   different from the creation time).
 
   Sometimes there will be a "!" or "*" right before the number. A "!" means
   the exempt is in the bot's exempt list, but is not currently on the channel.
   A "*" marks an exempt which is NOT in the bot's exempt list but IS on the
   channel.
 
   If you use 'exempts' without an argument, it will show you only the exempts
   which are currently active on the channel. If you use 'exempts all', it will
   show you every exempt in the global exempt list and on the channel. If you
   use 'exempts <wildcard>', it will list all exempts (active or not) that
   match against your wildcard. Consider it a 'exempts all' list matched
   against your wildcard.
 
   The exempt list may change according to which channel you're currently
   viewing in the console. Different exempts may be active on different
   channels. If you specify a channel name, that channel will be used instead
   of your current console channel.
 
See also: -exempt, +exempt, console%{+m|m}, chanset, chaninfo%{-}, stick, unstick
::fixcodes
### %bfixcodes%b
     This is for use in situations where the bot gets mixed up about the type
     of connection you have with it. For example, you /CTCP CHAT the bot and
     it thinks you are connecting via telnet, and you see text displayed as
     "Local time is now [1m17:17[0m" for example instead of "Local time is
     now 17:17". Use this to turn telnet codes on or off/change the display
     mode.
::fwd
###   %bfwd%b <handle> [desto]
   This allows you to set a note forwarding address for a user,
   this means if a note needs to be stored for the user, the
   bot will attempt to pass it on to the given user@bot, if
   the bot is not online then the note is still stored locally,
   if the other user doesn't exist, the note is lost. Boohoo.
::handle
###  %bhandle%b <new-handle>
   Changes your handle on the bot. This is the handle (nickname) that the
   bot will know you as from this point forward. It is used to log into the
   bot.
 
See also: newpass%{+m}, %(hub)chhand, chpass%{+n}, chsecpass
::ignores
###  %bignores%b [wildcard]
   Shows a list of hostmasks from which the bot is currently ignoring msgs,
   notices, etc. There are two types of ignores: permanent and temporary.
   Permanent ignores never automatically expire. You must use %b'%d-ignore'%b
   to remove them.
   Here is a sample permanent ignore:
      [  1] *!*@217.156.44.184 (perm)
            Wcc: go away
            Started 523 days ago
   The number (1) can be used to reference the ignore if you wish to remove it
   (see %b'%dhelp -ignore'%b). Next is the actual hostmask being ignored. The
   "(perm)" means that the ignore is "permanent": that is, it doesn't
   automatically expire. The second line of the ignore entry is the comment
   ("go away"), and who set the ban (Wcc). The last line shows when the ignore
   was added.
   Here is a sample temporary ignore:
      [ 10] blah!blah@blah.cc (expires in 1 day)
            Wcc: requested
            Started 18:02
   Here, you see the "perm" in the parentheses next to the hostmask is instead
   an expire time. This means that the ignore will expire automatically in one
   day.
   If you use %b'%dignores <wildcard>'%b, it will list all the ignores
   that match against your wildcard.
 
See also: +ignore, -ignore
::info
###  %binfo%b [channel] [info-line]
   Sets your info line. This line is shown via the /msg commands %b'who'%b and
   %b'whois'%b. If you have set greet on, it is also shown when you joins the
   channel. If the info line begins with an '@', then it is "locked", and tou
   may no longer change it.
 
%{+m|m}See also: chinfo%{-}
:leaf:invite
###  %binvite%b <nickname> [channel|*]
   invites someone from irc into your current console channel (or
   specified other channel).  This is most useful when the channel
   is +i.  a user with the +o flag can also request an invite from
   the bot with /MSG INVITE. Specify * for all channels.
 
See also: console
::invites
###  %binvites%b [[channel/all]/wildcard]
   Shows you a list of the global invites active on the current channel, and
   the list of channel-specific invites, as well as any invites that are on the
   channel but weren't placed by the bot.
 
   Here's a sample entry;
      ! [ 3] *!test@test.com (perm)
             Wcc: requested
             Created 01:15
 
   The number (3) can be used to reference the invite if you wish to remove it
   (see %b'-invite'%b). Next is the actual hostmask being invited. The "(perm)"
   means that the invite is "permanent": that is, it doesn't automatically
   expire. If there is an elapsed time showing instead, the time displayed is
   how long the invite has been active. These types of invites expire after one
   hour. The second line of the invite entry is the comment ("requested"), and
   who set the invite (Wcc). The last line shows when the invite was added, and
   possibly the last time the invite was activated on the channel (if it's
   different from the creation time).
 
   Sometimes there will be a "!" or "*" right before the number. A "!" means
   the invite is in the bot's invite list, but is not currently on the channel.
   A "*" marks an invite which is NOT in the bot's invite list but IS on the
   channel.
 
   If you use 'invites' without an argument, it will show you only the invites
   which are currently active on the channel. If you use 'invites all', it will
   show you every invite in the global invite list and on the channel. If you
   use 'invites <wildcard>', it will list all invites (active or not) that
   match against your wildcard. Consider it a 'invites all' list matched
   against your wildcard.
 
   The invite list may change according to which channel you're currently
   viewing in the console. Different invites may be active on different
   channels. If you specify a channel name, that channel will be used instead
   of your current console channel.
 
See also: -invite, +invite, console%{+m|m}, chanset, chaninfo%{-}, stick, unstick
:leaf:jump
###  %bjump%b [server [port [pass]]]
   makes the bot jump to another server.  if you don't specify a
   server, it will jump to the next server in its internal list (see
   %b'help config'%b).  if you specify a server, it will jump to that
   server (default port is 6667), and if that server is not in the
   internal list already, it will add it (until the bot relinks).
   Jumping servers ALWAYS makes the bot lose ops! be careful!
:leaf:kick
###  %bkick%b [channel|*] <nickname> [reason]
   will kick a user off your current console channel (or specified
   other channel) with the comment given.  if you omit the reason,
   the default kick comment is "requested". Specify * for all 
   channels.
 
See also: kickban, console
:leaf:kickban
###  %bkickban%b [channel|*] [-|@]<nickname> [comment]
   kicks a user off the channel and bans her by a reasonable host-
   mask.  your nickname will be attached to the ban in the bot's
   internal ban list, and the ban will last for whatever is set in
   ban-time -- only on this channel.  use %b'%d+ban'%b for a more
   permanent ban which will be activated on every channel the bot
   monitors.  if you use a comment, that will also be attached to
   the ban in the ban list, and used as the kick comment. Specify 
   * for all channels.
     appending a prefix of ! or @ to a nickname changes the ban
   mask used:
        e.g. with a host of nick!ident@host.name.domain
 
        command        banmask
        .kickban nick  *!*dent@*.name.domain
        .kickban -nick *!*dent@host.name.domain
        .kickban @nick *!*@host.name.domain
 
        with a host of nick!~ident@host.name.domain (strict-host set to 1)
 
        command        banmask
        .kickban nick  *!*ident@*.name.domain
        .kickban -nick *!*ident@host.name.domain
 
See also: +ban, bans, stick
:hub:link
###  %blink%b [via-bot] <bot-to-link>
   Attempts to link to another hub.  This command is deprecated and not 
   recommended for use.
 
See also: unlink, newleaf%{+a}, -bot
::match
###  %bmatch%b <attr> [channel] [[start] limit]
   This displays all user records with the attributes requested.
   "attr" is of the form:  <+/-><global>[&/|<channel>[&/|<bot>]]
   Specifying "&" as the separator will cause AND style matching.
   For example:
      .match p&o
   This will match all users with both the "p" global flag and the "o" channel
   flag on your current console channel.
   Specifying "|" as the separator will cause OR style matching.
   For example:
     .match p|o
   This will match all users with either the "p" global flag or the "o" channel
   flag on your current console channel. If you specify a channel, it will be
   used instead of the current console channel.
   For example:
     .match p|o #eggdrop
   This will match all users with either the "p" global flag or the "o" channel
   flag on the channel #eggdrop. You can also match bot flags.
   For example:
     .match o|o|h
   This will match all bots with either the "o" global flag, the "o" channel
   flag on the current console channel, or the "h" botflag. You can also limit
   the number of total results returned by specifying a limit at the end of the
   command. A starting point can also be specified.
   For example:
     .match p&o #eggdrop 16 25
   This would show results 16 through 25 matching any users with the "p" global
   flag or the "o" channel flag on #eggdrop.
###  %bmatch%b <wildcard-string> [[start] limit]
   This displays all user records where the user's handle or any of the user's
   hostmasks match the specified wildcard string. You can also limit the number
   of total results returned by specifying a limit at the end of the command. A
   starting point can also be specified.
   For example:
     .match *.edu 16 25
   This would show results 16 through 25 matching any users with a hostmask
   that ends with ".edu".
::me
###  %bme%b <text>
   Performs an action on the party line. This appears as "* Wcc is leaving",
   etc.
::motd
###  %bmotd%b %{+m}<message>%{-}
   This redisplays the partyline Message Of The Day, which was shown when you
   first joined the partyline.%{+m} Inclue a message to set the motd.
:leaf:msg
###  %bmsg%b <nickname> <text>
   sends a private message to someone from the bot, just as if the
   bot had typed /msg.
 
%{+n}See also: netmsg%{-}
::newpass
###  %bnewpass%b <password|rand>
   Changes your password on the bot. This is similar to the '/msg <bot> pass'
   command, except you don't need to specify your old password. If the 
   newpassword is 'rand', a random password will be used.
 
 
%(hub)%{+m}See also: chpass%{+n}, chsecpass
::nick
See: handle
::note
###  %bnote%b <nickname[@bot]> <message>
   Sends a private note to a user on the partyline. If that user is currently
   logged in and not marked as away, the message will be received immediately.
   Otherwise, it will be stored and displayed the next time that user joins the
   partyline. To send a note to someone on a different bot, add "nick@bot" to
   the nickname.
 
See also: whom, notes
::noteigns
###  %bnoteigns%b%{+m} [user]%{-}
   List all note ignores. All notes sent from users who match one of the
   ignore masks will be rejected.
 
See also: +noteign -noteign
::notes
###  %bnotes index%b
###  %bnotes read%b <# or ALL>
###  %bnotes erase%b <# or ALL>
   lets you manipulate notes that have been stored up for you while
   you were gone.  %b'notes index'%b gives a listing of all the notes
   stored up: who they are from, and when they were left.
   %b'notes read'%b lets you read some or all notes, according to a
   list of numbers and/or intervals separated by semicolon.
   and %b'notes erase'%b erases notes after you are done with them.
     ex: notes erase 2-4;8;16-
 
See also: note, whom, noteigns
:leaf:op
###  %bop%b <nickname> [channel|*]
   will grant chanop to the person you specify, so long as the bot
   is opped on that channel, and the person you specify isn't being
   actively deopped by the bot. Specify * for all channels.
 
See also: deop, console
::page
### %bpage%b <number/off>
   This allows you to slow down the number of lines the bot sends you at once
   via the partyline. When enabled, any commands that send greater than the
   specified number of lines will stop when that number is reached and wait for
   you to type another command (or press enter) to continue. If you have too
   many pending lines, you may be booted off the bot.
::quit
###  %bquit%b [comment]
   This disconnects you from the partyline. If you specify a comment, it will
   be displayed to other partyline users as you leave.
::randstring
###  %brandstring%b <len>
   Displays a random string of length 'len'
::relay
###  %brelay%b <botname>
   Relays you via telnet to another bot, whether or not it is currently linked.
   The local bot must, however, have a bot record for the bot you wish to
   relay to. Typing .quit or "*bye*" on a line by itself will end the relay.
 
See also: bots%{+n}, newleaf%{+a}, -bot
::reload
###  %breload%b
   Reloads the bot's user file, discarding any changes made since the last
   %b'%dsave'%b command or hourly user file save. Sharebots should probably
   never do this.
 
See also: save
:leaf:reset
###  %breset%b [channel]
   clears out the bot's channel information and makes it gather the
   information from the server all over again, as if it had just
   joined that channel.  it's not really useful much, but could be
   if an odd bug causes the channel information to get scrambled.
   unfortunately this command used to get a lot of use.  you can omit
   the channel name to make it reset ALL channels.
:leaf:resetbans
###  %bresetbans%b [channel]
   resets the bot's ban list for the channel. any bans on the channel
   that aren't in the ban list (either the global list or the local
   channel ban list) will be removed, and if there are any bans in the
   global ban list or channel ban list that are not currently on the
   channel, they will be added.
 
See also: bans, console%{+m|m}, reset
:leaf:resetexempts
###  %bresetexempts%b [channel]
   resets the bot's exemption list for the channel. this command
   behaves exactly like resetbans, except it is for exempts.
 
See also: resetbans, resetinvites
:leaf:resetinvites
###  %bresetinvites%b [channel]
   resets the bot's invitation list for the channel. this command
   behaves exactly like resetbans, except it is for invites.
 
See also: resetbans, resetinvites
::restart
###  %brestart%b
   Restarts the Tcl interpreter, wipes all timers, reloads all modules, and
   reloads the config file for the bot (which resets any changes made via the
   %b'%dset'%b command and reloads any Tcl scripts your config loads). As with
   the %b'%drehash'%b command, it also saves and reloads the user file from disk.
 
See also: reload, save
:hub:save
###  %bsave%b
   This makes the bot write its entire userfile to disk. This is useful if you
   think the bot is about to crash or something, since the user file is only
   written to disk about once an hour.
 
See also: reload, backup
:leaf:say
###  %bsay%b [channel] <text>
   dumps the text to your current console channel (or other specified
   channel), as if the bot "said" it.
::secpass:
###  %bsecpass%b <password|rand>
   Changes your secpass on the bot. This is used for Authing via /msg
   and for DCC. If the password is 'rand', a random password will be used.
 
%(hub)%{+m}See also: chpass%{+n}, chsecpass
:leaf:servers
###  %bservers%b
   lists the servers that the bot has in its server list.  this is
   the list it rotates through when changing servers.  it starts
   with a static list which it loads from its config-file when the
   bot is booted up.  after that, you can add servers with the
   %b'%djump'%b command.  the server list will indicate which server the
   bot is currently on.
::simul
###  %bsimul%b <handle> <text>
   This allows you to simulate the specified handle typing the given text.
   For example:
      %dsimul dweeb%d.quit
   This would appear just as if "dweeb" typed "%dquit". This command will not
   work unless eggdrop has simul enabled in the config file. 
 
See also: su
::status
###  %bstatus%b
###  %bstatus all%b
   Displays a condensed block of status information about the bot.
   is running. For example:
      [01:15] #Wcc# status
      I am Anakha, running eggdrop v1.6.16+stripping:  171 users (mem: 315k)
      Online for 14 days, 02:50  (background)  CPU 71:29  cache hit 40.3%
      Admin: Wcc
      Config file: eggdrop.conf
      OS: FreeBSD 4.8-RELEASE-p1
      Tcl library: /usr/local/lib/tcl8.4
      Tcl version: 8.4.2 (header version 8.4.2)
      Loaded module information:
          Channels: #|DAWG|Net, #|DAWG|Tcl
          Online as: D|Anakha!wcc@cia.nu (|DAWG|Anakha - |DAWG|Net)
          Server irc.inet.tele.dk:6667 (connected for 11 days)
          #|DAWG|Net:  6 members, enforcing "+istn" (lurking)
          #|DAWG|Tcl: 42 members, enforcing "+tn" (lurking)
 
 
   The first line tells you the bot's name, what version of Eggdrop it's
   running, the number of users the bot has records of, and the amount of
   memory being used by the userfile. The second line tells you the uptime of
   the bot, CPU time, and cache hit. The third shows the bot's admin, and the
   forth shows its current config file. The fifth line shows what operating
   system the bot is running on. The next two lines show Tcl information. If
   debug mode is enabled, additional info may be shown. Sharing information
   will also be shown if it's being used.
 
   Select information from modules will be displayed after the core
   information. If you use %b'%dstatus all'%b instead, you will see all status
   information available from loaded modules.
 
See also: channel, channels%{+a}, debug
::stick
###  %bstick%b [ban/exempt/invite] <hostmask/number> [channel]
   Makes a ban, exempt, or invite "sticky". This means that the bot will always
   try to keep it active on the channel. Obviously, if the channel isn't using 
   dynamic bans, this has no effect.
 
See also: bans, exempts, invites, unstick, +ban, +exempt, +invite
::store
###  %bstore%b
   Stores your console settings so that they are restored automatically the
   next time you join the party line. ('console' calls this auto)
 
See also: console
::strip
###  %bstrip%b [modes]
   Allows you to remove embedded 'attribute' codes your partyline output. Valid
   options are:
      %bb%b - remove all boldface codes
      %bc%b - remove all color codes
      %br%b - remove all reverse video codes
      %bu%b - remove all underline codes
      %ba%b - remove all ANSI codes
      %bg%b - remove all ctrl-g (bell) codes
   The mode can also be a modifier like '+c' or '-bu' or '+ru-c'. If
   you omit modes, it will show your current setting.
 
See also: fixcodes, color, echo
%{+m}
###  %bstrip%b <user> [modes]
   Set the strip level of another user. A master can't set their own strip
   flags without prefixing the modes with a '+' or '-'.
::su
###  %bsu%b <user>
   Lets you assume the identity of another user. If you are a global owner,
   this does not require a password. Otherwise, you will be asked for the
   user's password. %b%dquit%b returns you to your original handle.
:leaf:topic
###  %btopic%b <text>
   changes the channel's topic, assuming the bot is a chanop or the
   channel is not +t (uses your current console channel).
 
See also: console
:hub:trace
###  %btrace%b <bot>
   Sends out a trace signal to another bot. If/when the trace signal returns,
   (and it should!) you will get an output that looks something like this:
      Trace result -> Valis:Stonewall:NoBoty:SomeBoty
 
   This is a list of the bots connected between you and the destination bot.
   It should also return the time in seconds taken for the trace to occur.
 
See also: bots, bottree, vbottree
::traffic
###  %btraffic%b
   Shows total and daily net traffic stats since the last %b'%drestart'%b.
   Stats groups are IRC, Botnet, Partyline, Transfer.mod and Misc.
 
%{+m}See also: restart
::unlink
###  %bunlink%b <bot|*>
   This disconnects the specified bot from the botnet (assuming it was linked
   in the first place). Some bots (sharebots in particular) might not allow you
   to unlink them. If "*" is specified as the parameter, all bots will be
   unlinked.
 
See also: %{+n}link, %{-}bots, downbots%{+n}, newleaf, bottree, vbottree
::unstick
###  %bunstick%b [ban/exempt/invite] <hostmask/number> [channel]
   Makes a "sticky" ban, exempt, or invite normal again.
 
See also: bans, exempts, invites, stick, -ban, -exempt, -invite
::uptime
###  %buptime%b
   Displays the bot's current uptime.
 
See also: status
:hub:vbottree
###  %bvbottree%b
   Shows a tree-format diagram of the bots currently on the botnet, along with 
   their internal version number. 
 
See also: bots, downbots, botinfo, vbottree
:leaf:voice
###  %bvoice%b <nickname> [channel|*]
    will give a +v voice to a person you specify, so long as the
    bot is opped on that channel. Specify * for all channels.
 
See also: devoice
::whoami
###  %bwhoami%b
   Shows your current handle and to what bot you are connected.
 
See also: whom
::end
