Built in levels:
Level 10: Partyline user.
User below this level can not DCC CHAT the mech.
Level 70: Channel master.
User can get the mech to join new channels by inviting it.
Level 80: Bot master.
User may change protected topics, enforced modes, is not checked for massmodes/masskicks/clones/revenge kick, can remove passwords with SETPASS, always gets ctcp ping replies and is not affected by PROT levels of other users.
Level 100: Owner.
Superuser, what can he *not* do?
Level 200: Bot.
Bots can not execute commands by /msg or in any other way. Is also unaffected by massmodes/kicks/clones/revenge, etc...
Only bots added with botlevel (200) will be autoopped as a responce to NEEDOP across network links with other bots. Protection level can be 0 through 4 where the specific levels are as follows:
0 No protection.
1 Reop/unban, do nothing to offender.
2 Reop/unban, deop offender.
3 Reop/unban, kick offender.
4 Reop/unban, kickban offender.
Protection must be toggled on for a channel for anything to happen.
See also: USER

Usage: ACCESS [channel] [nick|userhost]

Show someones access level. If no arguments are given, the bot
will display your access level.
See also: USTATS, USERLIST

Usage: ADD <handle> <channel> <nick|userhost> <level> [aop] [prot] [pass]

Adds a user on all channels (*) or a certain channel. The handle is
used reference the user in other commands.
level Can be between 0 and 100, or 200 for bots.
aop Either 0 or 1 (0 = no, 1 = yes)
prot Can be 0 through 4. See "HELP protection" for information
on protection levels.
pass Assigns the person a password.
Note: If no arguments are given except the userlevel, all others are
assumed to be 0 with no password.
See also: DEL, HOST, LEVELS

Usage: ADDSERVER <host> [port]

Adds a server to the EnergyMechs internal server list.
If no port is given, the default of 6667 is used.
See also: SERVER, SERVERLIST, DELSERVER

Usage: AWAY [message]

Sets the bot away. If no message is specified, previous
away status and message is removed.

Usage: BAN [channel] <nick|mask>

Ban a user on a channel. If a mask is given,
a ban using the mask will be placed.
See also: UNBAN, SITEBAN, KB, SCREW

Usage: BANLIST [channel]

Show the banlist for a channel.
See also: BAN, UNBAN

Usage: BYE

Ends the current DCC session
See also: CHAT

Usage: CCHAN [channel]

Return or set the current channel.
See also: JOIN, PART, CHANNELS

Usage: CHACCESS <command> [level]

Changes the level needed to do a command.
See also: LOADLEVELS, SAVELEVELS

Usage: CHANNELS

Lists the channels the bot is active on.
See also: JOIN, PART, FORGET

Usage: CHAT

Make the bot DCC chat you.

Usage: CLEARSHIT

Clears the shitlist.
See also: RSHIT, SHIT

Usage: CLVL <handle> <level>

Changes the level of a user.
See also: ACCESS

Usage: CMD [=botnick] <command>

Send a command to linked bots. You can specify a single
bot to execute the command. Authentication is done on
target bot(s), not the bot you send the command from.
See also: LINK

Usage: CMDCHAR

Tells you what the bots current command char is.

Usage: CORE

Shows core information about the bot.
See also: VER, UPTIME, ONTIME

Usage: CSERV

Shows current server the bot is connected to.
See also: SERVERLIST, NEXTSERVER, SERVER

Usage: CTCP <nick|channel> <request>

Send a CTCP request to a user.

Usage: CYCLE <channel>

Quickly part and rejoin a channel.
See also: JOIN, PART

Usage: DEBUG

Writes debug information out to file.

Usage: DEL <handle>

Deletes someone from the bots userlist.
See also: DEL, HOST, USERLIST

Usage: DELSERVER <servername> [port]

Deletes a server from mechs internal server list.
If no port is given, it searches for a matching
server, ignoring port number unless there are
several servers in the list that matches, in which
case a port must be specified.
See also: SERVERLIST, ADDSERVER

Usage: DEOP [channel] <nick>

Deop a user or users matching the given mask on
a certain channel. With a mask, only users with
access below the MAL setting are affected.
See also: DOWN, OP, MODE

Usage: DIE [reason]

