--------------------------------------------------------------------------------------------
ZeroBot Guide - authored by Skywing
--------------------------------------------------------------------------------------------
ZeroBot Copyright (C) 2000 Skywing - no distribution of any kind!
A Valhalla Legends production - www.valhallalegends.com.

--------------------------------------------------------------------------------------------
Attribute	| Functions
--------------------------------------------------------------------------------------------
A		| setuser [wildcard]username [operation]flags, deluser (username)

B		| (Autobanned, overrides F)

C		| setserver (Battle.net server IP), reconnect

D		| designate, designate (user), rejoin

F		| (Not banned by protect)

J		| join (channel)

L		| find [wildcard]username, find +attributes

M		| say (text)

N		| setuser [wildcard]username [operation]flags, deluser username, killbnemu

O		| ban (user), ban *[substring], kick (user), kick *[substring], 
find [wildcard]username, find +attributes, server, protect (on|off), unban (user)

Q		| quit

S		| unban, (Cannot be banned/kicked, overrides B)

T		| botnet say (text)

Z		| (Autobanned, overrides S)

None required	| ping (ip|hostname), version

--------------------------------------------------------------------------------------------
Function					| Description
--------------------------------------------------------------------------------------------
setuser [wildcard]username [operation]flags	| Modifies an existing database entry, or 
adds a new database entry.  If [wildcard] is *, the entry matches for substring "username"
in a user's name.  If [operation] is +, the specified flags are added to the database entry.
If [operation] is -, the specified flags are removed from the database entry.  Any entry
without flags is automatically deleted.  If [operation] is left out, and you have attribute
A, the bot acts as if you had specified operation +.  However, if you leave [operation]
out, and have attribute N, the bot *removes all existing flags* on the specified database 
entry, and then adds the flags you specify to the database entry.  Users with attribute A
can only add/remove flags B, F, L, and S.

setserver (Battle.net server IP)		| Sets the bot's server.

reconnect					| Reconnects the bot to it's server

designate					| The bot designates you.

designate (user in channel)			| The bot designates the target user.

join (channel)					| The bot joins the target channel.

find [wildcard]username				| Searches the database for entry 
"username", and reports back all entries contributing a flag to it.

find +attributes				| Searches the database for all entries
containing all of the attributes specified, and reports back their flags (does *not* take
into account any wildcard entries that may be modifying a specific user!)

killbnemu					| Resets the BnEmu Battle.net text gateway
emulation server.

say (text)					| Instructs the bot to say text.  If you
have A, this command can be whispered to the bot.  If you have N, you can have the bot say
/squelch and say /ignore.

ban (user)					| The bot bans the specified user.  If the
user you specify is safelist, the bot will inform you with an error message.

ban *[substring]				| Bans all users in the channel (which do
not have attribute S) that have "substring" in their names.  If you do not specify a
substring, but instead only specify *, the bot matches for all non-safelisted users in
the channel.

kick (user)					| See ban (user).

kick *[substring]				| See ban *[substring].

unban (user)					| Unbans the target user.

server						| Displays the bot server.

protect (on|off)				| Toggles channel protection on or off.

quit						| Shuts down the bot.

unban						| Instructs the bot to unban you.

botnet say (text)				| Instructs all bots on the botnet in the 
current channel to say text (currently unimplemented).

ping (ip|hostname)				| Pings the specified address.

version						| Displays the bot version.

--------------------------------------------------------------------------------------------
Config value					| Description
--------------------------------------------------------------------------------------------
username=					| Sets the bot's Battle.net username.

password=					| Sets the bot's Battle.net password.

bnemupass=					| Sets the BnEmu password (username for the
BnEmu server does not matter).  Setting this to 'none' will disable the BnEmu server.

server=						| Sets the bot's Battle.net server (IP).

socks=						| Specifies a SOCKS v5 server to connect
to Battle.net through (IP).

home=						| Sets the bot's home channel.

response=					| Toggles public responses on/off.  If you
set response to 0, public commands require O to use.

bnemuentry=					| Specifies which entry to use for purposes
of processing bot commands sent to the BnEmu server (//command).  You should set this to a
database entry which has an access level appropriate for the user of the BnEmu server.

--------------------------------------------------------------------------------------------
Database format
--------------------------------------------------------------------------------------------
Database.usr should be saved as a plain text file.  Format is:
entry FLAGS
Where entry is the lowercase-only name of the entry, and FLAGS are the uppercase physical
flag values for the entry.

--------------------------------------------------------------------------------------------
BnEmu Battle.net text gateway emulation server
--------------------------------------------------------------------------------------------
If enabled, the BnEmu server will listen on port 6112 of the local IP address.  It should be
compatable with any text bot - if you find one that doesn't work with it, please tell me!

Important note: The username used to logon to the BnEmu server *does not matter*, HOWEVER,
the password must be what is set in ZeroBot.cfg (case matters!).  Both echo and backspace
support are permanently disabled on BnEmu - it's designed to run a bot, rather then a telnet
connection!

--------------------------------------------------------------------------------------------
ZeroBot files
--------------------------------------------------------------------------------------------
* ChatZeroBot.exe - The bot program itself.
* ZeroBot.cfg - The bot's configuration settings.
* Database.usr - The bot's user database.
* Security.log - Log of all changes to the user database.
* ZeroBotDoc.txt - This file.
