May 30, 2020

🐷 Knight Challenge #10 🐷

Feeling boared with no news? Check out these challenges!
From writing, to research, to images, find your preferred way to contribute with our tenth theme: Pigs!

Latest Announcements

We would love to get your opinion on your experience with our site with a short survey. Take Survey

User:TheStoneWatcher

From Zelda Wiki, the Zelda encyclopedia
Jump to: navigation, search
TheStoneWatcher is always watching! (...except when it's not)


TheStoneWatcher was once Zelda Wiki's resident multi-purpose bot. The bot acted as a front-end for the Pywikipedia bot framework, allowing for the use of pre-made or custom python scripts to assist with repetitive tasks. It has been replaced by KaeporaGaebora, which now serves the same purpose that TheStoneWatcher once did.

Edit counts

Regular Tasks

TheStoneWatcher performs a number of common, basic maintenance tasks:

Welcoming Users

TheStoneWatcher used to welcome all new users to the wiki using the NewUserMessage extension. TheStoneWatcher welcomed approximately {{#ec:TheStoneWatcher|3}} new users to the wiki since July 10th, 2009.

Fixing Redirects

Redirect.py was used to fix any double redirects. A cron job was scheduled to run the command "python ./public_html/extensions/pywikipedia/redirect.py double -always" every hour, on the hour. Broken redirects should be investigated before fixing, to ensure that problems are not being masked, but can also be fixed automatically by running the following command:

python ./public_html/extensions/pywikipedia/redirect.py broken -always

Identifying Broken Links

Periodically, Weblinkchecker.py was used to create a list of pages containing broken external links. The final list is still available here, and is a starting point to allow users to manually fix these broken links.

Deletion of Unused Files

Most recent deletions

Periodically, Delete.py was used to clear a selected list of old files from Special:UnusedFiles. This was done to help keep the wiki tidy, and a snapshot of each deletion batch was kept (see left), in case any deleted images should need to be retrieved.

Game link correction

Replace.py was used to replace incorrectly used (ie not substituted) game link shortcut templates. The initial batch of replacements on 27 February 2010 corrected more than 233 incorrect usages. A cron job was scheduled to run the command "sh replace.sh" on a daily basis, which contained the following commands:

#!/bin/bash
REP="./public_html/extensions/pywikipedia/replace.py"
python ${REP} -transcludes:ALTTP "{{ALTTP}}" "'[[The Legend of Zelda: A Link to the Past|A Link to the Past]]''" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:AOL "{{AOL}}" "{{TAoL}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:AST "{{AST}}" "''[[BS The Legend of Zelda: The Ancient Stone Tablets|Ancient Stone Tablets]]''" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:BSZ "{{BSZ}}" "''[[BS The Legend of Zelda|BS Zelda]]''" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:FPTRR "{{FPTRR}}" "{{FPTRR}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:FS "{{FS}}" "{{FS}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:FSA "{{FSA}}" "{{FSA}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:LA "{{LA}}" "{{LA}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:LCT "{{LCT}}" "''[[Link's Crossbow Training]]''" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:LOZ "{{TLoZ}}" "{{TLoZ}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:MM "{{MM}}" "{{MM}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:OOA "{{OOA}}" "{{OoA}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:OOS "{{OOS}}" "{{OoS}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:OOT "{{OoT}}" "{{OoT}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:PH "{{PH}}" "{{PH}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:ST "{{ST}}" "{{ST}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:TBF "{{TBFDS}}" "''[[Tingle's Balloon Fight]]''" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:TLBT "{{TLBT}}" "''[[Color Changing Tingle's Love Balloon Trip]]''" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:TMC "{{TMC}}" "{{TMC}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:TP "{{TP}}" "{{TP}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:TRR "{{TRR}}" "{{FPTRR}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always
python ${REP} -transcludes:TWW "{{TWW}}" "{{TWW}}" -nocase -summary:"Bot: Forcing substitution of game shortcut template" -always

Special Tasks

Occasionally, TheStoneWatcher was used to carry out more specific, one-off tasks. Past examples include:

Changeover of Image Templates

(completed 21st August 2009)
Following an overhaul of the Image Templates, over 1000 pages remained containing the deprecated template {{c-nintendo}} (often together with other templates). Add_text.py was used to selectively add the new template, allowing the deprecated template to be blanked and avoiding duplication.

The following command was used:

python ./public_html/extensions/pywikipedia/add_text.py -cat:C-nintendo -text:"{{copyright}}" -up -except:"[Ff]ound[Ii]mage" -always

Migration of Community Content

(completed 14th November 2009)
Following the creation of the new Community namespace, Movepages.py was used to move all community-related Main and Talk pages to the new namespace.

The following command was used:

python ./public_html/extensions/pywikipedia/movepages.py -catr:community -namespace:0,1 -prefix:Community: -summary:"Robot: Moving all community content to new namespace" -always

Adding interwiki links to Zeldapendium

(8th January 2010)
Template:De requires the addition of either {{de}} or {{de|German article title}} to pages added to the template's list. Add_text.py and pagefromfile.py to add the required templates to 240 articles.

The following commands were used:

python ./public_html/extensions/pywikipedia/add_text.py -file:./public_html/extensions/pywikipedia/de_normal.txt -except:"[Dd][Ee]:" -except:"{{[Dd][Ee]" -text:"{{de}}" -summary:"Adding interwiki link to German article at Zeldapendium" -always -log:Template_De.log
python ./public_html/extensions/pywikipedia/pagefromfile.py -file:./public_html/extensions/pywikipedia/de_special.txt -notitle -appendbottom -summary:"Adding interwiki link to German article at Zeldapendium" -log:Template_De.log

Adding Names template

(completed 9th January 2010)
Following the creation of a matrix of translations, the data was converted into the correct format to be used in the Names template. Pagefromfile.py was used to insert the template code into 322 articles.

python ./public_html/extensions/pywikipedia/pagefromfile.py -file:./public_html/extensions/pywikipedia/names.txt -notitle -appendbottom -summary:"Automated addition of Names template" -log:Template_Names.log