BotNet is a server developed by Skywing and co-developed by Kp. BotNet was orignally designed as a backend communication platform for Battle.net bots to synchronize user databases and channel management. You authenticate with BotNet using a "bot id" (eg, ZeroBot) and password. The server admin assigns each bot author their own bot id and password to access the BotNet. Nobody else can see your bot id, and this isn't used for anything besides the admin being able to allow/disable bot id's on the fly. Once authorized, and the communication version is negotiated, bots should transmit their Battle.net details (account, server, channel). Your account should be the last used account, otherwise bot's name (eg, ZeroBot). Server should be last used server, otherwise -1 (255.255.255.255). Channel should be current channel, otherwise "" if you are not logged onto Battle.net and "" if you are in a game. Users on BotNet are identified by a unique serial number that is incremented with each logon. Only the user's number is transmitted in most messages so it is up to the client to track the necessary user information. Bots can connect to one database at a time, upon which the entire database or parts of the database can be downloaded and all changes are synchronized with other bots on the database. A database has a read-only AND read/write password. Typically, the autonomous bot(s) would have read/write access while all other users have read-only access. A database entry simply contains a usermask (STRING:40) and flags (STRING:28). In the later years, unique BotNet accounts and the ability to chat and whisper users on BotNet were introduced. In this way, databases work similar to Battle.net channels such that you can communicate with multiple users at once as long as they're in the same database. BotNet transmits the current state of *all* users on BotNet, regardless of the database they are assigned. If you fail to log on to a database, then you are essentially "voided" and cannot talk or whisper other users. The latest protocol specification can be found here: https://davnit.net/islanti/bnsp-latest.txt