Kills the bot. If session file is in use, use the
SHUTDOWN command instead to preserve the configurations
for all bots. If DIE is used, the killed bot(s) will
not be saved to the session file.
See also: RESET, REHASH, SHUTDOWN

Usage: DO <raw_irc>

Sends raw commands to the server.
Example: DO PRIVMSG #eggdrop :yer all lame, except guppy =)

Usage: DOWN [channel]

Deop you on a channel.
See also: DEOP, UP, MODE

Usage: ECHO <on|off>

Turns on and off partyline echoing of your own messages.
See also: CHAT

Usage: ESAY [channel] <text>

Works like SAY with some enhancements. As the bot parses the text
it replaces predefined variables with their current value:
$cc Current channel
$channels Channels
$on Ontime
$time Current time
$tog(x) Show current setting for toggle "x"
$up Uptime
$ver EnergyMech version
$links Show active links
See also: SAY

Usage: FORGET <channel>

Deletes a channel from memory
See also: PART, JOIN

Usage: HELP [topic|command|level|pattern]

Online help system.
<topic> Shows help about a specific topic.
<command> Displays help entry for specified command.
<level> Displays all commands available at a specified level.
<pattern> Shows all help entries matching the pattern.
If no argument is given, all available commands available are
listed grouped by access level.
See also: USAGE

Usage: HOST <ADD|DEL> <handle> <mask>

Add or delete usermasks for a user.
See also: ADD, DEL

Usage: IDLE <nick>

Show how long a person has been idle.
See also: SHOWIDLE

Usage: INSULT [nick|channel]

Send a random insult to a user or channel.
See also: PICKUP

Usage: INVITE [channel] [nick]

Invite someone to a certain channel. If no nick is given,
it defaults to inviting you.

Usage: JOIN <channel> [key]

Makes the bot join a channel
See also: CYCLE, PART

Usage: KB [channel] <nick> [reason]

Kickban a user from a channel.
See also: BAN, KICK, SCREW, SHIT

Usage: KICK [channel] <nick> [reason]

Kick a user from a channel.
See also: KB, SCREW, SHIT

Usage: KS <channel> <"string to kick on"> <"kick reason">

Adds a kicksay...the bot kicks users when they say the words
See also: KSLIST, RKS

Usage: KSLIST

Shows the kicksay list
See also: KS, RKS

Usage: LAST [number of commands]

Shows the last commands done, and who did them
Default is 10, and goes up to 20

Usage: LINK [<UP|DOWN|ADD|DEL|PORT> <...>]

LINK with no arguments lists all known entities.
UP <entity> Try to link to <entity>
DOWN <entity> Unlink <entity>
ADD <entity> <pass> <host> <port>
Add an entity to the list of known entities.
DEL <entity> Remove an entity from the list of known entities.
PORT <linkport> Change the linkport.
See also: CMD

Usage: LINKS

Gives you a list of active servers on the network
See also: STATS

Usage: LOAD

Loads everything that can be loaded
See also: SAVE, LOADLEVELS, LOADLISTS

Usage: LOADLEVELS

Loads the levels list
See also: SAVELEVELS, LOAD

Usage: LOADLISTS

Loads the userlist/shitlist file
See also: SAVELISTS, LOAD

Usage: LUSERS

Same as the irc command /lusers
See also: STATS

Usage: ME [channel] <action>

Make the bot do an action on a certain channel
See also: SAY, ESAY, MSG

Usage: MODE <channel> <modes>

Set or unset channel modes.
See also: OP, DEOP, VOICE, UNVOICE

Usage: MSG <nick|channel> <message>

Send a message to a person or channel.
See also: SAY, ESAY, ME

Usage: NAMES [channel]

Shows names on the specified channel
See also: WHO

Usage: NEXTSERVER

Makes the bot go to the next server in the serverlist
You can also do 'kill -USR1 <mech_pid>' in the shell
to make it switch server.
See also: SERVER, ADDSERVER, SERVERLIST

Usage: NICK <nick>

Changes the nick of the bot. If the nick given is already
in use, the bot will not change its nickname until the
occupied nick is available.

Usage: ONTIME

Shows time connected to current server.
See also: UPTIME

Usage: OP [channel] [nick|mask]

Op someone on a given channel. Defaults to opping
you in the channel where the command is given.
See also: UP, DEOP, MODE

