From DoomWiki.org

(Miscellaneous scripts: describe rankMappers.php)
(WADs covered so far: update to latest state)
(16 intermediate revisions by the same user not shown)
Line 129: Line 129:
 
Performs a [[Special:Search|search]] for the specified string in the main and Category namespaces, then in each of the resulting articles wikilinks the first occurrence of the string, if not already linked.<br/>
 
Performs a [[Special:Search|search]] for the specified string in the main and Category namespaces, then in each of the resulting articles wikilinks the first occurrence of the string, if not already linked.<br/>
 
Conversely, '''unlinkArticle.php''' removes any wikilinks.<br/>
 
Conversely, '''unlinkArticle.php''' removes any wikilinks.<br/>
 +
Both always provide interactive comparison between old and new contents of the page, prior to submitting the edit.
 +
 +
=== destubMaps.php ===
 +
From map pages transcluding {{tl|level stub}}, removes the template if the article contains: a walkthrough description in the Essentials section, descriptions for bulleted Secrets (or no official secrets), and complete Map data & Things tables. Conversely, '''restubMaps.php''' adds back the template if any such section (typically Essentials) is empty or too minimalistic.<br/>
 +
Both always provide interactive comparison between old and new contents of the page, for the actual de-/restub decision by the bot operator, prior to submitting the edit.
 +
 +
=== updateAuthor.php ===
 +
After a {{cat|Mappers|mapper article}} and its associated {{cat|Levels by author|levels category}} have been moved (typically to include or remove a full name), go over the map articles in the old category to rename the wikilinked author and levels category.<br/>
 +
Both always provide interactive comparison between old and new contents of the page, prior to submitting the edit.
 +
 +
=== addTemplate.php ===
 +
Processes all articles linked from a template to append that template. If the template contains an includeonly category, this category is replaced by the template. Also, (re)formats any categories after the template(s), one per line.<br/>
 
Both always provide interactive comparison between old and new contents of the page, prior to submitting the edit.
 
Both always provide interactive comparison between old and new contents of the page, prior to submitting the edit.
  
Line 156: Line 168:
 
The mapping file ideally links to description(s) of the custom thing(s) on the WAD's overview page. This can be a [[Resurgence#Monsters|simple one-liner]] but preferably contains a brief [[NewDoom Community Project II#Monsters|entry per thing]] that mentions which original thing is replaced by which custom one, and may be [[Scythe 2#Monsters|even more elaborate]].
 
The mapping file ideally links to description(s) of the custom thing(s) on the WAD's overview page. This can be a [[Resurgence#Monsters|simple one-liner]] but preferably contains a brief [[NewDoom Community Project II#Monsters|entry per thing]] that mentions which original thing is replaced by which custom one, and may be [[Scythe 2#Monsters|even more elaborate]].
  
