Foreword
Welcome to the fan-made Live A Hero Wiki! Basically all the contributors (which are like 2~3 people so far) discuss issues in #lah-wiki channel of LAH Discord (Herocord). Feel free to report bugs there.
Contributor editing
Pages that have an Edit button on top (the pencil icon in the top bar) can be edited in the browser without a GitHub account.
- Suggest an edit: sign in with Discord account to make page edit suggestion directly in this wiki with rich editor
- Edit on Github: sign in with Github account and make page edit on Github
Suggest an edit
In-page rich editor is created to allow people with less coding experience to contribute to the Wiki. Currently, only Character/Event/Main Quest/Guide pages can be edited this way.
Most wiki pages are written in Markdown syntax. See Writing Guide.
After submission, moderator will approve the edit after checking for spam/abuse, then site owner will merge the edit.
For simplicity’s sake, the in-page rich editor only allows a subset of Liquid templates and HTML code. If you must edit those things, I assume you are a programmer, so please submit such edit via Github.
Templates
Pages contain Liquid templates: {% ... %}, {{ ... }} and kramdown attributes such as {:toc}. You can add, edit and remove two kinds of them:
{% chara_link Name %}and{% chara_link Name|h1 %}(horsand a number picks the hero or sidekick variant).{% include item.html id=11 %}and the other allowed includes, with plain parameters only: numbers,true/false/nilor quoted text such asname="Ether Crystal". No variables (page.id), no filters (| upcase), and no",',<,>,{,},|,;inside the quoted text. The parametersstyleandon...are not allowed.
Every other Liquid template syntax is protected: e.g. {% for %} loop or a {{ ... }}.
The includes you can use are listed in /api/contrib-includes.json: every file in _includes/ except page chrome and page structure (header, footer, banner, pagefind-search, skill-lang-picker, wiki-msg, js/ and style/, voice-table, bio-infobox, hero-infobox*, sidekick-infobox, hero-skill-evolution-v2, card-*, chara-*, team-creator-link and the generated quest-infobox, skill-description, skill-table-v2). The list lives in wiki_plugins/lib/contrib-guard.js (INCLUDE_DENYLIST). An existing call of a denied include, or of an allowed one with variables, stays in the page as it is; it just cannot be edited.
HTML
Existing HTML can stay or be deleted, and the text inside it is editable. You can add:
<details>(the only attribute isopen) with<summary>, and<br>;- tables:
<table>,<thead>,<tbody>,<tfoot>,<tr>,<th>,<td>,<caption>,<colgroup>,<col>, with no attributes exceptcolspan,rowspan(numbers) andalign(left,right,center).
Everything else is rejected when it is new: other tags (<div>, <img>, <a>, <svg>, <script>, <iframe>...), style=, on...= handlers, javascript: and HTML comments. Use Markdown for links, images and code. Changing the attributes of an existing tag counts as adding a new tag. <https://...> links are fine.
What to contribute
Character Notes/Trivia
LifeWonders put a lot of thoughts when designing the game characters, and they love to hide references in the character.
What character notes/trivia we are looking for (non-exhaustive):
- Origin of character name
- Character full name (sometime their surname are only revealed in story)
- Other random character trivia. Example:
If you are able to find those trivia/facts, please submit edit by adding a Notes section in the character page below the voice table.
Hero/sidekick usage guide
Submit example team to showcase how to use a hero/sidekick in Team Creator.
You may also submit explanation of hero/sidekick skill mechanism as character page’s edit by adding a section in the character page above the voice table.
Translate voice lines and bios
Voice line and bio translations are kept in the LAH Translation sheet, which is the source of truth. A character page does not contain any translation text, it only names the voice table:
{% include voice-table.html resourceName="ryekie" %}
The table is filled from the game’s own data and from the sheet (older pages had RELATION = "..." style parameters in this include; they were never shown and have been removed).
- Game text always wins. A community translation is shown only while the game has no text of that language for the line (missing, or the same as the Japanese text). This is checked per language: English, Simplified Chinese (简中) and Traditional Chinese (繁中). As soon as the game ships its own text, the game’s version is used and the sheet text is ignored.
- Suggest translations. A voice table that still has lines to translate has a “Suggest translations” button, and a bio that is not translated yet has a “Suggest a translation” link. Sign in, pick the language (EN, 简中 or 繁中), write your translations and submit; a Chinese translation is written from the Japanese text, so a line needs one first. You can fill in several languages in one go, each is reviewed on its own. A moderator reviews them; approved translations are copied into the sheet automatically and appear on the wiki with the next site build. The sheet’s
sourcecolumn (andzhHansSource/zhHantSourcefor the Chinese columns) records who suggested a line. - Translators with access to the sheet edit it directly:
- tab
Voice: one row per line, keyedvoice_<resourceName>_<part>. Write the English text intoenApproved, the Simplified Chinese text intozhHansApprovedand the Traditional Chinese text intozhHantApproved(enMachineTranslatedis only a hint and is not shown). A new line is written as<br>. - tab
Bio: one row per bio that the game has not translated yet, keyed by the game’s bio key (likeDETAIL_CEPH_H01). Write the text intoenApproved/zhHansApproved/zhHantApproved; blank lines separate paragraphs. Each is shown as a “(community translation)” tab next to the bio. - Keep HTML tags closed: the site build checks every text and fails on a broken tag.
- Please contact @rongjie in
#lah-wikito get access permission to the sheet.
- tab
| Part names | Notes |
|---|---|
| h_gachaResult, s_gachaResult | Gacha summon lines |
| appreciation, daily, eventA, eventB, eventC, eventD, hero, hero2, player, player2, relation, touch, touch2, train, trained | Only some characters may have eventC, eventD, hero2 and player2. A line the game has already translated is not editable here |
| battleStart, action, attack, skillA, skillB, special, smallDamage, bigDamage, win, lose, assist, assisted, loveIndexMax, rankMax, salesStart, salesEnd | These lines only exist in the sheet; the game has no Japanese text for them. Every such line the game’s voice list (VoiceMaster) knows is offered, also when nobody has transcribed it yet: “Suggest translations” then shows a Japanese box next to the English one, and you can send the Japanese you hear, the English, or both. |
Translate sales report
- Copy original text from
_data/processed/jp_sales_report.jsonto_data/wiki/SalesReport.json - Change all
{Number}to<code>characterNumber</code>(e.g.{0}to<code>character0</code>). For english text, there should be whitespace before and after the<code>syntax.
Update illustrator/voice actor/affiliation/item info
- Illustrator info: _data/wiki/Illustrator.yml
- Voice actor info: _data/wiki/VoiceActor.yml
- Affiliation: _data/wiki/Affiliation.yml
- Follow official translation of Agency in LifeWonders Shop
- Item: _data/wiki/Item.yml
- Item id can be found in Item list page.
Skill, Skill Effect, Status Translation
- Currently translation work are done on Google Sheet: LAH Translation sheet. Google Account is required.
- Please contact @rongjie in
#lah-wikito get access permission and coordinate works. - You are welcomed to report bug related to skill info in
#lah-wiki:- Please post the skill menu screenshot with expanded status details.
- A skill description comes from the sheet when it has been translated there, otherwise from the game’s own English text (and from its Chinese and Japanese text for readers of those languages). Status names in the text are linked to their tooltips automatically; there is no need to wrap them in
<wiki-status>any more (an existing tag is still understood).