Usage: PART <channel>

Makes the bot leave a certain channel. To purge the channel
completely from memory, use the FORGET command once it has
parted.
See also: JOIN, FORGET

Usage: PASSWD [oldpassword] <newpassword>

Changes your password on the bot. The oldpassword parameter only
has to be given if a password is already set.
Note: Passwords are case-sensitive and are encrypted so not even
bot runners will know your password.
See also: SETPASS

Usage: PICKUP [nick|channel]

Send a random pickup line to a user or channel.
See also: INSULT

Usage: QSHIT <nick> [reason]

Quick shit. Uses preset defaults for channel and shitlevel.
See also: SHIT, RSHIT, SHITLIST

Usage: REHASH

Reloads the bot
See also: RESET, DIE

Usage: REPORT

Gives you a detailed report on the bot, what
Toggles are on, Sets, etc. You can get more
detailed information on a particular tog/set
with HELP SETxxx or HELP TOGxxx, xxx being the
name of the set or toggle.
See also: SET, TOG

Usage: RESET

Restarts the bot completely. Same as killing the bot
and restarting it from the shell.
See also: REHASH, DIE

Usage: RSK <channel> <pattern of words banned>

Removes a kicksay
See also: KS, KSLIST

Usage: RSHIT <channel> <nick|userhost>

Removes someone from the shitlist
See also: SHIT, SHITLIST

Usage: RSPY <channel> [nick|channel]

Stop spying on a certain channel
Note: If a nick or channel is given at the end...that person/channel
will be removed from spying
See also: SPY, SPYMSG, SPYLIST

Usage: RSPYMSG [nick]

Stop redirecting private messages teh bot receives
Note: If a nick is given, that person will be removed from
receiving the private messages
See also: SPYMSG, SPY, SPYLIST

Usage: RSTATMSG

Turns off stat messages in the partyline.
See also: STATMSG, SPYLIST

Usage: RT <channel>

Sets a random topic.
See also: TOPIC

Usage: SAVE

Saves the entire enchilada.
See also: LOAD, SAVELEVELS, SAVELISTS

Usage: SAVELEVELS

Saves the level list
See also: LOADLEVELS, SAVE

Usage: SAVELISTS

Saves the userlist/shitlist file
See also: LOADLISTS, SAVE

Usage: SAY <channel> <message>

Send a message to a channel.
See also: ME, ESAY, MSG

Usage: SCREW [channel] <nick> [reason]

Kickban a user on a channel and place two bans using
randomized masks.

Usage: SEEN <nick>

Information on when someone was last seen by the bot.

Usage: SERVER <servername> [port] [login] [ircname]

Makes the bot switch servers. You can also specify
a new login and ircname for the bot.
See also: CSERV, NEXTSERVER, SERVERLIST

Usage: SERVERLIST

Shows the serverlist.
See also: SERVER, ADDSERVER, CSERV

Usage: SERVICE <ADD|DEL> [channel] <to> <message>

SERVICE LIST [<channel>|LOGIN]
Controls and displays the way the bot interacts
with IRC services.

Usage: SET [channel] <setting> <value>

Change a setting. If * is entered for channel,
all channels will be set to this setting.
See also: TOG, REPORT

Usage: SETPASS <handle> <password>

Sets the password for a user
See also: VERIFY, PASSWD

Usage: SHIT <channel> <nick|userhost> <level> [expire] <reason>

Shitlists someone on all channels (*) or a certain channel
Level - can be 1 through 3
1 - doesn't let the person be opped or voiced
2 - will kb the person
3 - rebans the person when unbanned by anyone
Expire - the number of days the shitlist will be good for (default is 30)
Reason - reason for the shitlist...displays it on kickban
Note: The bot checks for shitlisted users on join, nick switch, and
when the bot is opped
See also: RSHIT, QSHIT, SHITLIST

Usage: SHITLIST

Shows the bots shitlist.
See also: SHIT, RSHIT, QSHIT, SHITLVL

Usage: SHITLVL <channel> <nick|userhost> <newlevel>

Changes the shitlist level on the specified person
See also, SHIT, RSHIT, SHITLIST

Usage: SHOWIDLE [seconds]

This will show how long people are idle
If a number of seconds is given, it will only show people
idle for more than that amount of time
See also: IDLE

