User:Endilyn/Archive/Preparing to move Hero pages


 * If I missed anything, feel free to edit this page.


 * Somewhat important: Do not refresh this page mid-way once you have started the process, as some cargo tables will no longer make sense. Just in case, you may want to use a web archive tool or similar before starting.

There have been some suggestions to move page names from something like Tiki (Adult) (Ylissean Summer) to Tiki: Summering Scion. There are some advantages to this: Some disadvantages: Technical disadvantages:
 * This is the official way to refer to a Hero.
 * This means that we won't have to use arbitrary or made‐up identifiers, such as Young and Adult.
 * This also means that this method will always work, since it is the method the game itself uses to differentiate Heroes (like in "Heroes that share the same illustration, name, and epithet are considered the same Hero. Even if the character is the same, Heroes with different illustrations and epithets are considered to be different Heroes. As such, you cannot use them in Merge Allies.").
 * The current wiki scheme with using the focus name won't hold up if multiple versions of a character are released on the same focus, leading to more made-up identifiers required to differentiate them. Consider the possibility of a four‐Anna focus, how would you differentiate them? By their game? Their weapons? What if some of these overlap?
 * The current scheme for using only the character name for a Hero page instead of just a character page erroneously implies that one version of a Hero is the more "real", "standard", "main", etc., version than the others. In Fire Emblem: Awakening for example, there were three different versions of Marth, two prince and one king, and neither of them are more the "main" version than any other. The same idea also applies to Fire Emblem Cipher. In fact, this idea already applies to Heroes (for the example that would be most obvious to people, take Reinhardt's and Olwen's versions, another example is Quests & Missions using the full Alfonse: Prince of Askr name after Alfonse: Spring Prince was added to the game). Given the track record, it was actually more strange for Fire Emblem Heroes to not have more than one version of the same character at launch than the other way around, with alternative versions not showing up until far later. This leads to people latching on to the first normal-looking (as in they have the same movement, weapon, and appearance as in their origin game) Hero released as the "main" version of that character.
 * The fan names for characters, such as Bunny Chrom, Spring Chrom, S!Chrom, or whatever people come up with are more popular to use. This may pose problems for people who don't remember the title, but this problem is easily solved by redirects. In addition, the Focus names can be just as hard to remember.
 * Many things on the wiki use the page name as a parameter, making it difficult to move. This page is here to alleviate that issue.

About the regex on this page
Please note that the regex on this page is not meant to be used with the ReplaceText extension, but instead loaded into a table with AutoWikiBrowser to be used all at once (within each step). You possibly could use this regex with Replace Text, but it would take a very long time considering you can only use them one by one. Replace Text also uses a different flavor of regex than AWB (MySQL vs .NET), which may cause problems.

The regex on this page has been tested to be safe and should include all use cases in the wiki, but if you want to make it more bulletproof feel free to do so.

For information about using AutoWikiBrowser with the Gamepedia site, see gphelp:Logging in to third-party tools.

Tips & Tricks

 * Double click on a table field to quickly highlight all the text there, then you can use keyboard shortcuts to quickly copy and paste the content you need.

Using AWB
AutoWikiBrowser is made for Windows, but can run reasonably on Linux using Wine.

Things you might want to do before starting:
 * Main tabs
 * Options tab
 * Automatic Changes box
 * Uncheck everything here
 * Find and replace
 * Check Skip if no replacement made
 * Bots tab
 * Check auto save to make it automated
 * Menu bar
 * Options
 * Check "Do not use edit section summaries", "Do not apply WP:MOS fixes"
 * Preferences
 * General
 * Disable logging (this slows down the program)

To get a list of pages on the wiki, choose Special Page for the Source, then click Make list. Then select All Pages (no redirects) for the source, then pick Main for the namespace. Repeat for Template and Category namespaces. This list is the list the find and replace will search through.

Phase 1
This phase is for steps that leave little to no major downtime, and are considered safe to do first.

Filenames
Filenames will have to be moved. Notably, MediaWiki does not allow certain characters in filenames for technical reasons, such as  and , which the Hero names use (Tharja: "Normal Girl"). This problem can be solved by running the page name parameters through MF, giving a (mostly) POSIX "Fully portable filenames" standard filename, which will eliminate disallowed characters.

