User:Elijah/Drafts/Creating a Bot for CollabVM

So, you want to create a bot for CollabVM? This guide will take you through the process of doing so. I'll go through available libraries, and also briefly explain how to implement the protocol yourself.

Do you really need a bot?
Before you start creating your bot, ask yourself if you really need it to exist. We've had our fair share of useless bots, and usually end up banning them pretty quickly once they get annoying. Three general criteria can be:


 * Does a bot with the same function already exist
 * Is your bot idea practically useless and unentertaining
 * Does your bot idea break the rules?

If the answer to any of those questions is yes, you should probably come up with a better idea. Note that mods will ban bots at their discretion if they are perceived to be breaking the rules, or are generally annoying to have.

The following is a list of things that are not good ideas for bots:


 * A bot whose sole purpose is to encode and decode ROT13
 * A bot that just sends "facts" about one random guest that you really dislike
 * A bot that is just a shitty notsobot clone and filled with useless commands
 * A bot that "bans" users from the VM by locking it up using a RAT when they take a turn (Rule 9)

If you make any of these things, we will ban it.

Bot Libraries
There are a few existing libraries which allow you to easily create a bot. Here are some of those. If you have a library not in this list feel free to add it.

CollabVMSharp
Written by Elijah. Supports most functions including mod tools. Requires .NET Core 6.0 or higher.

Link