EverQuest 2 Wiki:Policy/Bots



 This is the Bot Policy. It discusses the requirements any bot must meet in order to operate at this wiki, including how to request one, the proper name for the bot's user name, and when bots are inappropriate.

What bots are
Bots are automatic processes that interact with information human users have created and edited at the EQ2i wiki. Bots can accomplish a great deal of work, but they require technical savvy and advanced knowledge that a great deal of human editors simply don't possess. As a general rule, the use of human editors is preferred at EQ2i, but the usefulness of bots is recognized; hence, this policy.

Getting bot approval
Prior to use, bots must be approved on the Requests for Bot Approval page. State there precisely what the bot will do, observe and participate in the discussion, and await authorization from an Administrator. When seeking approval on Requests for Bot Approval, please state the following:


 * 1) The name of the bot--Usernames for new bots must incorporate the word "bot" so that editors realize they are dealing with an automaton. The username for the bot should also incorporate the username of the bot operator or a recognizable fragment of it. For example, User:Uberfuzzy (an admin at EQ2i) has a bot named User:FzyBot.
 * 2) Whether the bot is manually assisted (run by a human) or automatically scheduled to run
 * 3) The time period and time of day (including time zone) to expect the bot to run
 * 4) What language or program the bot is running

In addition, be absolutely certain you include the following information in as much detail as possible or your bot will not be approved:


 * 1) The exact functions the bot will accomplish.
 * 2) Any possible expansions you may add to the bot later, if known but not specially planned at present.

Always remember that there should be no bots that attempt to fix spelling mistakes in an unattended fashion. It is not technically possible to create such a bot that would not make mistakes, as there will always be places where non-standard spellings are in fact intended. Manually-assisted spell-checking bots are acceptable, so long as they include international spell checking and not only country-specific spell checking. Statistic-generating spell-checking bots, which generate statistics on common misspellings, are also acceptable.

Once your request is created, the administrators will review it. They may comment on it, as may other users at the wiki. This may take several days given that the admins and the editing community live across multiple time zones in several different countries around the world.

What a bot's creator must demonstrate prior to approval
As a bot creator, you must demonstrate without question that the bot:
 * 1) is harmless
 * 2) is useful
 * 3) is not a server hog
 * 4) has appropriate community consensus
 * 5) abides by all guidelines, policies and common practices

What to do after your bot is approved
Create the userpage for the bot and describe the same functions as listed in the original bot request.

Run the bot for a small project or a small portion or the project for which it was originally conceived. To help prove that a bot is harmless and useful, a trial period will be required in which every bot must demonstrate its operation. Any complaints made about the bot during the trial period require that the bot be stopped immediately and the issue resolved.

If you plan to make any modifications to your bot that expand the scope of its original purpose, please leave a note on the Requests for Bot Approval page regarding the nature of the change to ensure that no one has any problems with your bot, and with such additions the bot will still be harmless and useful, and not a server hog.

What to do if you see problems with a specific bot
If you spot a problem or have a complaint about a specific bot, take your query to the bot operator's talk page. If you think the problem is serious and would like greater input, contact an administrator.

What we believe is good bot development practice
Bot creators are strongly encouraged to:
 * Publish an outline of the logic behind the source code of their bot. The source code itself is likely boring and subject to change. A pseudo code version would be perfectly acceptable to demonstrate this logic.
 * Program their bot to stop editing if someone leaves a message on its talk page. This can be checked by looking for the "You have new messages..." banner in the HTML for the edit form.
 * Program their bot to stop editing if they detect that they have logged out. This can be checked by looking for bot's name in the HTML for the edit form. If the bot is not logged in, then the bot's name won't be listed in the HTML. Bots running anonymously may be blocked.

Who is responsible for repairing damage caused by a bot
If, despite all efforts and review, a bot is found to have caused unintentional damage, it is the responsibility of the bot operator to repair it. Note that this could require lots of manual work. If you are not prepared to clean up after your bot if it misbehaves, you should not run it.