Usage: SHUTDOWN

Kills all bots and exits. The mech will have to be restarted
manually hand if you want it to return. If a crontab entry
exists to keep the bot running, it will restart the bot once
cron runs it.
If a session file is in use, SHUTDOWN is the proper method
to kill the process. DIE will delete the killed bot(s) from
the session file.
See also: DIE, RESET

Usage: SITEBAN [channel] <nick|userhost>

Sitebans someone on a certain channel
See also: BAN, SCREW, SHIT

Usage: SITEKB [channel] <nick> [reason]

Sitekickbans someone on a certain channel
See also: KB, SCREW, SHIT

Usage: SPY <channel> [channel]

Spy on a certain channel
Note: if a channel is given at the end...the bot will redirect
to that channel instead of to you
See also: RSPY, SPYMSG, SPYLIST

Usage: SPYLIST <channel>

Shows who's spying on a certain channel
See also: SPY, SPYMSG

Usage: SPYMSG

Redirects private messages the bot receives
See also: RSPYMSG, SPY, SPYLIST

Usage: STATMSG

Turn on partyline status messages.
See also: RSTATMSG

Usage: STATS <type> [servername]

Show server status lines.
See also: LINKS, LUSERS

Usage: UNVERIFY

De-Authenticates you on all channels.
See also: VERIFY

Usage: TIME

Show current time (where the bot is)
See also: UPTIME, ONTIME

Usage: TOG [channel] <toggle> [0|1|ON|OFF]

Toggle a setting. If * is entered for channel,
all channels will be affected by the change.
See also: SET, REPORT

Usage: TOPIC [channel] <text>

Sets the topic on a certain channel
See also: RT, MODE

Usage: TRIVIA [channel] [start|stop]

Controls the trivia game.

Usage: UNBAN [channel] [nick|userhost]

Unbans someone on a certain channel
Note: If no nick/userhost is given, you are unbanned
See also: BAN, BANLIST

Usage: UNVOICE [channel] [nick|mask [...]]

Removes voice from user or users matching the given
nick!user@host mask.
See also: VOICE, MODE

Usage: UP [channel]

Ops you on a channel
See also: OP, DOWN, MODE

Usage: UPTIME

Shows how long the bot has been running.
See also: ONTIME

usage

Usage: USAGE <command>

Show the

usage syntax for a specified command.

See also: HELP

Usage: USER <handle> <modifiers [...]>

Change user settings. Prefix flags with a "-" to disable them
or a "+" to enable them.
Flags:
AO Enable or disable autoop
AV Enable or disable autovoice
ECHO Turn on or off partyline echo
P<level> Change protection level (0-4)
If disabling, level is not needed.
Example: USER owner +ao -av
Enables autoop and disables autovoice
for user "owner".

Usage: USERHOST <nick>

Returns the userhost of a person.
See also: WHOIS

