Fire Emblem Heroes Wiki:To-do list

From Fire Emblem Heroes Wiki
Jump to: navigation, search
Wip Laslow.png

Welcome to the wiki's to-do list. Here you can find all the tasks wiki editors plan to do. Feel free to add your own tasks to the list or complete a task. Once you complete a task, remove it from the list.

You may also hold informal discussions about tasks here if you want, remember to leave a signature with ~~~~ if you do so. Example:

==Current list==
*Do this
::Can this really be done? I tried it and I couldn't figure out anything. Username (talk) 12:12, 12 December 2012 (UTC)
::This is because the other tasks need to be done first, since this task relies on the other templates made by the other tasks. ~~~~
*Do another thing

Speed, convenience, and ease of use are prioritized for the to-do list. You do not have to worry about presentability when adding a task, especially due to the transient nature of the to-do list.

Tasks that might be impossible or no longer possible go on /Impossible tasks.

Current list[edit source]

Please make sure all tasks placed here are removable, that is, they are one-time only (or a limited amount). Recurring tasks can go in the Recurring maintenance tasks section.

Do not add tasks that solely require sysop rights, contact an administrator for that. Note that tasks that do not only consist of parts that require sysop rights can be added, such as adding/fixing things related to code. For example, anyone can create template and design its cargo system, sysop rights are only needed at the final step of creating the table.

Uncategorized[edit source]

Place tasks here if you're not sure what category they go in or don't want to bother categorizing it.

I'm not really sure if it's okay to create a page for it, but you can see it right here: User:RainThunder0/Important notice (Belgium). -RainThunder0 (talk) 07:24, 23 May 2019 (UTC)

New content[edit source]

Tasks about newly added features or data in updates.

{| class="wikitable default mw-collapsible mw-collapsed"
!Allegiance battle
|-
|{{MapLayout|baseMap=F0004|backdrop=Wave|type=HO
| a8= | b8={{ABTerrain|color=Red|type=Spawn}} | c8={{ABTerrain|color=Green|type=Spawn}} | d8= | e8={{ABTerrain|color=Green|type=Reinforcement}} | f8=
| a7= | b7= | c7= | d7= | e7= | f7={{ABTerrain|color=Colorless|type=Reinforcement}}
| a6= | b6= | c6= | d6= | e6= | f6=
| a5= | b5= | c5= | d5= | e5= | f5={{ABTerrain|color=Blue|type=Spawn}}
| a4={{ABTerrain|color=Colorless|type=Reinforcement}} | b4={{Ally|1}} | c4= | d4= | e4= | f4={{ABTerrain|color=Colorless|type=Spawn}}
| a3= | b3={{Ally|2}} | c3= | d3= | e3= | f3=
| a2={{ABTerrain|color=Green|type=Reinforcement}} | b2= | c2={{Ally|3}} | d2={{Ally|4}} | e2= | f2=
| a1= | b1={{ABTerrain|color=Blue|type=Reinforcement}} | c1= | d1={{ABTerrain|color=Red|type=Reinforcement|hero=Hrid: Icy Blade}} | e1= | f1=
}}
|}

Missing information[edit source]

Missing properties about the game data.

