Full Protection

User:CyrusBot

The UESPWiki – Your source for The Elder Scrolls since 1995
Jump to: navigation, search
Cyrus returned to Bthzark and rebuilt the mechanical giant for wiki editing purposes

This is CyrusBot, a bot operated by Dillonn241. If at any time you notice the bot making inappropriate edits, please post a message on its talk page and the bot should stop what it's doing within 10 edits or less.

Summary

CyrusBot is written in Java using the MediaWiki API without any bot framework. Its capabilities are detailed below. The bot can be stopped by its creator at any time without any side effects.

At the moment, CyrusBot has a number of basic jobs already written, especially for simple template changes. Most other jobs involving objects with parameters are trivial to write. More advanced tasks like pulling data from esoLog can be implemented in the future.

User-userbox-Bot.jpg This user is a Bot, an automated account that carries out routine maintenance on UESPWiki.

Capabilities

This is what the bot can currently do, although it can easily be expanded if necessary. The list is not exhaustive.

CyrusBot abstracts templates (including other page transclusions), links, files (in the form [[File:]]), and categories (in the form [[Category:]]) into a structure called an Abstract Template. In practice, there is very little difference in how these are parsed and manipulated.

Jobs

  • Preview — Editing jobs can be previewed with an HTML-based diff file generated by the wiki. This is always kept on unless a job needs to run.
  • Namespaces — By default, the following namespaces are ignored when editing: Main, File, Help, Media, MediaWiki, UESPWiki, Special, Template, User, and all talk pages. More namespaces can be added or some of these can be removed per job. This can also be flipped so only certain namespaces are edited.
  • Action Limit — The bot's number of edits in a single run is capped at 100 by default as a safeguard. This can be adjusted up for more trivial jobs and down for jobs that may produce unexpected results.

Reading/Writing

  • Editing/Creating pages — This is by far the most common writing action the bot performs.
  • Moving pages — Move pages and optionally not leave a redirect. Usually paired with a job to update links.
  • Upload files — Locally stored files can be uploaded, which is useful as a substitute for MultiUpload.
  • Protect pages — Pages can be edit or move protected to autoconfirmed or sysop level and also have their protections removed.

Reading Only

  • Excel Sheets — Create tables to show parameter values for an abstract template. Each row is one instance of the object and each column is a parameter name. The page name and object name (e.g., SR:Skyrim or Skyrim:Skyrim for a link) are also included.
  • Morrowind data — Basic support for reading data from Morrowind's .esp and .esm files. Could possibly be expanded to support Oblivion and Skyrim.

Utilities

  • Magic Words — All of the important magic words related to namespaces and page names, including the ones added by UespCustomCode, are immediately accessible through a Title class. This makes many jobs specific to UESP simpler to write.