Localisation strings¶
Splintertree ships locale data across three layers:
- In-game template strings — item names, quest text, NPC
broadcast text. Live in
*_localetables matched 1:1 to their English template (item_template_locale,quest_template_locale,creature_template_locale, …). - GlueXML strings — login / character-select / cinematic UI strings the client renders before connecting to a realm.
- Web / launcher strings — Quasar i18n catalogue under
splintertree-web-frontend/src/i18n/<locale>.json.
/admin/design/i18n-strings is a unified editor across all three.
In-game strings¶
- List view filtered per entity (item / quest / creature / NPC text / page text / area trigger / world map).
- Per-row: source English value (read-only template column), each active locale value editable.
- Inline machine-translate via the chat-translate LLM as a starting draft; designer reviews and saves.
- Per-locale completion percentage badges.
GlueXML strings¶
/admin/design/glue-strings (world.glue_strings):
- Per-locale string editor.
- Used at character-select and login screens; ships with the patch artefact.
Web / launcher strings¶
/admin/design/web-strings (auth.web_locale_string):
- Per-locale string editor pointing at the Quasar catalogue.
- Fallback chain: requested locale → en → key literal.
- Hot-reload: edits apply on next browser reload without a redeploy.
Auto-translate workflow¶
For non-English locales, the editor offers a one-click "translate all missing" pass that runs the chat-translate model (see LLM admin) on every English row missing a translation. Outputs are flagged "auto" until a designer manually approves.