Module:Changelog/doc
This is the documentation page for Module:Changelog
Overview
Generates changelog lines from data pages such as Data:Changelog_05-03-2024.json
How to edit changelogs
Each changelogs should be exactly as written on the forum post, so edits are rarely justified, below are some exceptions
- Typos by the poster should have
{{sic}}
added so that readers know it was intentionally written verbosely by the wiki - While the written portion should be 1:1, sometimes an Ability name is old, or hyperlinks in the PageRef template calls are unnecessarily broken
- For the line "Shadow Explosion now deals ...", note that the ability is now called "Shadow Transformation", meaning it was not picked up by the backend to have it be
"{{PageRef|Shadow Transformation}} now deals...
, as such, edit the line in the data page (browse changelog data pages at Changelog_Data (WIP)) to be"{{PageRef|Shadow Transformation|alt=Shadow Explosion}} now deals..."
- This will then appear as Shadow Transformation, allowing the icon and hyperlink to Shadow Transformation page to function, while still showing it 1:1 as "Shadow Explosion"
- For the line "Shadow Explosion now deals ...", note that the ability is now called "Shadow Transformation", meaning it was not picked up by the backend to have it be
Invokes
Invokes are callable by wikitext, i.e.
{{#invoke|Changelog|invokable_name|param1|paramN}}
test
not a final invoke, just used for testing purposes right now
Functions
Functions are callable by lua modules, i.e.
function_name(param1, paramN)
date_tag_to_lines
Given the data of a changelog and a specific tag, output the lines / bullet points of that changelog that pertain to that tag.
Parameters
- date - Date of the changelog, in the format 05-03-2024
- tag - Tag to search relevant changelogs for
Examples
For use in 1 row of Abrams/Update history
date_tag_to_lines('05-03-2024','Abrams')
Outputs
Lua error: bad argument #1 to 'mw.loadJsonData' ('Data:Changelog Dates.json' is not a valid JSON page).
For use on Heroes/Update history
date_tag_to_lines('05-03-2024','Heroes')
Outputs
Lua error: bad argument #1 to 'mw.loadJsonData' ('Data:Changelog Dates.json' is not a valid JSON page).
Notes
To see list of all tags, see Changelog Tags (WIP). To see all tags that aren't individual entities, see Changelogs (WIP). More notes will also be at these pages, not just a list of tags.
What are tags?
Each line in a changelog is parsed to have certain tags assigned to it. For example, if the forum post looks like Heroes: - Abrams: Shoulder Bash blah blah
The "Abrams: Shoulder Bash blah blah" line will be assigned tags, 'Shoulder Bash' since its named explicitly, and therefore 'Abilities', 'Abrams', and 'Heroes'. This will make this line added to all changelogs on pages Abrams/Update history, Shoulder Bash/Update history, Abilities/Update history, and Heroes/Update history.
Similarly, for the line "Warp Stone: Distance traveled blah blah", the tags assigned would be 'Warp Stone' since its named explicitly, along with the tags 'Items' and 'Weapon Items'.
Todo
Backend
- Replace hyphens with asterisk to be bullet pointed by wikitext
- Output list of all group-tags (Heroes, Abilities, Weapon Items, etc.)
- Add functionality for a 'Weapon' tag maybe?
- Don't remove the prefix "Mo & Krill: " from lines such as "No longer listed as a recommended new player hero" as it prevents the ability to determine the hero on pages other than Mo and Krill/Update history. Is this prefix removal necessary?
- Switch
{{Icon}} with {{PageRef}}
- Find a non-inefficient way to expand {Icon}/{PageRef} templates for the icon and reference
- Finish tag assignment logic to fix instances of "- Charge Shot damage increased from 95 to 105" only being assigned tags 'Heroes' and 'Grey Talon' but not 'Charge Shot' or 'Abilities'.
Frontend
- Create a more generic icon template Template:PageRef for svg's with color inverting depending on light/dark mode, only parameter should be the entity name like 'Abrams', 'Hook', or 'Basic Magazine'.
- Make a navbar for group-tags to be presented on Changelogs
- Make a lua function to retrieve list of group-tags sent to the nav-bar, i.e. Heroes, Abilities, Items, Weapon Items, etc.
- Navbar will go to pages <group_tag>/Update history like Heroes/Update history, Abilities/Update history, Items/Update history, etc.
- Make a lua function to retrieve list of tags for Changelog Tags, no nav bar needed, this page is only really useful for editors, not viewers