I've added all maps from that link, thank you. Currently, Grand Conquests 5 is still missing area 13, 18, 28, 30, and Grand Conquests 6 is missing area 6. RainThunder0 (talk) 22:15, 7 September 2019 (UTC)
  • Add "first available" dates to the unit data on Reward units with the firstdate parameter, using availability information of the associated quests / events. This will allow the distributed unit list to preserve the current sort order by displaying those dates, and without having to maintain Module:RewardUnitTable/data manually. --HertzDevil (talk) 08:44, 24 July 2019 (UTC)
    • Automatic, Story, Log-in, and Map reward units complete. Only Quests remain.
    • Purchased (Starter Support Pack, New Year's Bundle, Byleth-M) and Grails units are not visible on the reward units page, but should also have firstdate fields added. Boblers7 (talk) 21:14, 16 September 2019 (UTC)
    • Update: all units currently in the Distributions cargo table now have "first available" dates added. Since this essentially makes Module:RewardUnitTable/data extraneous, should the note about it on the Reward Units article be removed? Additionally, if I'm understanding correctly, should the Reward Units table display the earliest firstdate field in a new column, similar to how the current version displays the latest lastdate in a column? --Boblers7 (talk) 00:10, 17 September 2019 (UTC)
      • Done. --HertzDevil (talk) 10:45, 21 September 2019 (UTC)
      • This removes the sort between Heroes with the same date, like the starting Heroes for instance. Heroes from Three Hero quests are also meant to be obtained in a specific order, since one quest rewards a Hero that allows another quest to be completed, and so on. Endilyn (talk) 02:36, 27 September 2019 (UTC)
      • Hm, good point. How should we approach this, though? We could bring back Module:RewardUnitTable/data, but then we'd have come full circle and have to maintain it going forward. Alternatively, perhaps each Reward Unit table entry could have some tie-breaker field added? For example, Heroes released at the same time could be assigned a tie-breaker number of 1, 2, 3, etc according to their obtaining order. Sorting would then sort first by initial date, then by tie-breaker, both ascending.--Boblers7 (talk) 04:18, 27 September 2019 (UTC)
You don't need the rewarded unit from a Three Heroes quest to finish the other quests, though. There is no need to maintain the quest order on a table that lists all reward sources; besides, these quests won't be able to maintain the sort order anyway if any unit is already previously handed out. We could do that when we have the quest tables ready and display separate tables for each kind of reward source.
If we carefully lay out the data definitions, then _ID may be used as a tie-breaker, since it maintains the relative order between #cargo_store invocations. Template:Heroic Grails Hero List does this, but this is not as easy if the definitions are not all from the same page. --HertzDevil (talk) 10:07, 27 September 2019 (UTC)
  • Document Aether Raids changes in 3.6.0 - 3.9.0 (defense rewards, double cost)
  • Find out and document how bane neutralization from the first merge affects levels 1-39 and document in Stat growth
    • It seems stats with a flaw are then consider as normal. When the flaw stat is greater or equal to the neutral stat, it still gain +1, and follow the flaw line of stat until the normal line of stat become greater or equal. Some example: a Florina 4★, level 25 with a flaw on Res (20 Res) have after the merge 26 Res. A Seliph 4★ level 21 with flaw on Res (10 Res) have 11 Res after the merge. Then it gains +1 on level 23, 25 and 28, where the normal Res is greater than the flaw. The next stat increased is at level 29.
      • Dragonflower seems to follow a similar rule. As an example, an Edelgard with flaw on Atk which receive two dragonflowers have +1 on HP and Def. After the merge, the Def still have the bonus with dragonflower. Pival13 (talk) 19:32, 12 October 2019 (UTC)
    • Fix a bug on Stats calculator where Flaw stats increase by 3 or 4 on Lv 1 after the first merge, rather than by 1.
  • Reupload:
  • Aether Resort
    • document R&R Affinity costs of Structure slots #19-24
    • recover the dates that new Hero slots, Structure slots, and Amenities were added
  • The version 2.10.0 update on added Abyssal modes to the GHB Rotation 1 maps, but since these maps change each day, not every map's new Abyssal mode was actually playable on the day of the update. Therefore, we need to calculate the earliest date after the update that each map was available to play. Then, change the phrase "(Abyssal difficulty was added on 2018-10-09T03:00:00Z)" on each map's article to reflect that calculated start date.
  • Dining Hall research to be done:
    • What happens when a dish fails?
    • Do secret ingredients have any effect on star rating? For example, do they allow dishes to reach 5★ that cannot otherwise reach that rating? Does using a secret ingredient make it impossible to have a star rating below 2★, or even 3★?
    • What is the difference in effect between Choice Meat vs regular Meat, and Choice Eggs vs regular Eggs? Do they only take effect when used as secret ingredients, or do they also affect the dish when used as normal ingredients? Do they have any effect on star rating?
    • If a dish is made Home-Style, does that affect star rating?
    • If a 2-ingredient dish is made as a result of an invalid 3-ingredient dish, does that affect star rating? Does this also apply to 2-ingredient dishes made from invalid 4-ingredient dishes, and 3-ingredient dishes made from invalid 4-ingredient dishes?

Wiki maintenance[edit source]

Reorganization of wiki texts and resources.

  • Update Free-to-Play Guide with information on versions 3.0.0—3.2.0.
  • update old availability dates (for quests, maps, etc) with links to the corresponding notifications, if applicable.
All summoning focus, Tempest Trials, Forging Bonds, GHB, BHB, Rival Domains, Relay Defense, Blessed Gardens and Tactics Drills until the 14 February 2019 are updated, except Tibarn's Agility and RD 16 as I can't find the notification. Pival13 (talk) 09:27, 15 February 2019 (UTC)
  • Update Fire Emblem Heroes Wiki:Tutorials/Cargo so that it doesn't use a deprecated template as an example.
  • Add mandatory and unique to descriptions for all WikiName fields.
  • Replace dates with UTC datetimes whenever possible, to avoid confusion.
    • Some places, such as Squad Assault and Use Heroic Grails availability, require datetimes for app or data updates, but exact times for these updates are unknown because some devices in some parts of the world may receive updates earlier than the others. Decide on a convention to use when determining past update datetimes (e.g. assume all data updates associated with summoning events happen 2.5 hours before the summoning event). --HertzDevil (talk) 10:26, 4 September 2019 (UTC)
      • I think the first recorded time is sufficient. However I don't think all times should be assumed to be a single offset from before the summoning event, but that could be used if there is no information since accuracy down to the hour is not too important for these. Endilyn (talk) 05:09, 5 September 2019 (UTC)
        • App updates could use the upload times of their associated notifications which should be good enough. --HertzDevil (talk) 09:07, 5 September 2019 (UTC)
  • Create a category for story talk backgrounds and categorize story talk background files in it.
  • Add {{StoryImage}} to pages with story dialogue that are missing story background images.
  • Add official names for some Arena maps from https://guide.fire-emblem-heroes.com/en-US/sa033/ to Arena and List of Arena maps
    • 9 out of 10 arena maps added in Version 2.1.0 have trenches, I don't think calling one of them "the" trench map would be helpful at all. Adding those names to a trivia section should be enough. --HertzDevil (talk) 21:50, 24 August 2019 (UTC)
  • Replace screenshot files on the wiki with up-to-date screenshots or files with dimensions 1080 × 1920, where applicable.
  • Decide on how to display Røkkr Sieges availability: Røkkr Sieges 1 has none, Røkkr Sieges 2 uses the round table for Voting Gauntlet, Røkkr Sieges 3 uses an availability section similar to maps.

Code maintenance[edit source]

Modifications to templates, modules, widgets, and Cargo tables.

  • Modify Template:Structure Infobox so that it stores one row per level for each structure, rather than one row for all levels
  • In the Stages section of Tap Battle pages, figure out a layout that would display an embedded player for boss themes like what's currently available for stage BGM's.
  • Add better support to Module:SummoningFocus for Summoning Focuses with limited pulls, since statistics for multiple pulls should not be shown there:
  • Describe the April 2019 summoning pool changes on Summonable Heroes, which uses Module:HeroListBySummonRarity and Module:SummonableHeroList.
  • Define the random unit pool via Template:Hero Infobox rather than Randomized units. Assume the timestamps for all Heroes before the Fire and Ice update are correct and never modified in history.
    • Update the enemy slots in the Randomized Units sections on each Tempest Trials page to match the slot indices from Module:UnitData. (Just remove the "(slot x)" part entirely and adjust the "Enemy x" number.) --HertzDevil (talk) 19:51, 10 August 2019 (UTC)
      • Done. I was just wandering what is the difference between {{RandomTTUnits}} and {{Tempest Trials Units}} as they are both used. Pival13 (talk) 19:04, 21 August 2019 (UTC)
        • The former uses the random unit pool directly, the latter queries the unit table and assumes that units are added to the random pool as they are released (which is wrong). The reason we haven't fully switched to Template:RandomTTUnits is because we do not have the random pool information before the end of Book II yet. --HertzDevil (talk) 06:03, 22 August 2019 (UTC)
          • We now have everything in RandomUnitPool, so {{Tempest Trials Units}} can be replaced with {{RandomTTUnits}} if the two output the same units. --HertzDevil (talk) 15:53, 29 September 2019 (UTC)
          • The later template does not assume that, the input date is supposed to match their release date only for differentiating earlier and later groups of Heroes for the purpose of selecting them, so the date would often not match the Tempest Trials dates. Since the order of Heroes released and the order of them being added to the random pool were the same, the template worked, even if the actual times had a gap. I agree that it was not a good system though.

            The assumption that "timestamps for all Heroes before the Fire and Ice update are correct and never modified in history" is also incorrect. It also seems that brave heroes (and possibly staff users) may have had their random status modified at one point. User:Valexiv appears to have left relevant notes whenever the random pool changed on the appropriate pages (e.g. Tempest Trials or Rival Domains pages), but these notes are scattered and not consolidated so they will be difficult to sift through, it is unknown whether they are complete, and they may have been deleted in batch page editing.

            Endilyn (talk) 19:23, 29 September 2019 (UTC)
  • Edit {{Hero Infobox}} to store and display multiple origins. (Naga: Dragon Divinity Appears in Fire Emblem: Mystery of the Emblem and Fire Emblem: Awakening)
    These are not origins like the in-game Origin/Character value used in Lost Lore or Catalog of Heroes, that is simply flavor text from the description, although they are often made to match and get confused between a lot. That's why the Hero Infobox says "Appears in" instead of "Origin". I actually think the Hero descriptions on the wiki should not be trimmed and should include everything, including the "appears in" section. As it is right now, the cargo and template fields are named 'Origin', yet correspond to Appearances, and the true Origin value when needed is derived from Appearances with GameSortValues. Two possible suggestions:
    Change Units.Origin to actually define "Origin", then create Units.Appearances as a List (,) of String and use that on pages that want the appearances like Series Distribution, List of Heroes, and the game pages accordingly.
    or
    Rename Units.Origin to Units.Appearances and do the appropriate replacements
    or
    Do nothing as we have been doing, and leave the field as it is since the internal name is not displayed anywhere, just remember that the field actually stands for appearances, not origin. Endilyn (talk) 21:03, 6 September 2019 (UTC)
  • Move part of the inline styling in the news templates to MediaWiki:Common.css. Create new identifiers and classes to the extent that they can replicate the existing styles; matching the original CSS identifiers and classes is not necessary. This allows, for example, normal wikitext links to be properly styled without using Template:NewsWikilink. --HertzDevil (talk) 08:21, 22 August 2019 (UTC)
The problem with moving too much CSS to Common.css is that non-sysops cannot edit it. CSS should only be in Common.css if it is one of these: 1. It is not expected to be updated and is extremely widespread and prevalent on the wiki 2. It cannot be reproduced in wikitext. Endilyn (talk) 18:24, 23 August 2019 (UTC)
  1. Template:NewsStyling is transcluded by >1400 pages and is definitely widespread and prevalent enough. It also rarely changes; most of the diffs on the CSS archive are related to cropped images which we do not reproduce with CSS.
  2. Inline styles override CSS stylesheets, so Common.css can always be overridden.
The best of both worlds is to install the CSS parser function extension (it is in fact the only extension that the Dragalia Lost Gamepedia has and this wiki doesn't), though I am not sure if there are security concerns for allowing user CSS on every article. --HertzDevil (talk) 19:02, 23 August 2019 (UTC)
Sounds good. I don't think security concerns would be an issue, since the Dragalia Lost gamepedia seems to be doing fine and the creators of the extension would likely consider any problems. Endilyn (talk) 19:45, 23 August 2019 (UTC)
Hi all, wiki manager here. Endilyn requested I continue our Discord conversation here. I'm having trouble understanding what the use case for the CSS extension being enabled here is exactly. Can someone explain it? TheSatanicSanta (talk) 18:46, 2 September 2019 (UTC)
There are at least 2 concrete use cases I could think of:
  • Simulating column groups: Since MediaWiki does not support column groups, pages like Level 40 stats table currently use selectors such as #max-stats-table tr td:nth-child(5) to add background colors to columns of table cells; these background colors have special meanings that apply only to the specific columns where they are used. Those CSS styles cannot be reused for other HTML elements, because adding or removing a column causes the colors to be applied to the incorrect columns (an example is .full-stats-table which duplicates the same styles but using different nth-of-type arguments). At the minimum, templates / modules using those styles should be able to declare their own column indices; for example, CSS styles may be reused by transcluding a #css template, with template parameters that control those column indices, instead of through the MediaWiki namespace CSS pages.
  • Storing unstyled text into Cargo: Suppose that Grand Hero Battle maps is to be automated; the description column should ideally pick up wikitext that is defined elsewhere (for example the last one comes from Grand Hero Battle - Death Knight: The Reaper (Notification)). At the moment it is not possible to store the description into Cargo and reuse it directly:
    From the {{NewsWikilink|Fire Emblem: Three Houses}} game, a new Grand Hero, [[Death Knight: The Reaper|{{NewsAccent|Death Knight: The Reaper}}]], is waiting in {{NewsWikilink|Death Knight: The Reaper (map)|Special Maps}}!<br>
    <br>
    Are you strong enough to face this knight, the Flame Emperor's subordinate, and make him your ally?
    since the {{NewsWikilink}} and {{NewsAccent}} use inline HTML styles and the descriptions on the table should not include any special styling. This can be resolved by using proper style cascasding so that the styles would only apply to descendants of .feh-news, which is added by {{NewsStyling}}; the description would then be styled on the original page, while remaining unstyled on the maps table when queried from Cargo. However, as stated above, non-admin editors do not have edit rights to the CSS pages in the MediaWiki namespace, so new styled HTML elements cannot be added at will by those editors. The CSS extension solves exactly that. (It might be fine too if edit rights of the MediaWiki CSS pages are extended to the editors responsible for updating the notifications, but I am not sure if any extension does this or if Gamepedia lets this happen.)
In both cases the CSS extension also helps clean up MediaWiki:Hydra.css. --HertzDevil (talk) 09:45, 4 September 2019 (UTC)
I looked into it, and I'm afraid Gamepedia is currently trying to get rid of the CSS extension completely, so we're not adding it to any new wikis. TheSatanicSanta (talk) 00:24, 17 September 2019 (UTC)
  • It might be possible to sort items inside Template:RewardText according to their internal values. --HertzDevil (talk) 11:46, 23 August 2019 (UTC)
  • Rename Maps to something like Scenarios, and then create a new table in place of Maps to store per-tab information.
Map availability should also be defined per difficulty, to properly handle cases like Narcian: Wyvern General (map) (Infernal and Abyssal had separate start times, so the map cannot be assumed to give the rewards at these difficulties since the beginning).

Larger projects[edit source]

These tasks are more involved. Actions should be carefully reviewed before performing them, as there may be additional requirements/consequences that are not obvious at first glance.

Skill note templates overhaul[edit source]

I am going to overhaul the skill note system to be more well-defined and flexible, and I've noticed errors in some of the templates and their placements that seem to stem from misunderstanding of game mechanics (such as placing the bonuses template on combat boost skills), so I will fix those as I go along as well.

Some examples:

*'''During combat''': One or more effects apply only during combat.
**Support actions, such as healing or using {{St|Dance}}, are not considered as combat.
**Effects that apply during combat, such as increased stats, are not considered for skills that apply outside combat (e.g. {{St|Atk Ploy 3}}.

Here are the current specifications for the new system. The completed specification will later be available at Project:Note templates.

  • Every top level entry has a simple bolded header denoting a name for the effect/timing/condition/etc.. Other than the boldness, no special formatting or icons are allowed in the header.
    • Names of effects or conditions are not allowed to be another skill's name, since skills consist of both effects and conditions.
  • Usage of 'this skill/weapon/passive' is disallowed, as effects may come from more than just skills, e.g. GC Area Effects or Aether Structures, and these templates may be used on those pages.
  • Usage of {{PAGENAME}} is disallowed, as a skill's name may differ from the page name. There is also the possibility the templates may be used on pages that cover a broader subject than just the skill at the point in the page the template is describing.
  • When using SkillText, the level must always be specified. This is because relying on the max rank can be a problem if the max rank drastically changes the skill. Take the hypothetical scenario where you say {{Pt|Steady Stance}} and {{Pt|Steady Breath}} stack before Steady Stance 4 was released to illustrate the extra def stats stack, but then Steady Stance 4 is released and now the text is misleading.
  • Use of {{Sgp}} is limited to only where grouping of skills is important and neccessary. Otherwise, use SkillText.
  • Notes are allowed to refer to other notes. Example:
    [...]
    ==Notes==
    *'''Spreading joy''': Grants '''death effect''' to adjacent allies '''at start of turn'''.
    *'''Death effect''': Unit dies.
    *'''At start of turn''': [...]
  • Section templates meant for sections are disallowed in note templates.

More complex skills that cannot use these templates or combinations of these templates for whatever reason, will have text typed out on their page for the non-template parts. There is no need to force usage or modifications of templates at the expense of coherency. This is not expected to occur however, since each note is broken down to the small flexible parts.

I don't know when I'll do this. If you would like any changes before I do so, post any suggestions here in the meantime, if any. Endilyn (talk)

If usage of 'this skill/weapon/passive' and {{PAGENAME}} are disallowed, then what should be used in their place? Markfeh (talk) 23:59, 14 October 2019 (UTC)

Pagination[edit source]

A few pages on this wiki have grown excessively long. These pages are difficult to navigate, take a long time to regenerate, and are restricted in their complexity due to include size limits. This can be alleviated by splitting the contents across multiple pages. --HertzDevil (talk) 14:25, 24 August 2019 (UTC)

Aether Raids[edit source]

Quests and Missions archive[edit source]

Other pages[edit source]

Internationalization[edit source]

Do an automatic import of quotes in other languages, one language per tab. --Ale1991 (talk) 13:31, 21 August 2018 (UTC)

For non-English and non-Japanese languages, I propose that their subpages would be named after their language code in the game. /EUIT for example. Endilyn (talk) 23:03, 24 November 2018 (UTC)

Character / game pages[edit source]

Interactive event calendar[edit source]

  • Proof of concept: Event calendar. It doesn't work as of July 3, 2019 because of Cargo bug with compound query. Single query calendar like Summoning Focus calendar still works.
    • As compound query doesn't work, it is possible to do create a calendar using a simple query. However, this query would called _pageData as base on which it is possible to join others table, which make it very huge and take a lot of time and ressources to generate. Moreover, some adjustement are needed to get the StartTime of each event as well as color or name wanted. An exemple with specials and events maps is here. There is still a problem, it seems previous revival of a maps doesn't appeared. Pival13 (talk) 19:24, 12 September 2019 (UTC)
That's a brilliant idea. I think it's good enough and you should put it in Event calendar while we are waiting for the next Cargo version. You should also create Special Maps calendar (and add it to Special charts, too). And what exactly is missing in your calendar? I don't see any problem with it, as the old LHBs still appeared correctly. RainThunder0 (talk) 11:59, 16 September 2019 (UTC)
I've completed it with focuses, story, paralogue, TD, HO, CC, BG and SA. Ideas about colors are welcome. About the problem, it is due to the limit. When I don't specify it, I have everything until August 7, 2019, and with a limit of 1000, until November 2018. There is also a problem with views. It only loads informations from the current, previous and next time interval. By exemple, as of September 16, 2019, I can't see A Splendid Soiree and Peforming Arts on week view if I don't switch to month view (which is truly ununderstandable). Pival13 (talk) 20:04, 16 September 2019 (UTC)
New Cargo version is up. I commented out the summoning events because there are too many of them. --HertzDevil (talk) 01:26, 25 September 2019 (UTC)
  • Currently, only SummoningFocuses, VotingGauntlets, and ForgingBonds have date columns. Other events, like Tempest Trials, etc. do not have a Cargo table, or their table doesn't have any Date or Datetime type column. The PoC above temporarily use the News table for Tempest Trials and Grand Conquests.
    • Created GrandConquests. Start and end times are determined by the first and last rounds respectively. --HertzDevil (talk) 07:23, 27 August 2019 (UTC)
  • All special maps (GHBs, BHBs, LHBs, MHBs) also need a Cargo table that stores their availability dates.
{{#cargo_declare:
_table = MapDates
|StartDate=Datetime
|EndDate=Datetime
}}

The template should be used in Map availability section in those map pages. This Cargo table, if created, also helps automating {{Current Events}}, Special Maps, Grand Hero Battle maps etc.

  • Background color for each event types is not good at the moment, and needs some improvement. --RainThunder0 (talk) 09:49, 13 February 2019 (UTC)
Template and Cargo table created at Template:MapDates. Still needs work on its appearance and implementation. Endilyn (talk) 20:45, 2 July 2019 (UTC)
I did notice it for a while ago, but I actually forgot about it xD. I don't think there's a better way of retrieving date pairs from list other than this ugly query:
{{#cargo_query:
tables=MapDates__StartDate=SD,MapDates=MD,MapDates__EndDate=ED
|join on=MD._ID=SD._rowID,MD._ID=ED._rowID
|fields=MD._pageName=Page,SD._value=start,ED._value=end
|where=SD._position=ED._position
|group by=SD._value
|format=calendar
}}
For example, for Tap Battle (not in calendar format): [removed]
I think it would be cleaner to use multiple entry per page. The template could be used in "Map availability" section, or integrate into {{Battle Infobox}} (which means we should get rid of Map availability section). Also StartDate and EndDate should be renamed to StartTime and EndTime, respectively.RainThunder0 (talk) 23:07, 2 July 2019 (UTC)
Internally those are duplicate Tap Battles with mostly identical data, not the same Tap Battle with multiple sets of dates (the first rerun is defined in files/assets/Common/TapAction/TapBattleData/TDID_0001_01.bin, and the original in files/assets/Common/TapAction/TapBattleData/TDID_0001.bin), so there should be one row for each run regardless of how the reruns are displayed. (This is in contrast for example to LHBs which do modify the dates of existing special map records in files/assets/Common/SRPG/StageEvent/*.bin.) --HertzDevil (talk) 17:06, 24 July 2019 (UTC)
Done. Might need a separate WikiName to distinguish reruns in the future though; I suggest [EVENT TYPE] [event name] [Y-m], e.g. TAP BATTLE Labyrinth of Mists 2018-02, TAP BATTLE Labyrinth of Mists 2019-03, and TAP BATTLE Brave Heroes 2019-08.
I also replaced MapDates's definition for a similar reason, but that one doesn't need WikiNames for the moment. --HertzDevil (talk) 14:02, 23 August 2019 (UTC)
All maps now have date information. See {{#invoke:User:HertzDevil|currentMaps}} for an example of retrieving currently active non-permanent maps:
MapPageStartTimeEndTimeCycleTimeAvailTime
Q0088Rival Domains: Event Map (88)2019-12-07 07:00:002019-12-14 06:59:59
T0009Lloyd: White Wolf (map)2018-02-09 07:00:002038-01-19 03:14:0760480086400
T0012Berkut: Prideful Prince (map)2018-04-13 07:00:002038-01-19 03:14:0760480086400
T0069Kempf: Conniving General (map)2019-12-11 07:00:002019-12-20 06:59:59
U0005Sophia: Nabata Prophet (map)2017-02-02 07:00:002038-01-19 03:14:07103680086400
V0203Bows: Special Training2018-02-11 07:00:002038-01-19 03:14:0743200086400
--HertzDevil (talk) 11:30, 21 September 2019 (UTC)
Template: Current Events can now work with the below query for all kind of Hero Battle:
{{#cargo_query:tables=Maps,MapDates
|join on=Maps._pageName=MapDates._pageName
|fields=MapGroup,Maps._pageName,StartTime,EndTime
|where=(NOW() BETWEEN StartTime And EndTime) AND EndTime != '{{MaxTime}}' AND MapGroup != 'Tempest Trials'
|group by=Maps._pageName
|order by=StartTime DESC,Map DESC
|format=template|template=Current Events/format
|default=
}}
We must take care of Tempest Trials maps which are also presents on Maps and MapDates tables. There is currently only two banner images with a bad name: File:Banner Grand Hero Robin F.png and File:Banner Grand Hero Kana M.png as their gender is present on it. Pival13 (talk) 10:14, 8 September 2019 (UTC)
This query also work for Rival Domains and Relay Defense maps, but I would recommend to keep {{Weekly Rival Domains}}. For other events map (Daily (Aug 2019) (Event) or Nifl and Múspell (Event)), a banner image is needed as well as a MapGroup. Currently, I've supposed the banner image can be give as 5th arg on Template:Current Events/format and use File:Banner Event.png by default. Pival13 (talk) 11:52, 8 September 2019 (UTC)
For Rival Domains and Relay Defense, I think we should make a new query at the end of the table to keep the in-game display, otherwise they will appear above the events which have begun the previous week. Pival13 (talk) 14:14, 8 September 2019 (UTC)
There is no need to create more redirect for hero battles banner as {{Banner HB}} now use the .webp file directly. Pival13 (talk) 06:52, 21 September 2019 (UTC)
Template:Current Events has been ported to Lua, any map that uses Template:MapDates should automatically appear there. As an additional benefit, events are now properly sorted by time remaining across event types. --HertzDevil (talk) 04:39, 22 September 2019 (UTC)

Quests cargo table[edit source]

Create a template that will store a cargo table for quests, this will allow accessory pages, tap battle pages, etc. to query for related availability or rewards.

{{#cargo_declare:
_table = Quests
|WikiName=String (size=200;mandatory;unique)
|GroupName=String
|Description=Wikitext
|Difficulty=String
|StartTime=Start Datetime
|EndTime=End Datetime
}}
What should be the WikiName? We don't have past data files, so internal IDs wouldn't work. I am thinking of something like [group name] [YYYYMMDD] [quest index]; the day is required to distinguish daily / weekly quests in the same month. The corresponding reward table will also contain this WikiName column, and joins to the quest table will use that instead of the page name, so every quest receives a unique index from its associated group. --HertzDevil (talk) 16:49, 28 September 2019 (UTC)
I think GroupName should be a wikiname on format [group name] [YYYYMMDD] [difficulty]. Then WikiName may look like [GroupName] [YYYYMMDD] [quest index], where quest index is two digit and is unique for each group and start time. The day has to be store on GroupName because we already have had several Grand Hero Battle Quests on the same month. I think having different GroupName for difficulty will be easier, and we won't need the Difficulty field on quest anymore. However a Name field would be necessary as wikitext.
In that case, we may create a module to store them with something like:
{{#invoke:Quests|store
|name=        // With group name here
|difficulty=
|start=
|end=
|quests=[
  {name=;description=;rewards=;};
  {name=;description=;rewards=;start=;end=;};
  ...
]
}}
Where start and end inside quests will be optional, using group's date by default, as well as difficulty.
We may easily query them with something like:
{{#cargo_query:tables=Quests
|fields=Name, Description, StartTime, EndTime
|where=GroupName LIKE '{{QuestWikiName| group name | start time }}%'
|orderBy=WikiName       // Same as Difficulty, StartTime, QuestIndex
}}
Pival13 (talk) 12:39, 10 November 2019 (UTC)

Reward definitions[edit source]

Reward source Event table Reward table Availability table
Maps Maps MapRewards MapDates
Coliseum ColiseumSeasons ColiseumRewards Event / Reward
Tempest Trials TempestTrials TempestTrialsRewards Event
(Voting Gauntlet) VotingGauntlets No Reward
Tap Battle TapBattles No Event
Grand Conquests GrandConquests GrandConquestsRewards Event / Reward
Forging Bonds ForgingBonds ForgingBondsRewards Event
Aether Raids No No Event
Røkkr Sieges RokkrSieges RokkrSiegesRewards Reward
Lost Lore LostLore No Event
Heroes' Path None HeroesPathRewards Reward
Quests No No Event
Events No No Reward
Web No No Reward
Log-in bonus No No Event
Other None No Reward
  • For rewards available in a single game mode, create new tables as necessary, based on MapRewards and TempestTrialsRewards. See Template:RewardDefinition for details.
    • When storing mutually exclusive rewards, if one of the rewards is strictly better than all other rewards (normally the top-score or top-rank reward), then it is safe to store only that reward into the database.
  • For rewards of a single kind available in all game modes, the closest analogue at the moment is Distributions; think about how it can be generalized to all events, e.g. by inventing a WikiName that is unique across every possible source of rewards.

--HertzDevil (talk) 09:55, 22 August 2019 (UTC)

Proof of concept: Sacred Coin distribution 2018 now uses {{#invoke:ItemDistribution|itemTableRow}} to generate the rows for Tempest Trials. --HertzDevil (talk) 10:57, 23 August 2019 (UTC)

Arena score research[edit source]

Fire Emblem Heroes Wiki:To-do list/Arena score research (Needs some adjustments before opening to public)

Recurring maintenance tasks[edit source]

The lists here use cargo queries to automatically display the status of certain tasks. The cargo queries update slowly, so they may not reflect the most recent status. List of reoccurring maintenance tasks:

Item distribution[edit source]

Twitter-related[edit source]

Missing Heroic Ordeals[edit source]

No results

Quote pages with missing audio files[edit source]

Pages with incomplete skill data[edit source]

_pageName GroupName Name WikiName Scategory UseRange Description Required Exclusive SP CanUseMove CanUseWeapon Might StatModifiers Properties
Daring Fighter Daring Fighter Daring Fighter 1 Daring Fighter 1 passiveb No Armored Red Sword Blue Lance Green Axe Red Bow Blue Bow Green Bow Colorless Bow Red Dagger Blue Dagger Green Dagger Colorless Dagger Red Tome Blue Tome Green Tome Colorless Staff Red Breath Blue Breath Green Breath Colorless Breath Red Beast Blue Beast Green Beast Colorless Beast

Pages with missing string identifiers[edit source]

Kind Page
Unit Red Bow
Skill Daring Fighter
Skill Daring Fighter
Skill Daring Fighter
Skill Def Res Gap
Skill Def Res Gap
Skill Def Res Gap
Skill Falchion (Awakening)
Skill Falchion (Gaiden)
Skill Falchion (Mystery)
Skill Snow's Grace
Skill Tanngrisnir
Skill Threat. Atk Res
Skill Threat. Atk Res
Skill Threat. Atk Res
Skill Urvan

List of pages with incomplete enemy data[edit source]

Page Map Unit Pos Rarity Slot Level HP Atk Spd Def Res Weapon Assist Special PassiveA PassiveB PassiveC Seal
Part 1: Launch Celebration V0001 Gordin Altean Archer b7 5 19 8 6 9 3 Iron Bow
Part 2: Launch Celebration V0002 Sharena Princess of Askr b7 5 19 9 9 7 4 Iron Lance
Part 3: Launch Celebration V0003 Barst The Hatchet a8 5 20 10 9 6 3 Iron Axe
Part 4: Launch Celebration V0004 Leo Sorcerous Prince a8 5 17 8 4 6 9 Flux
Part 5: Launch Celebration V0005 Felicia Maid Mayhem b5 5 15 5 12 2 10 Iron Dagger
Part 1: Starter Support V0011 Corrin Fateful Prince c5 5 21 9 9 7 6 Iron Sword
Part 2: Starter Support V0012 Eldigan Lionheart d5 5 20 9 6 9 6 Iron Sword
Part 1: Defensive Battle V0021 Lance Fighter ENEMY a3 10 24 11 11 12 8 Iron Lance Armored Blow 1
Part 2: Defensive Battle V0022 Lance Cavalier ENEMY e2 15 25 15 10 11 14 Steel Lance
Part 3: Defensive Battle V0023 Niles Cruel to Be Kind a8 25 28 16 21 10 21 Steel Bow Windsweep 1

More...

Map pages with missing BGM data[edit source]

_pageName Map MapName BGM BGM2
Truth of Her Name S3101 Chapter 10-1: Truth of Her Name
Maiden and Devotee S3102 Chapter 10-2: Maiden and Devotee
Inside Embla S3103 Chapter 10-3: Inside Embla
The Reaper Cometh S3104 Chapter 10-4: The Reaper Cometh
Temple of Blood S3105 Chapter 10-5: Temple of Blood
Seeking a Path S3111 Chapter 11: Part 1: Seeking a Path
The Masked Wanderer S3112 Chapter 11: Part 2: The Masked Wanderer
Polarized Judgments S3113 Chapter 11: Part 3: Polarized Judgments
An Addled Dragon S3114 Chapter 11: Part 4: An Addled Dragon
Bitter Realizations S3115 Chapter 11: Part 5: Bitter Realizations
Sharena's Counterpart S3121 Chapter 12-1: Sharena's Counterpart
Large Armor, Larger Heart S3122 Chapter 12-2: Large Armor, Larger Heart
One's Own Shadow S3123 Chapter 12-3: One's Own Shadow
Middle Sister S3124 Chapter 12-4: Middle Sister
If Not I, Then You... S3125 Chapter 12-5: If Not I, Then You...
Obey Me S3131 Chapter 13-1: Obey Me
On That Hill, Together S3132 Chapter 13-2: On That Hill, Together
Mere Playthings S3133 Chapter 13-3: Mere Playthings
Don't Struggle S3134 Chapter 13-4: Don't Struggle
Ruler of the Dead S3135 Chapter 13-5: Ruler of the Dead

More...

List of pages with incomplete languages[edit source]

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
2nd Anniversary Heroes 2nd Anniversary Heroes Héros du 2e anniversaire
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Hero's Mettle A Hero's Mettle Cœur de héros
A Knight's Mercy A Knight's Mercy Ritterliche Gnade Caballero al rescate Chevalier sauveur Piedade de um cavaleiro
A Monstrous Harvest (Focus) A Monstrous Harvest Monsterernte
A Pair of Queens A Pair of Queens

More...

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
2nd Anniversary Heroes 2nd Anniversary Heroes Héros du 2e anniversaire
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Hero's Mettle A Hero's Mettle Cœur de héros
A Pair of Queens A Pair of Queens
A Pause in Hostilities A Pause in Hostilities
A Promise of Joy A Promise of Joy Paraíso ilusorio Paradis Promis

More...

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
2nd Anniversary Heroes 2nd Anniversary Heroes Héros du 2e anniversaire
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Hero's Mettle A Hero's Mettle Cœur de héros
A Monstrous Harvest (Focus) A Monstrous Harvest Monsterernte
A Pair of Queens A Pair of Queens
A Pause in Hostilities A Pause in Hostilities

More...

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
2nd Anniversary Heroes 2nd Anniversary Heroes Héros du 2e anniversaire
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Hero's Mettle A Hero's Mettle Cœur de héros
A Knight's Mercy A Knight's Mercy Ritterliche Gnade Caballero al rescate Chevalier sauveur Piedade de um cavaleiro
A Monstrous Harvest (Focus) A Monstrous Harvest Monsterernte
A Pair of Queens A Pair of Queens

More...

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
2nd Anniversary Heroes 2nd Anniversary Heroes Héros du 2e anniversaire
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Hero's Mettle A Hero's Mettle Cœur de héros
A Knight's Mercy A Knight's Mercy Ritterliche Gnade Caballero al rescate Chevalier sauveur Piedade de um cavaleiro
A Monstrous Harvest (Focus) A Monstrous Harvest Monsterernte
A Pair of Queens A Pair of Queens

More...

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Monstrous Harvest (Focus) A Monstrous Harvest Monsterernte
A Pair of Queens A Pair of Queens
A Pause in Hostilities A Pause in Hostilities
A Season for Picnics (Focus) A Season for Picnics
A Sketchy Summer (Focus) A Sketchy Summer 夏、再び Eroi speciali: Schizzi d'estate

More...

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
2nd Anniversary Heroes 2nd Anniversary Heroes Héros du 2e anniversaire
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Hero's Mettle A Hero's Mettle Cœur de héros
A Knight's Mercy A Knight's Mercy Ritterliche Gnade Caballero al rescate Chevalier sauveur Piedade de um cavaleiro
A Monstrous Harvest (Focus) A Monstrous Harvest Monsterernte
A Pair of Queens A Pair of Queens

More...

_pageName English Japanese German SpanishEU SpanishLA Italian French ChineseTW Portuguese
2nd Anniversary Heroes 2nd Anniversary Heroes Héros du 2e anniversaire
4 Star & 5 Star Heroes (Apr 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Jan 2018) (Focus) Focus: 4★ & 5★Heroes
4 Star & 5 Star Heroes (Mar 2018) (Focus) Focus: 4★ & 5★Heroes
A Child's Wish A Child's Wish
A Gathering of Ghouls A Gathering of Ghouls
A Hero's Mettle A Hero's Mettle Cœur de héros
A Monstrous Harvest (Focus) A Monstrous Harvest Monsterernte
A Pair of Queens A Pair of Queens
A Pause in Hostilities A Pause in Hostilities

More...

Missing story text[edit source]

Note: This list is not conclusive, it only lists pages where the story template was added with empty fields. There may be story text missing when the template is not used at all.

English Japanese
Forging Bonds Other Forging Bonds Other
All good! All good!

Missing story navigation[edit source]

Uses of Template:Story Navbar with either the previous or next map missing are listed here. There should be exactly one item on this list corresponding to the most recent story.