This is the most tedious step, but fortunately moving file names is a safe step that will leave no downtime, since it leaves redirects behind and old links will function as well by redirecting to the new one, so this step can be performed first before the others at a leisurely pace.

Please see this page for filenames to move.

Map names
Some map names have the same names as the Heroes they feature, notably the Grand Hero Battles and the Hero Battles. These need to have (map) or (battle) or similar appended at the end to not conflict with the new Hero page.

[cargo table removed]

Links to the map pages will also need to be fixed.

[cargo table removed]

[cargo table removed]

Usage in templates as parameters also need to be fixed:

[cargo table removed]

[cargo table removed]

Moving the Hero pages
This is the actual step where the Hero pages are moved. The following table serves as a reference. Unfortunately I know of no way to automate this, so this will be the slowest step.

[cargo table removed]

Filenames part 2
These templates can have MF run through template parameters: [ Hero Infobox Portrait], [ ArtistGalleryHeroImages], [ Battle Infobox Test], [ Enemy], [ EnemyInfoTable], [ HeroIcon], [ Hero Icon With Text], [ Hero List Row Entry], [ Heroes Reward], [ Herogrid Entry], [ VotingGauntletBracket], [ Skillbuild Infobox Default], [ TierListUnitBoxR], [ HeroSIPlannerTable] (crossed out templates don't appear to be used in any pages)

These templates additionally need to modify the cargo query into a template one since cargo doesn't run templates in the fields: [ Map List Row]

These modules also need to be modified: [ ArtistList], [ BBWB], [ HeroChart], [ Level1StatsTable], [ MaxStatsTable], [ SkillHeroList], [ SkillInheritanceList], [ SpeedChart], [ SummonRarities], [ SummonRaritiesByWeapon], [ SummonRaritiesByWeaponFull], [ VoiceActorsList]

Templates
Many templates use the page name as a parameter value. These need to be fixed.

[cargo table removed]

[cargo table removed] In addition, Template:TierList uses will need to be done manually, since the above regex does not handle Heroes being used in that way.

Modules / Lua
Modules should need little to no change, since the modules themselves appear to be designed to work with any page name, and escaping characters like quotes doesn't seem like it will be an issue (such as in Module:HeroList dealing with "Normal Girl" fine).

Modules are invoked using templates so fixing template page name parameters will fix the module ones as well.

Internal links
For links to Heroes with unofficial identifiers where those identifiers are also displayed, those links need to be fixed.

[cargo table removed]

For Heroes with lots of parentheses in the page title like Tiki (Adult) (Ylissean Summer) where those links aren't also the display name, they will be a minor concern because redirects will solve many direct linking issues. For other links that link only to a character name, follow these guidelines:
 * Green_check.svgLinks that should be changed: If the link is referring to the specific version of a character or that unit itself. Example:

Faye is the first Hero to come with Firesweep Bow. Faye → Faye or Faye → Faye: Devoted Heart
 * Dark_Red_x.svgLinks that should not be changed: If the link is only referring to the character. Example: Catria's older sister is Palla.

Because of the judgement needed, this process cannot be automated and each edit must be checked individually by a human when using regex. However, this is a minor concern as well, as the worst case scenario is simply an unfixed link linking to a disambiguation page.

Afterwards, some cleanup is required by fixing double redirects listed at Special:DoubleRedirects.

Third‐party tools
The new naming scheme may break some tools that pull data from the wiki, however it is the responsibility of the authors of those tools to maintain the tools, not the wiki's.

Preventing future disasters
These characters will be problematic to include in a page name: It's possible, though very unlikely (closest I can think of is Tiki=Waifu from Tokyo Mirage Sessions #FE), someone gets added to the game with one of these characters in their name, which would mean making a page name without that character in it, which would not accurately represent that character's name, leading to a difference in page name and actual name. Where possible, displaying names in templates or cargo queries etc. on pages should use the  and/or   fields instead of the page name, since these two can be different as mentioned before.