So, to help, please provide such descriptions (or provide a quick mapping table on the WAD's talk page) for the following WADs that I already processed previously:
+
So, to help, please provide such descriptions (or better yet, provide a [[Talk:Threshold of Pain#Custom thing table|full mapping table]] on the WAD's talk page) for the following WADs that I already processed previously:
  
 
<div style="-webkit-column-width: 20em; -moz-column-width: 20em; column-width: 20em;">
 
<div style="-webkit-column-width: 20em; -moz-column-width: 20em; column-width: 20em;">
 
* [[Aliens TC]]
 
* [[Aliens TC]]
 +
* [[Black Magnetic]]
 
* [[Caverns of Darkness]]
 
* [[Caverns of Darkness]]
 +
* [[Celestial Site]]
 
* [[Cheogsh]]
 
* [[Cheogsh]]
 
* [[Daedalus: Alien Defense]]
 
* [[Daedalus: Alien Defense]]
 
* [[Disrepair]]
 
* [[Disrepair]]
 +
* [[Distribution Center]]
 
* [[Doom Raider: Crypt of the Vile]]
 
* [[Doom Raider: Crypt of the Vile]]
 
* [[Doomworld Mega Project 2014]] (zDMP2014.pk3)
 
* [[Doomworld Mega Project 2014]] (zDMP2014.pk3)
Line 175: Line 190:
 
* [[Phobia - The Age]]
 
* [[Phobia - The Age]]
 
* [[Putrefier]]
 
* [[Putrefier]]
 +
* [[Put Up Your Dukes!]]
 +
* [[The Refinery]]
 
* [[Scythe X]]
 
* [[Scythe X]]
* [[Threshold of Pain]]
+
* [[Soundless Mound]]
 +
* [[Struggle - Antaresian Legacy]]
 
* [[Void and Rainbow]]
 
* [[Void and Rainbow]]
* [[Waterlab GZD]]
 
* [[The ZDoom Community Map Project "Take 1"]]
 
 
</div>
 
</div>
  
Line 195: Line 211:
 
* [[Cheogsh 2]], [[Realm of Cheogsh]]
 
* [[Cheogsh 2]], [[Realm of Cheogsh]]
 
* [[Community Is Falling 3]]
 
* [[Community Is Falling 3]]
* [[Cyberdreams]]
 
 
* [[Demons of Problematique]], [[Demons of Problematique 2]]
 
* [[Demons of Problematique]], [[Demons of Problematique 2]]
 
* [[Doom 64 TC]]
 
* [[Doom 64 TC]]
 
* [[Doom Arcade]]
 
* [[Doom Arcade]]
 +
* [[Doom II X-Treme]]
 
* [[Doom Resurrection (WAD)]]
 
* [[Doom Resurrection (WAD)]]
 +
* [[Fate: A Doom Total Conversion]]
 
* [[Ghoul School 3D]]
 
* [[Ghoul School 3D]]
 
* [[Midgard Outlaw]]
 
* [[Midgard Outlaw]]
Line 213: Line 230:
 
* [[Psychophobia]]
 
* [[Psychophobia]]
 
* [[Realms of Dr. Chaos]]
 
* [[Realms of Dr. Chaos]]
 +
* [[REKKR]]
 +
* [[Return of the Triad]]
 +
* [[Robocop Doom]]
 
* [[Splatterhouse 3D]]
 
* [[Splatterhouse 3D]]
* [[STRAIN]]
 
 
* [[Strange Aeons]]
 
* [[Strange Aeons]]
 
* [[Stronghold: On the Edge of Chaos]]
 
* [[Stronghold: On the Edge of Chaos]]
 
* [[Temple of the Lizardmen 2]]
 
* [[Temple of the Lizardmen 2]]
 
* [[Total Chaos]]
 
* [[Total Chaos]]
 +
* [[Tribute - this is not the best wad in the world]]
 
* [[Twilight Warrior]]
 
* [[Twilight Warrior]]
 
* [[The Twilight Zone II: Final Dreams]]
 
* [[The Twilight Zone II: Final Dreams]]
 
* [[Unloved]]
 
* [[Unloved]]
 +
* [[Who Dun It]]
 
* [[Winter's Fury]]
 
* [[Winter's Fury]]
 
* [[ZanZan]]
 
* [[ZanZan]]
Line 230: Line 251:
  
 
== WADs covered so far ==
 
== WADs covered so far ==
The lists below show the single-level and multi-level WADs that have so far been covered (created and/or updated) via XymphBot and its .ini files. Map counts per WAD and various totals are included (''state of 2019-07-06 05:13 CDT'').
+
The lists below show the single-level and multi-level WADs that have so far been covered (created and/or updated) via XymphBot and its .ini files. Map counts per WAD and various totals are included (''state of 2020-08-03 09:12 CDT'').
  
 
===Single-level WADs===
 
===Single-level WADs===
Line 238: Line 259:
 
* [[All Aboard the Mega Magilla Gorilla Flotilla]]
 
* [[All Aboard the Mega Magilla Gorilla Flotilla]]
 
* [[Altar of Evil]] *
 
* [[Altar of Evil]] *
 +
* [[AOL Girls Museum]]
 
* [[Arachna]]
 
* [[Arachna]]
 
* [[Arachna2]]
 
* [[Arachna2]]
 
* [[Arcadia Demade]]
 
* [[Arcadia Demade]]
 +
* [[Argus]]
 
* [[Artica 2]]
 
* [[Artica 2]]
 
* [[Artica 3]] *
 
* [[Artica 3]] *
Line 247: Line 270:
 
* [[Atomic Tomb]]
 
* [[Atomic Tomb]]
 
* [[The Attraction to All Things Uncertain]]
 
* [[The Attraction to All Things Uncertain]]
* [[Austerity: A Simplicity Tribute]]
 
 
* [[Awakening]] *
 
* [[Awakening]] *
 
* [[Axiom]] *
 
* [[Axiom]] *
 
* [[B21]]
 
* [[B21]]
 +
* [[Baron Gate]]
 
* [[Berserk (WAD)]]
 
* [[Berserk (WAD)]]
 +
* [[Beyond Death]]
 +
* [[Black Magnetic]]
 
* [[BLT]]
 
* [[BLT]]
 
* [[Boom (WAD)]]
 
* [[Boom (WAD)]]
Line 257: Line 282:
 
* [[Brigandine]]
 
* [[Brigandine]]
 
* [[The C.P.U.]]
 
* [[The C.P.U.]]
 +
* [[Calgon, Take Me Away!]] (Doom)
 +
* [[Calgon, Take Me Away!]] (Doom II)
 
* [[Call of Dooty]] *
 
* [[Call of Dooty]] *
 
* [[The Call of Ktulu]]
 
* [[The Call of Ktulu]]
 +
* [[Capone's Pit]]
 
* [[The Castle of Blood]]
 
* [[The Castle of Blood]]
 
* [[Castle of Eternal Carrot in the Sky]]
 
* [[Castle of Eternal Carrot in the Sky]]
 +
* [[Castle of the Renegades]] (Doom)
 
* [[Castle of the Renegades]] (Doom II)
 
* [[Castle of the Renegades]] (Doom II)
* [[Castle of the Renegades]] (Doom)
+
* [[Celestial Site]]
 +
* [[Center (WAD)]]
 +
* [[CH Retro]]
 
* [[Chainmill]]
 
* [[Chainmill]]
 
* [[Chambers of Dis]]
 
* [[Chambers of Dis]]
Line 284: Line 315:
 
* [[Crusader (WAD)]]
 
* [[Crusader (WAD)]]
 
* [[The Cursed Generation]]
 
* [[The Cursed Generation]]
 +
* [[Cursed Realms - Path Over The Abyss]]
 +
* [[CyberDoom]]
 
* [[The D.M.Z.]]
 
* [[The D.M.Z.]]
 
* [[Dante's Gate]]
 
* [[Dante's Gate]]
 
* [[Dark Tide]]
 
* [[Dark Tide]]
 
* [[Darker]]
 
* [[Darker]]
 +
* [[Darkest Room]] *
 
* [[Day of the Acolyte]] *
 
* [[Day of the Acolyte]] *
 
* [[Dead.air]]
 
* [[Dead.air]]
 
* [[Dead.wire]]
 
* [[Dead.wire]]
 +
* [[Deadlock]]
 
* [[Decade]]
 
* [[Decade]]
 
* [[The Deimos Subway]]
 
* [[The Deimos Subway]]
Line 298: Line 333:
 
* [[Diabolos]]
 
* [[Diabolos]]
 
* [[Dickie 10]]
 
* [[Dickie 10]]
 +
* [[Die Young!]]
 
* [[Diopatra]]
 
* [[Diopatra]]
 +
* [[Distribution Center]]
 
* [[Disturbia]]
 
* [[Disturbia]]
 +
* [[The Divide]]
 +
* [[Dock 69]]
 
* [[Doom City]]
 
* [[Doom City]]
 
* [[Doom Must Fall]]
 
* [[Doom Must Fall]]
Line 308: Line 347:
 
* [[Doomworld Forum Adventures!]]
 
* [[Doomworld Forum Adventures!]]
 
* [[Doomworld Forums 3]]
 
* [[Doomworld Forums 3]]
 +
* [[Doomworld Mega Project 2019]] *
 
* [[Drip Feed]]
 
* [[Drip Feed]]
 
* [[The Dying End]]
 
* [[The Dying End]]
 
* [[Dystopia]]
 
* [[Dystopia]]
 +
* [[Dystopia 301]]
 +
* [[E1 MAP01]]
 
* [[E1M10: Sewers (Xbox Doom)]]
 
* [[E1M10: Sewers (Xbox Doom)]]
 
* [[E2M1ED.WAD]]
 
* [[E2M1ED.WAD]]
 
* [[Eden]]
 
* [[Eden]]
 
* [[The Enemy Inside]]
 
* [[The Enemy Inside]]
 +
* [[Entropy (WAD)]] *
 +
* [[Entry (WAD)]]
 
* [[Escape from Castle Chezcrea]]
 
* [[Escape from Castle Chezcrea]]
 +
* [[Esselmap I: Testing Facility]]
 
* [[Europa 1]]
 
* [[Europa 1]]
 
* [[Europa 2]]
 
* [[Europa 2]]
Line 322: Line 367:
 
* [[Extinguished]]
 
* [[Extinguished]]
 
* [[Extramap.wad]]
 
* [[Extramap.wad]]
 +
* [[Extramap.wad "finished"]]
 
* [[The Eye]]
 
* [[The Eye]]
 +
* [[Eyedea]]
 
* [[Eyedea]]
 
* [[Eyedea]]
 
* [[The Farside of Titan]]
 
* [[The Farside of Titan]]
 
* [[The Final Geometry]]
 
* [[The Final Geometry]]
 
* [[Forsaken Overlook]]
 
* [[Forsaken Overlook]]
 +
* [[Fort Scar]]
 
* [[Fortress of Doom]]
 
* [[Fortress of Doom]]
 
* [[FORTRESS.WAD]]
 
* [[FORTRESS.WAD]]
 +
* [[Foursite]]
 
* [[From A Dream]]
 
* [[From A Dream]]
 
* [[Frozen Time]]
 
* [[Frozen Time]]
 
* [[Fuel Devourer]] *
 
* [[Fuel Devourer]] *
 
* [[The Fury]]
 
* [[The Fury]]
 +
* [[Garden Of Delight]]
 
* [[The Given]]
 
* [[The Given]]
 +
* [[Goaway]]
 +
* [[The Grim Reaper]]
 
* [[Grove]]
 
* [[Grove]]
 +
* [[Hall of The Mountain King]]
 
* [[Halo Of Wonders]] *
 
* [[Halo Of Wonders]] *
 +
* [[Hanging Gardens]] *
 
* [[Hank's Lair]]
 
* [[Hank's Lair]]
 
* [[Happy Time Circus]]
 
* [[Happy Time Circus]]
 +
* [[The Heart of Stone]]
 
* [[HeDRoX]]
 
* [[HeDRoX]]
 
* [[Hell's Eventide]]
 
* [[Hell's Eventide]]
Line 356: Line 411:
 
* [[id Map01]]
 
* [[id Map01]]
 
* [[Impossible: A New Reality]] *
 
* [[Impossible: A New Reality]] *
 +
* [[The Indespensible T_DUNNxx.WAD Series - For Heretic]]
 +
* [[Induction]]
 +
* [[Infraworld - The Hatehammer]]
 
* [[The Interdiction Zone]]
 
* [[The Interdiction Zone]]
 
* [[Internal Reaches 2]]
 
* [[Internal Reaches 2]]
Line 365: Line 423:
 
* [[Jägermörder 1: Chemical Lab]]
 
* [[Jägermörder 1: Chemical Lab]]
 
* [[Jägermörder 2: Terra Nova]]
 
* [[Jägermörder 2: Terra Nova]]
 +
* [[Kick Attack!]] (Doom)
 +
* [[Kick Attack!]] (Doom II)
 
* [[KZDoom1]]
 
* [[KZDoom1]]
 
* [[KZDoom2]]
 
* [[KZDoom2]]
Line 375: Line 435:
 
* [[Lab]]
 
* [[Lab]]
 
* [[Lake4]]
 
* [[Lake4]]
 +
* [[Lighthouse]]
 +
* [[Magnum Opus]]
 
* [[Man on the Moon]] *
 
* [[Man on the Moon]] *
 
* [[MAP33: Betray (Xbox Doom II)]]
 
* [[MAP33: Betray (Xbox Doom II)]]
 
* [[MarkRoom]]
 
* [[MarkRoom]]
 
* [[Mayan Temple]]
 
* [[Mayan Temple]]
 +
* [[Maze - BIG IS BEAUTIFUL]]
 
* [[MEGADETH.WAD]]
 
* [[MEGADETH.WAD]]
 
* [[Megalab]]
 
* [[Megalab]]
Line 392: Line 455:
 
* [[Monster Hunter Ltd. Part I]] *
 
* [[Monster Hunter Ltd. Part I]] *
 
* [[Monster Hunter Ltd. Part II]] *
 
* [[Monster Hunter Ltd. Part II]] *
 +
* [[Mouldy Old Void]] *
 
* [[Neith]]
 
* [[Neith]]
 
* [[Nickel Electroplate Facility]]
 
* [[Nickel Electroplate Facility]]
 
* [[Nightfall]]
 
* [[Nightfall]]
 +
* [[Nightlife]]
 
* [[No Chance]]
 
* [[No Chance]]
 
* [[Nostromo's Run]]
 
* [[Nostromo's Run]]
 +
* [[Nosun]]
 +
* [[Nosun2]]
 +
* [[Nosun3]]
 +
* [[Nosun4]]
 +
* [[Nosun5]]
 
* [[Not Another E1 Wad]]
 
* [[Not Another E1 Wad]]
 
* [[Not Another E3 Wad]]
 
* [[Not Another E3 Wad]]
 
* [[Null Space]]
 
* [[Null Space]]
 +
* [[Number One Kill Extra]]
 
* [[Odessa 1]]
 
* [[Odessa 1]]
 
* [[Odessa 11]]
 
* [[Odessa 11]]
Line 411: Line 482:
 
* [[Odessa 9]]
 
* [[Odessa 9]]
 
* [[Ogro Power Facility]]
 
* [[Ogro Power Facility]]
 +
* [[Okuplok Slaughter Map]]
 
* [[Omelet Face]]
 
* [[Omelet Face]]
 
* [[Oniria]] *
 
* [[Oniria]] *
 
* [[Oniria 2]]
 
* [[Oniria 2]]
 
* [[Origwad]]
 
* [[Origwad]]
 +
* [[Otakon]]
 
* [[The Outer Darkness]]
 
* [[The Outer Darkness]]
 
* [[Outpost 21]]
 
* [[Outpost 21]]
Line 422: Line 495:
 
* [[Pazuzu]]
 
* [[Pazuzu]]
 
* [[Phobos Mission Control]]
 
* [[Phobos Mission Control]]
 +
* [[Pitchfork]]
 
* [[Planisphere]]
 
* [[Planisphere]]
 
* [[Planisphere 2]]
 
* [[Planisphere 2]]
Line 428: Line 502:
 
* [[Port Glacia]]
 
* [[Port Glacia]]
 
* [[Punisher]]
 
* [[Punisher]]
 +
* [[Put Up Your Dukes!]]
 
* [[Putrefier]]
 
* [[Putrefier]]
 +
* [[Quick Is Good]]
 
* [[RCK]]
 
* [[RCK]]
 
* [[RCK2]]
 
* [[RCK2]]
Line 437: Line 513:
 
* [[Redemption of the Slain]]
 
* [[Redemption of the Slain]]
 
* [[REDRUM]]
 
* [[REDRUM]]
 +
* [[The Refinery]]
 +
* [[Remnant]] *
 
* [[Return of The Order]] *
 
* [[Return of The Order]] *
 +
* [[RRW_D201]]
 
* [[RRWARD01]]
 
* [[RRWARD01]]
 
* [[RRWARD02]]
 
* [[RRWARD02]]
Line 446: Line 525:
 
* [[Run Buddy]]
 
* [[Run Buddy]]
 
* [[Runaway Train]]
 
* [[Runaway Train]]
 +
* [[Sacrifice (Doom Tutorial)]]
 
* [[Sapidus]]
 
* [[Sapidus]]
 
* [[Saturnine Chapel]]
 
* [[Saturnine Chapel]]
 +
* [[Seej]]
 +
* [[Sequel to Quick Is Good]]
 +
* [[Serenity III - Map 11]]
 
* [[Sharp Things]]
 
* [[Sharp Things]]
 
* [[Sheer Poison]]
 
* [[Sheer Poison]]
Line 454: Line 537:
 
* [[Sin City]]
 
* [[Sin City]]
 
* [[Sinferno]]
 
* [[Sinferno]]
 +
* [[Skull]]
 
* [[Soldier of Fortune]]
 
* [[Soldier of Fortune]]
 
* [[Songs of the Damned]]
 
* [[Songs of the Damned]]
 +
* [[Soundless Mound]]
 
* [[Space Station Omega]]
 
* [[Space Station Omega]]
 
* [[Spidersilk]]
 
* [[Spidersilk]]
Line 461: Line 546:
 
* [[Squid]]
 
* [[Squid]]
 
* [[Squid 2]]
 
* [[Squid 2]]
 +
* [[Steep Town]]
 +
* [[Still Kickin']]
 
* [[STONES.WAD]]
 
* [[STONES.WAD]]
 
* [[Supernaught]]
 
* [[Supernaught]]
Line 472: Line 559:
 
* [[Their Selfish Realms]]
 
* [[Their Selfish Realms]]
 
* [[Thematic Elements]]
 
* [[Thematic Elements]]
 +
* [[Time Parallax - The Burial Vault]]
 
* [[The Titan Anomaly]]
 
* [[The Titan Anomaly]]
 
* [[Total Control]]
 
* [[Total Control]]
Line 477: Line 565:
 
* [[ToxicHole]]
 
* [[ToxicHole]]
 
* [[Tremor]]
 
* [[Tremor]]
 +
* [[Triad Experimental Corporation]]
 
* [[Triple-Play]]
 
* [[Triple-Play]]
 
* [[Trouble on Titan]]
 
* [[Trouble on Titan]]
 +
* [[Trydent]]
 
* [[UAC Invasion: The Supply Depot]] *
 
* [[UAC Invasion: The Supply Depot]] *
 
* [[UCA]]
 
* [[UCA]]
Line 487: Line 577:
 
* [[Untitled 2]]
 
* [[Untitled 2]]
 
* [[Valhalla]]
 
* [[Valhalla]]
 +
* [[Vanilla Doom Actions]]
 
* [[Vengeance: SkyBase Sirius IV]]
 
* [[Vengeance: SkyBase Sirius IV]]
 
* [[Venom]]
 
* [[Venom]]
 +
* [[Verdant Citadel]]
 
* [[Void]] *
 
* [[Void]] *
 
* [[Void and Rainbow]]
 
* [[Void and Rainbow]]
Line 499: Line 591:
 
* [[Wasteland: Dead Base]]
 
* [[Wasteland: Dead Base]]
 
* [[Wasteland: Mountain of Fire]]
 
* [[Wasteland: Mountain of Fire]]
 +
* [[Wasteland: Sands of Death]]
 
* [[Wasteme]]
 
* [[Wasteme]]
 
* [[The Waterfront]]
 
* [[The Waterfront]]
 
* [[Waterlab GZD]]
 
* [[Waterlab GZD]]
 +
* [[A World in Strife: Raiding the Dam]]
 
* [[Wow]]
 
* [[Wow]]
 
* [[Xenomorph: The complex]]
 
* [[Xenomorph: The complex]]
 
* [[XXXI CyberSky]]
 
* [[XXXI CyberSky]]
 +
* [[Yaotzin]]
 
* [[Yesterday's Nightmare]]
 
* [[Yesterday's Nightmare]]
 
* [[You Dig]]
 
* [[You Dig]]
* [[The ZDoom Community Map Project "Take 1"]]
+
* [[The ZDoom Community Map Project "Take 1"]] *
 
* [[The ZDoom Community Map Project "Take 2"]]
 
* [[The ZDoom Community Map Project "Take 2"]]
 
* [[Zeus]]
 
* [[Zeus]]
Line 523: Line 618:
 
===Multi-level WADs===
 
===Multi-level WADs===
 
<div style="-moz-column-width: 20em; column-width: 20em;">
 
<div style="-moz-column-width: 20em; column-width: 20em;">
 +
* [[007: Licence to Spell DooM]] (9) *
 
* [[1 Monster]] (25)
 
* [[1 Monster]] (25)
 
* [[10 Sectors]] (32)
 
* [[10 Sectors]] (32)
 +
* [[100LineN]] (32)
 +
* [[100LineT]] (32)
 
* [[1994 Tune-up Community Project]] (32)
 
* [[1994 Tune-up Community Project]] (32)
 
* [[2 Sectors]] (17)
 
* [[2 Sectors]] (17)
Line 553: Line 651:
 
* [[50 Shades of Graytall]] (18)
 
* [[50 Shades of Graytall]] (18)
 
* [[99 Ways to Die]] (3)
 
* [[99 Ways to Die]] (3)
 +
* [[A.L.T.]] (32) *
 
* [[Absolutely Killed]] (9)
 
* [[Absolutely Killed]] (9)
 
* [[The Abyss]] (24)
 
* [[The Abyss]] (24)
 +
* [[Akeldama]] (32)
 
* [[Alien Vendetta]] (35)
 
* [[Alien Vendetta]] (35)
 
* [[Aliens TC]] (11)
 
* [[Aliens TC]] (11)
 +
* [[All Apologies]] (2)
 
* [[All Hell is Breaking Loose]] (5) *
 
* [[All Hell is Breaking Loose]] (5) *
 
* [[Aloha999]] (8)
 
* [[Aloha999]] (8)
 +
* [[Alternate DOOM II]] (11)
 
* [[Ancient Aliens]] (32) *
 
* [[Ancient Aliens]] (32) *
 
* [[Army of Darkness TC]] (10) *
 
* [[Army of Darkness TC]] (10) *
Line 565: Line 667:
 
* [[ASDoom]] (9)
 
* [[ASDoom]] (9)
 
* [[ASDOOMII: The Final Countdown]] (8)
 
* [[ASDOOMII: The Final Countdown]] (8)
 +
* [[Austerity: A Simplicity Tribute]] (3)
 +
* [[Avactor: End of the Fifth Circle]] (12) *
 
* [[Back to Hell]] (9)
 
* [[Back to Hell]] (9)
 
* [[Back to Saturn X]] E1 (27)
 
* [[Back to Saturn X]] E1 (27)
 
* [[Back to Saturn X]] E2 (27)
 
* [[Back to Saturn X]] E2 (27)
 
* [[Base Ganymede]] (27)
 
* [[Base Ganymede]] (27)
 +
* [[The Beginning of the End (part 1)]] (18)
 
* [[Bella II]] (43) *
 
* [[Bella II]] (43) *
 
* [[BF THUD!]] (29)
 
* [[BF THUD!]] (29)
Line 578: Line 683:
 
* [[Castle Phobos]] (10)
 
* [[Castle Phobos]] (10)
 
* [[Caverns of Darkness]] (12)
 
* [[Caverns of Darkness]] (12)
 +
* [[CH Retro Episode]] (9)
 
* [[The Classic Episode, Part 2]] (9)
 
* [[The Classic Episode, Part 2]] (9)
 
* [[The Classic Episode]] (9)
 
* [[The Classic Episode]] (9)
Line 595: Line 701:
 
* [[Crusades]] (9)
 
* [[Crusades]] (9)
 
* [[Curse of D'Sparil]] (9)
 
* [[Curse of D'Sparil]] (9)
 +
* [[Cyberdreams]] (32)
 +
* [[Cygnus IV]] (14)
 
* [[Daedalus: Alien Defense]] (31)
 
* [[Daedalus: Alien Defense]] (31)
 
* [[Dark 7]] (7)
 
* [[Dark 7]] (7)
 +
* [[Dark 7 Mission Pack]] (7)
 +
* [[Dark Covenant]] (12)
 
* [[Dark Hell]] (9)
 
* [[Dark Hell]] (9)
 +
* [[Dark Universe]] (6) *
 
* [[The Darkening Episode 2]] (12)
 
* [[The Darkening Episode 2]] (12)
 
* [[The Darkening]] (11)
 
* [[The Darkening]] (11)
 
* [[Dawn of the Dead]] (8)
 
* [[Dawn of the Dead]] (8)
 
* [[Death Tormention 3]] (10) *
 
* [[Death Tormention 3]] (10) *
 +
* [[Deathless]] (36)
 +
* [[Debut]] (9)
 +
* [[The Definitive T DUNNxx.WAD Series - For Doom]] (6)
 
* [[Demonfear]] (32)
 
* [[Demonfear]] (32)
 
* [[Deus Vult]] (5)
 
* [[Deus Vult]] (5)
Line 607: Line 721:
 
* [[Deus Vult Zero]] (1)
 
* [[Deus Vult Zero]] (1)
 
* [[Diet 32in24]] (16)
 
* [[Diet 32in24]] (16)
 +
* [[Dimension of the Boomed]] (8) *
 +
* [[Dinner]] (9)
 
* [[Disrepair]] (10)
 
* [[Disrepair]] (10)
 +
* [[Doom 2 Extreme Gold]] (32) *
 
* [[Doom 2 In Name Only]] (33)
 
* [[Doom 2 In Name Only]] (33)
 
* [[Doom 2 Reloaded]] (32)
 
* [[Doom 2 Reloaded]] (32)
 
* [[Doom 2 the Way id Did]] (33) *
 
* [[Doom 2 the Way id Did]] (33) *
 
* [[Doom 2 Unleashed]] (40)
 
* [[Doom 2 Unleashed]] (40)
 +
* [[Doom 64]] (40)
 
* [[Doom Core]] (32)
 
* [[Doom Core]] (32)
 
* [[Doom II]] (32)
 
* [[Doom II]] (32)
 +
* [[Doom II X-Treme]] (32) *
 
* [[Doom the Way id Did]] (27)
 
* [[Doom the Way id Did]] (27)
 
* [[Doom the Way id Did: The Lost Episodes]] (55)
 
* [[Doom the Way id Did: The Lost Episodes]] (55)
Line 625: Line 744:
 
* [[Double Impact]] (9)
 
* [[Double Impact]] (9)
 
* [[Dystopia 3]] (11)
 
* [[Dystopia 3]] (11)
 +
* [[E1 Contest]] (15)
 
* [[Earth (WAD)]] (10)
 
* [[Earth (WAD)]] (10)
 
* [[Elements]] (5)
 
* [[Elements]] (5)
 +
* [[Elf Gets Pissed]] (9) *
 
* [[End Game]] (8)
 
* [[End Game]] (8)
 
* [[The Enigma Episode]] (9)
 
* [[The Enigma Episode]] (9)
Line 648: Line 769:
 
* [[Full On]] (5)
 
* [[Full On]] (5)
 
* [[Galaxia]] (2)
 
* [[Galaxia]] (2)
 +
* [[Genesis (WAD)]] (2)
 
* [[Going Down]] (32) *
 
* [[Going Down]] (32) *
 +
* [[Gothic 99]] (8)
 +
* [[GothicDM]] (32)
 +
* [[GothicDM 2]] (32)
 
* [[The Green Machine]] (12)
 
* [[The Green Machine]] (12)
 +
* [[Gulag]] (5)
 
* [[H2H-Xmas]] (32)
 
* [[H2H-Xmas]] (32)
 
* [[Hadephobia]] (35)
 
* [[Hadephobia]] (35)
 
* [[Harmony]] (11)
 
* [[Harmony]] (11)
 +
* [[Hell Ground]] (7) *
 
* [[Hell Revealed]] (32)
 
* [[Hell Revealed]] (32)
 
* [[Hell Revealed II]] (32)
 
* [[Hell Revealed II]] (32)
 +
* [[Hell Run]] (9)
 
* [[Hell To Pay]] (32)
 
* [[Hell To Pay]] (32)
 
* [[Hellbound]] (32)
 
* [[Hellbound]] (32)
Line 662: Line 790:
 
* [[Heretic Treasure Chest]] (27)
 
* [[Heretic Treasure Chest]] (27)
 
* [[Herian 2]] (32)
 
* [[Herian 2]] (32)
 +
* [[Heroes]] (36)
 
* [[Heroes' Tales]] (33)
 
* [[Heroes' Tales]] (33)
 
* [[Hexen]] (31)
 
* [[Hexen]] (31)
Line 668: Line 797:
 
* [[HYMN: A Heretic Community Project]] (9)
 
* [[HYMN: A Heretic Community Project]] (9)
 
* [[Icarus: Alien Vanguard]] (32)
 
* [[Icarus: Alien Vanguard]] (32)
 +
* [[Infected Area]] (7)
 
* [[Infinity]] (8)
 
* [[Infinity]] (8)
 
* [[Interception]] (32)
 
* [[Interception]] (32)
 
* [[The Invaders]] (6)
 
* [[The Invaders]] (6)
 +
* [[Istanbul]] (4)
 
* [[Japanese Community Project]] (32)
 
* [[Japanese Community Project]] (32)
 
* [[Jenesis]] (34) *
 
* [[Jenesis]] (34) *
Line 676: Line 807:
 
* [[Kansam's Trial]] (9)
 
* [[Kansam's Trial]] (9)
 
* [[Khorus (WAD)]] (9)
 
* [[Khorus (WAD)]] (9)
 +
* [[Kill! Zone]] (7)
 +
* [[Kill! Zone II]] (7)
 
* [[Knee-Deep in ZDoom]] (10)
 
* [[Knee-Deep in ZDoom]] (10)
 
* [[Legacy of Heroes]] (10) *
 
* [[Legacy of Heroes]] (10) *
 
* [[Lilith]] (11)
 
* [[Lilith]] (11)
 +
* [[Lord of the Flies]] (9) *
 
* [[The Lost Episodes of Doom]] (24)
 
* [[The Lost Episodes of Doom]] (24)
 +
* [[The Lost Levels]] (7)
 
* [[Lunatic]] (5) *
 
* [[Lunatic]] (5) *
 
* [[Magnolia]] (3) *
 
* [[Magnolia]] (3) *
Line 685: Line 820:
 
* [[Mars War]] (32)
 
* [[Mars War]] (32)
 
* [[Maskim Xul]] (3) *
 
* [[Maskim Xul]] (3) *
 +
* [[Mass Extinction]] (32)
 
* [[Master Levels for Doom II]] (21)
 
* [[Master Levels for Doom II]] (21)
 
* [[Mayan Mishap]] (5) *
 
* [[Mayan Mishap]] (5) *
Line 692: Line 828:
 
* [[MAYhem 2016]] (21)
 
* [[MAYhem 2016]] (21)
 
* [[MAYhem 2018]] (42) *
 
* [[MAYhem 2018]] (42) *
 +
* [[MAYhem 2019]] (19) *
 
* [[MAYhem 2048]] (35)
 
* [[MAYhem 2048]] (35)
 
* [[Memento Mori]] (32)
 
* [[Memento Mori]] (32)
Line 705: Line 842:
 
* [[No Sleep for the Dead]] (10)
 
* [[No Sleep for the Dead]] (10)
 
* [[NOVA II: New Dawn]] (32) *
 
* [[NOVA II: New Dawn]] (32) *
 +
* [[NOVA III]] (32)
 
* [[NOVA: The Birth]] (32)
 
* [[NOVA: The Birth]] (32)
 
* [[Nuke Mine]] (9)
 
* [[Nuke Mine]] (9)
 +
* [[Number One Kill]] (9)
 
* [[Obituary]] (17) *
 
* [[Obituary]] (17) *
 +
* [[Odyssey]] (5)
 +
* [[Operation: Biowar]] (19)
 
* [[Oracle...]] (2)
 
* [[Oracle...]] (2)
 +
* [[Osiris]] (8) *
 
* [[Perdition's Gate]] (32)
 
* [[Perdition's Gate]] (32)
 
* [[Pesha]] (3)
 
* [[Pesha]] (3)
Line 715: Line 857:
 
* [[Phobos Revisited]] (9)
 
* [[Phobos Revisited]] (9)
 
* [[Phobos: Anomaly Reborn]] (9)
 
* [[Phobos: Anomaly Reborn]] (9)
 +
* [[Phobos: Relive the Nightmare]] (9)
 
* [[PhobosDeimos Anomaly]] (12)
 
* [[PhobosDeimos Anomaly]] (12)
 
* [[Plutonia 2]] (33)
 
* [[Plutonia 2]] (33)
 
* [[The Plutonia Experiment]] (32)
 
* [[The Plutonia Experiment]] (32)
 
* [[Plutonia: Revisited Community Project]] (32)
 
* [[Plutonia: Revisited Community Project]] (32)
 +
* [[Post]] (11) *
 
* [[Preacher]] (10) *
 
* [[Preacher]] (10) *
 
* [[Project - Kate]] (3) *
 
* [[Project - Kate]] (3) *
 
* [[Rage Doom]] (19)
 
* [[Rage Doom]] (19)
 
* [[Raven series]] (11)
 
* [[Raven series]] (11)
 +
* [[Realm of Chaos]] (32)
 
* [[The Realm of Parthoris]] (10)
 
* [[The Realm of Parthoris]] (10)
 
* [[The Rebirth]] (32) *
 
* [[The Rebirth]] (32) *
Line 731: Line 876:
 
* [[Reverie]] (32)
 
* [[Reverie]] (32)
 
* [[Revolution!]] (33)
 
* [[Revolution!]] (33)
 +
* [[Sacrament]] (14)
 
* [[Sacrifice]] (6)
 
* [[Sacrifice]] (6)
 +
* [[School Doom II]] (6) *
 
* [[Scythe]] (32)
 
* [[Scythe]] (32)
 
* [[Scythe 2]] (32) *
 
* [[Scythe 2]] (32) *
Line 738: Line 885:
 
* [[SIGIL]] (9)
 
* [[SIGIL]] (9)
 
* [[Sillouhettes of Phobos]] (4)
 
* [[Sillouhettes of Phobos]] (4)
 +
* [[Simply Phobos]] (10)
 
* [[Sin City (1995 WAD)]] (9)
 
* [[Sin City (1995 WAD)]] (9)
 
* [[SkePLand]] (3)
 
* [[SkePLand]] (3)
 +
* [[Skyewood]] (3)
 
* [[Slaughter Until Death]] (9)
 
* [[Slaughter Until Death]] (9)
 
* [[SlayeR (WAD)]] (11)
 
* [[SlayeR (WAD)]] (11)
Line 747: Line 896:
 
* [[Stardate 20X6]] (8)
 
* [[Stardate 20X6]] (8)
 
* [[Stardate 20X7]] (11) *
 
* [[Stardate 20X7]] (11) *
 +
* [[STRAIN]] (32) *
 
* [[Strife]] (34)
 
* [[Strife]] (34)
 
* [[Strife: Veteran Edition]] (4)
 
* [[Strife: Veteran Edition]] (4)
* [[Sunder]] (18)
+
* [[Struggle - Antaresian Legacy]] (33)
 +
* [[Sunder]] (21) *
 
* [[Sunlust]] (32)
 
* [[Sunlust]] (32)
 
* [[Super MAYhem 17]] (28) *
 
* [[Super MAYhem 17]] (28) *
Line 755: Line 906:
 
* [[Swift Death]] (32)
 
* [[Swift Death]] (32)
 
* [[Swim With The Whales]] (4)
 
* [[Swim With The Whales]] (4)
 +
* [[System Vices]] (8)
 
* [[The Talosian Incident]] (20)
 
* [[The Talosian Incident]] (20)
 
* [[Tangerine Nightmare]] (10) *
 
* [[Tangerine Nightmare]] (10) *
* [[Threshold of Pain]] (12)
+
* [[TDUNN Series for Doom]] (7)
 +
* [[TDUNN Series for Doom]] (1)
 +
* [[TDUNN Series for Doom II]] (2)
 +
* [[TDUNN Series for Doom II]] (12)
 +
* [[TDUNN Series for Doom II]] (13)
 +
* [[Threshold of Pain]] (12) *
 
* [[THT: Threnody]] (20)
 
* [[THT: Threnody]] (20)
 
* [[Thy Flesh turned into a draft-excluder]] (9)
 
* [[Thy Flesh turned into a draft-excluder]] (9)
 
* [[TNT: Evilution]] (32)
 
* [[TNT: Evilution]] (32)
 
* [[TNT: Revilution]] (32) *
 
* [[TNT: Revilution]] (32) *
* [[The Troopers' Playground]] (9) *
+
* [[Torment]] (6)
 +
* [[The Troopers' Playground]] (10) *
 
* [[The Twilight Zone]] (32)
 
* [[The Twilight Zone]] (32)
 
* [[UAC Ultra]] (11) *
 
* [[UAC Ultra]] (11) *
Line 768: Line 926:
 
* [[Ultimate Doom the Way id Did]] (9)
 
* [[Ultimate Doom the Way id Did]] (9)
 
* [[Unholy Realms]] (32)
 
* [[Unholy Realms]] (32)
 +
* [[Urania]] (32)
 
* [[Vae Victus 2]] (7)
 
* [[Vae Victus 2]] (7)
 
* [[Valiant]] (32) *
 
* [[Valiant]] (32) *
 
* [[Vanguard]] (13)
 
* [[Vanguard]] (13)
 
* [[Vile Flesh]] (32)
 
* [[Vile Flesh]] (32)
 +
* [[Welcome to Hell]] (3)
 
* [[Whispers of Satan]] (35) *
 
* [[Whispers of Satan]] (35) *
 
* [[Whitemare 2]] (32)
 
* [[Whitemare 2]] (32)
 +
* [[Wolfenstein 3D 1st Encounter]] (4)
 
* [[Xmas Doom]] (3)
 
* [[Xmas Doom]] (3)
 
* [[Yak World]] (2)
 
* [[Yak World]] (2)
Line 784: Line 945:
 
! !! Total
 
! !! Total
 
|-
 
|-
| '''Overall map pages''' ||style="text-align: right;"| '''5736'''
+
| '''Overall map pages''' ||style="text-align: right;"| '''6807'''
 +
|-
 +
| [[#Single-level WADs|Single-level WAD]] map pages ||style="text-align: right;"| '''359'''
 +
|-
 +
| [[#Multi-level WADs|Multi-level WAD]] map pages ||style="text-align: right;"| '''6448'''
 
|-
 
|-
| [[#Single-level WADs|Single-level WAD]] map pages ||style="text-align: right;"| '''285'''
+
| WADs with a [[#Custom things mapping|custom things mapping]] file * ||style="text-align: right;"| '''85'''
 
|-
 
|-
| [[#Multi-level WADs|Multi-level WAD]] map pages ||style="text-align: right;"| '''5451'''
+
| {{cat|Navboxes for map articles}} ||style="text-align: right;"| '''787'''
 
|-
 
|-
| WADs with a [[#Custom things mapping|custom things mapping]] file * ||style="text-align: right;"| '''61'''
+
| Distinct {{cat|Mappers|map authors with articles}} ||style="text-align: right;"| '''582'''
 
|-
 
|-
| {{cat|Navboxes for map articles}} ||style="text-align: right;"| '''655'''
+
| Distinct map authors w/o articles ||style="text-align: right;"| '''441'''
 
|-
 
|-
 
| Distinct links to [[Compet-n]] ||style="text-align: right;"| '''346'''
 
| Distinct links to [[Compet-n]] ||style="text-align: right;"| '''346'''
 
|-
 
|-
| Distinct links to [[Doomed Speed Demos Archive|DSDA]] ||style="text-align: right;"| '''388'''
+
| Distinct links to [[Doomed Speed Demos Archive|DSDA]] ||style="text-align: right;"| '''447'''
 
|-
 
|-
| .ini files ||style="text-align: right;"| '''277'''
+
| .ini files ||style="text-align: right;"| '''345'''
 
|}
 
|}

Revision as of 09:18, 3 August 2020

XymphBot is an account for use in MediaWiki API queries. It is owned by Xymph, and used via bot scripts written in PHP based on the Wikimate library. After a coding and testing period, it commenced automated edits in October 2016.

The overall goal of these scripts is to put as much computer-creatable content into map pages as feasible, and check that existing content is as complete and consistent as possible, so that human contributors can focus more on crafting creative prose like background information, walkthroughs, trivia and other map-specific content. Also, I like alliteration. :)

Configuration

The starting point for all scripts is a .ini file that specifies settings and a series of map pages. Typically the list includes all levels in an IWAD or megawad, but combining single-level PWADs in one list is also possible.

The settings for all maps include the various input and output paths, the relevant IWAD, an optional PWAD, the type of DMMPST output and any DMMPST flags, an optional pattern for map view filenames, an optional flag defining whether to put the "notally=1" parameter into the map spots template (for Hexen and Strife levels), the WAD ID for Compet-n and DSDA links, and the WAD's author(s).

The settings per map are the episode and mission, the path to the Doom Wiki page, and optional overrides of that map's PWAD, DMMPST output type and flags, author(s), and script-specific actions.

An optional navboxes section defines the number and style of navboxes (Doom-like, standard Doom II-like or Doom II episodic grouping), and the paths, optional episode names, and map ranges for each navbox.

The .ini file can easily be generated from a list of levels in wikicode (e.g. Doom II's) copy/pasted into a file, and passing it through the wiki2ini.php script. This extracts the list of required map settings and prefixes it with the general settings, so that only a few manual edits remain necessary to result in a .ini file usable by the scripts.

.ini scripts

skeletonBot.php

Checks map pages' section headers against the reference map skeleton and shows differences in ordering, spelling, and formatting.

conventionsBot.php

Checks map pages for a wide variety of spelling, linking and formatting conventions.

secretsBot.php

Compares DMMPST's list of secret sectors against those in map pages' Secrets sections (or Official subsections) and updates its formatting if necessary, or adds the list if such a section is empty.

pspawnsBot.php

Compares DMMPST's list of DM/CTF player spawns with facings (directions) against those in map pages' "Player spawns" sections and updates their formatting if necessary, or adds the list if such a section is empty.

dmmpstBot.php

Uses DMMPST's output to replace map pages' Statistics, Map data or Things sections.
Optionally provides interactive comparison between old and new contents of the pertaining section, prior to submitting the edit.
Alternatively creates new map pages with DMMPST's full skeleton output.

dmsectionBot.php

Uses DMMPST's output to add "Player spawns" and Things subsections (with a short introduction sentence) to the Deathmatch sections for separate arenas within larger maps. The things tables are generated from WADs with the pertaining levels (linedefs and things) cropped down to just the arenas.
For regular maps without separate arenas, only the "Player spawns" subsection is added, along with the Deathmatch section header (before the Statistics section) if not yet present.
Conversely, for maps without deathmatch starts, the Deathmatch header is removed (unless the section is not empty).
Optionally provides interactive comparison between old and new contents of the pertaining section or page, prior to submitting the edit.

extraCoopBot.php

Uses DMMPST's logging of additional Things existing in cooperative (for Boom or Hexen flags) or multiplayer mode when compared to single-player mode to add categories Levels with extra monsters in co-op and/or Levels with extra equipment in co-op.
Always provides interactive comparison between old and new contents of the page, prior to submitting the edit.

uploadmapBot.php

Uploads new or updated map view images with description text, of which the exact phrasing about scale or size and cropping is determined from image sets generated via Omgifol drawmaps. New images are uploaded according to the map view pattern.
Always provides interactive viewing of (old and) new contents of the description, prior to submitting the image and description.

uploadmapDmBot.php

Performs the same tasks as uploadmapBot.php, but for deathmatch (arena) map views with spawn points. The images are generated from WADs with the pertaining linedefs cropped down to just the arenas, but their things left intact (because cropping them in SLADE 3 changes their order, which would result in incorrect spawn points numbering).

mapviewBot.php

Checks and updates the map view (link, dimensions, caption, and map spots template) in map pages' Walkthrough sections. Newly uploaded images are linked according to the map view pattern.
Always provides interactive comparison between old and new contents of the map view lines, prior to submitting the edit.

mapviewDmBot.php

Performs the same tasks as mapviewBot.php, but in Analysis sections for deathmatch maps or in Deathmatch sections for arenas within larger maps, and without the spots template.

navboxBot.php

Checks and adds the navbox line in map pages' intro sections, updates or strips the nocat option in the map template, and strips the skeleton preamble comment.
Always provides interactive comparison between old and new contents of the intro lines, prior to submitting the edit.

navboxGen.php

Generates one or multiple navboxes for Doom/Doom II/Heretic map pages based on the navboxes settings, and adds or replaces them in the template space.
Always provides interactive viewing of (old and) new contents of each navbox, prior to submitting the edit.

galleryBot.php

Checks and updates the gallery in map pages' "Areas / screenshots" sections. Adds the gallery container (and section) if it's not yet present. Applies the standard parameters and trims unneeded image attributes, if any. Also cleans up some minor page issues, if necessary.
Always provides interactive comparison between old and new contents of the page, prior to submitting the edit.

demolinkBot.php

Checks and updates Compet-n and DSDA links in map pages' "External links" sections, or adds them if applicable. Also standardizes formatting of categories and H2 headers.
Always provides interactive comparison between old and new contents of the page, prior to submitting the edit.

authorBot.php

Adds one or more authors to map pages' intro sections (optionally omitting wikilinks), along with each corresponding author's levels category at the end. Optionally removes the default skeleton text about custom music.
Always provides interactive comparison between old and new contents of the page, prior to submitting the edit.
If the page already deviates from the skeleton text, then instead shows the initial intro line and all trailing categories.

partimeBot.php

Parses par times from (separately extracted) DEHACKED and/or MAPINFO lumps and appends standard sentences to the first paragraph in map pages' intro sections. Mentions the origin lump unless the same time is specified in both lumps (they differ in e.g. D2TWID). Uses general lumps for the main (P)WAD, but can also handle lumps from map-specific PWADs.
Alternatively, if no par time is defined, removes the initial stub sentence.
Always provides interactive comparison between old and new contents of the intro, prior to submitting the edit.

comparisonBot.php

Checks and updates the map view gallery for comparing PC maps with console counterpart(s) on the latter's map pages: adds the PSX variant if not yet included, appends platform indicators to map captions, and redimensions the gallery per the aspect ratio of the PC image so that its area approximates 90000 px2.
Always provides interactive comparison between old and new contents of the page, prior to submitting the edit.

mapperMaps.php

In a mapper's article, finds the multi-level WADs and their pertaining maps that are covered in the .ini collection, checks consistency of their names (using approximate matching to detect typos) and authorship both ways, and (re)links them via the {{maplinkgen}} template.
If needed, italicizes a parenthesized string after an individual map entry (usually cooperating authors). Also, formats bullet indentation consistently, and erases trailing whitespace and extraneous empty lines throughout the page. Further, (re)formats DEFAULTSORT and any categories towards the end of the page, one per line.
Always provides interactive comparison between old and new contents of the page, prior to submitting the edit.
Lastly, lists any maps attributed in the .ini collection that were not found on the mapper's page, suitably formatted for manual addition.
All this can performed on one named page, or on a list of pages loaded from a file. Auxiliary script listCategory.php generates such a list from the Mappers category.

createMapper.php

From the author registration in the .ini collection, generates the text for a manually createable stub page of a mapper, with preformatted name, alias, DEFAULTSORT (if needed) and category. Organizes their covered projects / contributions by year (optionally with annual section headers), with formatted lists of co-authors per map where applicable.

addCategoryBot.php

Appends a new category to all or selected map pages. Optionally inserts it before an existing category.
Always provides interactive comparison between old and new contents of the page, prior to submitting the edit.

Miscellaneous scripts

These scripts don't work on a .ini file and its series of map pages as such, but perform other convenient tasks. Most of these don't automatically update pages via the bot account, and only produce output for manual updates.

coveredWads.php

Collects and lists the names of all single- and multi-level WADs covered by the aforementioned .ini files and scripts, and totals the number of maps included in them. Also totals the number of navboxes created/updated by navboxGen.php, the number of custom things mapping files, and the number of distinct links covered by demolinkBot.php. Its output is the entire "WADs covered so far" section below.

articleSort.php

Finds article, category and template pages whose titles start with an article ("A"/"An"/"The") and shows whether they contain a DEFAULTSORT tag, named map template, category sortkey, or none. Its output is the entire "Pages starting with an article" page. Thanks to Ryan W for the idea.

textmapStats.php

Processes an extracted TEXTMAP lump with regular expressions and a little code to generate statistics in Template:Mapdata format, along with formatted lists of secret sector numbers and deathmatch spawn points (if any). Useful for UDMF maps, which DMMPST doesn't support.

textmapExtra.php

Processes an extracted TEXTMAP lump with regular expressions and some code to collect monster and equipment counts for single-player and cooperative modes, and lists those where the counts differ. Again, useful for UDMF maps.

listWikiLinks.php

Collects links to Wikipedia by templates, interwiki links and direct links, along with the DoomWiki pages they're linked from, in the following namespaces: main, Doom Wiki, Help, File, Category, and Template. Its output is the entire "List of Wikipedia links" page. Requested by Ryan W.

listInterLinks.php

Collects direct links to sites for which Interwikis are defined, along with the DoomWiki pages they're linked from, in the following namespaces: main, Doom Wiki, Help, File, Category, and Template. Its output is the entire "List of Interwiki links" page. Thanks to Gez for the idea.

listExternLinks.php

Collects direct links to sites for which external link templates are defined, along with the DoomWiki pages they're linked from, in the following namespaces: main, Doom Wiki, Help, File, and Category. Its output is the entire "List of templatable links" page. Thanks to Gez for the idea.

linkArticle.php

Performs a search for the specified string in the main and Category namespaces, then in each of the resulting articles wikilinks the first occurrence of the string, if not already linked.
Conversely, unlinkArticle.php removes any wikilinks.
Both always provide interactive comparison between old and new contents of the page, prior to submitting the edit.

destubMaps.php

From map pages transcluding {{level stub}}, removes the template if the article contains: a walkthrough description in the Essentials section, descriptions for bulleted Secrets (or no official secrets), and complete Map data & Things tables. Conversely, restubMaps.php adds back the template if any such section (typically Essentials) is empty or too minimalistic.
Both always provide interactive comparison between old and new contents of the page, for the actual de-/restub decision by the bot operator, prior to submitting the edit.

updateAuthor.php

After a mapper article and its associated levels category have been moved (typically to include or remove a full name), go over the map articles in the old category to rename the wikilinked author and levels category.
Both always provide interactive comparison between old and new contents of the page, prior to submitting the edit.

addTemplate.php

Processes all articles linked from a template to append that template. If the template contains an includeonly category, this category is replaced by the template. Also, (re)formats any categories after the template(s), one per line.
Both always provide interactive comparison between old and new contents of the page, prior to submitting the edit.

appearMaps.sh

From the archived things tables, collects/sorts the maps with the highest count of a given thing and emits a prettytable. Because Holy Hell MAP05 is a superset of MAP01-04, the latter are skipped from the table.

top100MemMaps.php

Processes the maps list of the Top 100 Most Memorable Maps and appends a sentence about the map's place to each page's intro section (taking a trailing 'level stub' into account). Also checks for the presence of the Top100 category.

rankMappers.php

From all the subcategories under category Levels by author, collects the number of pages, then sorts and prints the 50 highest entries. Its output is the entire "Mappers ranked by map count" page. Inspired by the Most Prolific Mappers topic on the Doomworld forums.

listigf

A Bash script to search (most of) the .txt files in the idgames archive for a regular expression, show the matching context segments of each matching file, prompt whether to include the file, for the selected files fetch the title and ID from the pertaining page in the Doomworld idgames frontend, and output a bulleted list sorted by the files' timestamps and grouped by their years. At the prompt, a comma-separated list of map names can be entered (with optional co-authors), which is then included in a bulleted sublist for the pertaining file (with italicized co-authors). Used primarily to generate body-of-work sections for mappers.

And more?

Ideas for future scripts, anyone?

How can you help?

Create overview pages for all WADs to be covered (e.g. Top 100 WADs of All Time, Cacowards, List of notable WADs) with information as accurate and complete as feasible, especially the episodic structure (if any), the list of levels, and the use of custom monsters/weapons (see below).

And after a series of skeleton pages has been created, edit them to add any music and other introductory information, and of course walkthrough and secrets descriptions, speedrunning records, and whatever else you can contribute.

Custom things mapping

For custom things, a description or table of thing types and the new monster/weapon names is particularly helpful, and can be used to provide a mapping file to DMMPST that automatically incorporates the customizations into the Things table. An initial discussion and example mapping was presented for Valiant.

The mapping file ideally links to description(s) of the custom thing(s) on the WAD's overview page. This can be a simple one-liner but preferably contains a brief entry per thing that mentions which original thing is replaced by which custom one, and may be even more elaborate.

So, to help, please provide such descriptions (or better yet, provide a full mapping table on the WAD's talk page) for the following WADs that I already processed previously:

and verify the correctness of Valiant's mapping file. Then I can (re)generate the Things tables on all pertaining map pages.

Going forward, the same is welcome for WADs I am skipping for now because the overview information does not appear to be sufficiently descriptive and complete. This includes:

and (m?)any more I haven't gotten around to yet.

WADs covered so far

The lists below show the single-level and multi-level WADs that have so far been covered (created and/or updated) via XymphBot and its .ini files. Map counts per WAD and various totals are included (state of 2020-08-03 09:12 CDT).

Single-level WADs

Multi-level WADs

Statistics

Total
Overall map pages 6807
Single-level WAD map pages 359
Multi-level WAD map pages 6448
WADs with a custom things mapping file * 85
Navboxes for map articles 787
Distinct map authors with articles 582
Distinct map authors w/o articles 441
Distinct links to Compet-n 346
Distinct links to DSDA 447
.ini files 345