Ship the patch in every language, without breaking the UI.
Unity Localization CSV and Unreal PO are read and written directly, with no converter in the middle. The glossary holds your character names and your lore, and a string that would overrun a button is refused before it reaches the build.
Character names and item lore drift between builds, and between vendors.
One glossary, enforced when the engine writes and again at review, with up to 40 terms folded into every chunk.
German and Russian overrun a button that was measured in English.
The length check holds every row to the maximum length you set on the key, and flags an overrun for review.
A CSV round trip through a spreadsheet, and the plurals do not come back.
Unity Localization CSV and Unreal PO are read and written natively, and gettext PO carries plurals intact.
Four ways a translation breaks a build.
Placeholders
A missing or renamed placeholder is refused rather than guessed at. Braces, positional tokens and printf shapes are all checked.
Plurals
Every plural category the target language declares has to be present. Arabic declares six, and six is what the check expects.
Glossary
Names, items and legal terms are held. Up to 40 terms are folded into each chunk, and the check runs again at review.
Length
The maximum length you set on the key is enforced on every row. A row that overruns is written and held for review rather than shipped.
The four checks are deterministic. That is the whole reason a broken row does not reach a build, and they run on every plan.
FAQs
What a studio asks before the next patch.