Usage: USERLIST [+minlevel] [-maxlevel] [#channel] [usermask] [-B] [-C]

Shows the userlist
Options:
+minlevel List users with access minlevel or greater.
-maxlevel List users with access maxlevel or less.
#channel List users with access on #channel.
usermask List users matching usermask.
-B List bots.
-C List channel users (users with no global access).
See also: ACCESS, USTATS

Usage: USET <PORT port> | <SERVER host> | <SEND>

Sets up port & server for uptimes data delivery. Sends uptimes.

Usage: USTATS <nick|userhost>

Show userlist information for a specific user.
See also: ACCESS, USERLIST

Usage: VER

Returns the version of EnergyMech that is running

Usage: VERIFY <password>

Authenticate yourself with the bot.
See also: PASSWD, SETPASS

Usage: VIRTUAL <host>

Usage: VOICE [channel] [nick|mask [...]]

Give voice to a user or users matching the given
nick!user@host mask. Defaults to giving you voice
on the channel where the command is given.

Usage: WALL [channel] <message>

Send a message to all ops on a channel.

Usage: WHO <channel> [-ops|-nonops] [pattern]

Lists people in a channel that the bot is in now,
or was in. The optional parameters can be used to
list only ops or only non ops respectively.
If a pattern is given, only users matching the pattern
will be listed.
See also: NAMES

Usage: WHOIS <nick>

Same as the irc command.

Usage: WHOM

Show who is connected to the partyline.

Usage: TOG [channel] AOP [0|1|on|off]

Toggles the auto-opping of users if verified.

Usage: TOG [channel] AS [0|1|on|off]

Toggles auto-shitlisting on a channel.

Usage: TOG CC [0|1|on|off]

Toggles the necessity of the command character for doing commands.

Usage: TOG [channel] CK [0|1|on|off]

Toggles the kicking of CAPSers.

Usage: TOG DCC [0|1|on|off]

Toggles the requirement of a user needing to be on the userlist
before he/she can DCC CHAT the bot.
In other words:
When this is on, only users can DCC.
When this is off, anyone can DCC.

Usage: TOG [channel] ENFM [0|1|on|off]

Toggles mode enforcement on a certain channel.
See also: SETENFM

Usage: TOG [channel] IK [0|1|on|off]

Toggles the kicking of idle lusers on a certain channel.
See also: SETIKT

Usage: TOG [channel] KS [0|1|on|off]

Toggles kicking on kicksays.

Usage: TOG [channel] PROT [0|1|on|off]

Toggles the protection of users.

Usage: TOG [channel] PUB [0|1|on|off]

Toggles the allowance of public commands.

Usage: TOG [channel] RK [0|1|on|off]

Toggles revenge kicking.

Usage: TOG [channel] SHIT [0|1|on|off]

Toggles the kicking of shitlisted users.

Usage: TOG [channel] SO [0|1|on|off]

Toggles strict opping. If on, if people not in the userlist
are opped, they will be deopped.

Usage: SET AAWAY <value>

Setting for how long in minutes the bot waits idle before setting
AWAY status and a random away message. Any privmsg sent by the bot
resets the idle-timer to zero.
To disable auto-away set a value of 0.

Usage: SET [channel] AUB <value>

Erases old bans automatically, this sets how old they have to be.

Usage: SET [channel] AVOICE <level>

Sets the autovoice level.
0 - no autovoice
1 - voice +AV users as they join
2 - voice everyone as they join

Usage: SET BANMODES <value>

Number of MODE +/-b's that can be done at a time

Usage: SET [channel] ENFM <modes>

Enforces modes on a channel if a server changes them or
if a non-user changes them.
See also: TOGENFM

Usage: SET [channel] FPL <level>

Sets the protection level against floods.
0 - no action against offender
1 - kick offender
2 - kickban offender
Note: After 3rd kick within 10 minutes, the person will be
sitekickbanned. After the 4th time, the person will
be shitlisted.

Usage: SET [channel] IKT <level>

Sets the number of minutes someone is allowed to be idle before
being kicked (if TOGIK is on).
Default is 20 minutes, range 2 - 999 minutes.
See also: TOGIK

Usage: SET [channel] MAL <level>

Sets the mass-action level (the level massdeop, masskick,
and masskickban will have no effect on).

Usage: SET [channel] MPL <level>

Sets the protection level against massmoders.
0 - no action taken against offender
1 - kick offender
2 - kickban offender
3 - kickban and shitlist offender

Usage: SET OPMODES <value>

Number of MODE +/-o's or +/-v's that can be done at a time.

Usage: Tog [<channel>] TOP

Toggles the enforcement of the channel topic

Usage: Tog [<channel>] SD

Toggles the deopping of non-users who are serveropped

Usage: SET [<channel>] CKL <level>

Sets the number of lines of caps allowed within a 5 second
period before the user will be kicked
Note: a line is considered all caps if 60% if it is in caps

Usage: Set [<channel>] BT <value>

Which bans to unban when ban-limit is reached

Usage: Set [<channel>] MDL <level>

Sets the the number of deops allowed during a 10 sec time
period before it is considered a massdeop

Usage: Set [<channel>] MBL <level>

Sets the the number of bans allowed during a 10 sec time
period before it is considered a massban

Usage: Set [<channel>] MKL <level>

Sets the the number of kicks allowed during a 10 sec time
period before it is considered a masskic

Usage: Set [<channel>] FL <level>

Sets the number of lines by the same person within a 10-second
period before it is considered a flood

Usage: Set [<channel>] NCL <level>

Sets the number of nick changes within a 10 second period
before it is considered nickflooding