LOCALORE.SYS

Localore reads your build, not just your strings. Speaker, gender, UI bounds, glossary, tone — held in one context graph, enforced on every commit.

Build context active
combat.join_party · en-US → de-DE

Source string

Kael has joined your party.

Speaker
Kael · male · mentor
Register
archaic
Placement
combat_log · max 32ch
Glossary
“party” · locked

de-DE · generated

_

0 / 32
gender ✓length ✓glossary ✓
UNITYUNREALGODOTCROWDINLOKALISEGITHUB ACTIONSGITLAB CIWEBLATE
UNITYUNREALGODOTCROWDINLOKALISEGITHUB ACTIONSGITLAB CIWEBLATE

01Quest log · failures

Four ways localization breaks silently.

  • Gender collapse

    Failed
    "%s has joined your party."
    ru-RU → "%s присоединил__ся__ к отряду."

    In Russian, Polish and Hebrew the verb agrees with the speaker's gender. Your CAT tool sees a token.

  • Overflow

    Failed
    en "Settings" — 8 chars
    de "Einstellungen" — 14 chars, button is 9

    It ships, it clips, a player screenshots it.

  • Glossary drift

    Failed
    "Soulshard"
    "Seelensplitter" / "Seelenscherbe" / "Soulshard"

    Three patches, three freelancers, three different terms for one item.

  • Tone break

    Failed
    mentor_npc: "Thou art late, young one."
    ja-JP: "遅いじゃん、お前"

    The string arrived without a speaker, so the archaic register vanished.

02Context graph

One graph. Every string knows where it lives.

  1. Speaker

    Who says it, their
    gender and role.

  2. Placement

    Which screen, which
    widget, which state.

  3. Constraints

    Character budget and
    pixel width per locale.

  4. Glossary

    Locked terms that
    never drift again.

  5. Register

    Archaic, clipped, formal —
    held across patches.

String inspector
key
dialogue.mentor.greet_02
source
Thou art late, young one.
speaker
Aldric — mentor, male, 60s
placement
dialogue_box / full width
max_chars
84
register
archaic · formal
glossary
Soulshard (locked)
locales
12 · 12 approved

03Regression guard

It runs on every build, not every deadline.

  1. 01

    You commit

    A branch pushes new or edited strings, same as any code change.

  2. 02

    Localore diffs the graph

    Every changed node is re-checked against speaker, bounds, glossary and register.

  3. 03

    Report posts to your PR

    Pass or fail, inline, before review starts.

localore ci · check

✓ 1,204 strings unchanged

✓ 38 new strings translated · 12 languages

✗ 2 overflow risks — de-DE, main_menu.settings_label

✗ 1 glossary conflict — “Soulshard” (ja-JP)

Merge blocked. 3 issues, 40 seconds.

04Character sheet

Measured, not promised.

  • Strings auto-approved without human edit0
  • Faster patch localization cycle0
  • Supported locales0
  • Overflow bugs shipped by design partners (6 months)0

Measured across 6 design-partner studios, Q1–Q2.

05Pricing

Choose your difficulty.

  • Easy

    Indie

    For teams under 10.

    • Up to 20k words / month
    • Full context graph
    • 12 locales
  • Most picked

    Normal

    Studio

    Live-service and multi-platform.

    • Unlimited words
    • CI regression guard
    • Custom glossary locks
    • All locales
  • Hard

    Publisher

    Multi-title programmes.

    • On-prem option
    • SSO
    • Dedicated review workflow

06Dialogue tree

Questions you'd ask on the call.

Does this replace my translators?

No. It removes the mechanical 80% and hands reviewers the context they never had — speaker, bounds, glossary state and register, attached to every line.

What about languages you don't support?

You can add any locale as a custom target. It runs through the same context graph and the same CI checks; only our pre-tuned register models are locale-specific.

Do you train on our text?

No. Per-studio isolation, nothing leaves your tenant, and no build content is used for training of any kind.

How long does integration take?

A day for the string import and graph mapping, an afternoon for the CI check. Most design partners had a blocking PR report inside the first week.

Can we keep our existing TMS?

Yes. Localore sits in front of Crowdin, Lokalise or your own pipeline and writes back approved strings in the format you already use.

New quest

Ship twelve languages without breaking your game.