Last verified: 2026-05-17.
This report covers V2_TODOS section 54 and is validated by
V2/ue/Tools/check-v2-localization-voice-over.py, the contract at
V2/ue/Content/Localization/V2/LocalizationVoiceOverPipeline_V2_Contract.json,
and V2.UI.Module automation.
The phase-72 string ID authority lives in
V2/docs/localization/string-id-system.md and is validated by
V2/ue/Tools/check-v2-string-id-system.py.
String extraction for game data and code is implemented by
V2/ue/Tools/extract-v2-localization-strings.py and validated by
V2/ue/Tools/check-v2-string-extraction-tool.py.
The canonical translation handoff format is documented in
V2/docs/localization/translation-file-format.md and validated by
V2/ue/Tools/check-v2-translation-file-format.py.
Translation management platform push/pull integration is documented in
V2/docs/localization/translation-management-platform.md and validated by
V2/ue/Tools/check-v2-translation-management-platform.py.
Translation memory reuse and fuzzy matching are documented in
V2/docs/localization/translation-memory-integration.md and validated by
V2/ue/Tools/check-v2-translation-memory-integration.py.
Plural forms for English, Russian, and Arabic are documented in
V2/docs/localization/plural-forms.md and validated by
V2/ue/Tools/check-v2-plural-forms.py.
Gendered text selection for player character and NPC contexts is documented in
V2/docs/localization/gendered-text.md and validated by
V2/ue/Tools/check-v2-gendered-text.py.
Dynamic text insertion for named variables and count-driven term grammar is
documented in V2/docs/localization/dynamic-text-insertion.md and validated by
V2/ue/Tools/check-v2-dynamic-text.py.
Translator context screenshot capture and TMS upload payloads are documented in
V2/docs/localization/context-screenshots.md and validated by
V2/ue/Tools/check-v2-context-screenshots.py.
String length validation for UI space budgets and per-language character limits
is documented in V2/docs/localization/string-length-validation.md and
validated by V2/ue/Tools/check-v2-string-length-validation.py.
Translation QA automation for untranslated strings, temporary build text,
encoding errors, and broken variables is documented in
V2/docs/localization/translation-qa-automation.md and validated by
V2/ue/Tools/check-v2-translation-qa-automation.py.
Continuous localization CI for on-commit extraction, TMS sync, validation, and
localized asset builds is documented in
V2/docs/localization/continuous-localization-ci.md and validated by
V2/ue/Tools/check-v2-continuous-localization-ci.py.
Pseudo-localization mode for en-XA expansion, accents, bracket wrapping, and
overflow detection is documented in
V2/docs/localization/pseudo-localization.md and validated by
V2/ue/Tools/check-v2-pseudo-localization.py.
Locale fallback chain behavior for missing translation resolution is documented
in V2/docs/localization/locale-fallback-chain.md and validated by
V2/ue/Tools/check-v2-locale-fallback-chain.py.
Localization status dashboard reporting for per-language completion, strings
needing review, and recently changed source strings is documented in
V2/docs/localization/localization-status-dashboard.md and validated by
V2/ue/Tools/check-v2-localization-status-dashboard.py.
CJK font coverage validation for characters used in translated text is
documented in V2/docs/localization/cjk-font-coverage.md and validated by
V2/ue/Tools/check-v2-cjk-font-coverage.py.
CJK text layout support for Chinese, Japanese, and Korean line breaking rules is
documented in V2/docs/localization/cjk-text-layout.md and validated by
V2/ue/Tools/check-v2-cjk-text-layout.py.
CJK text density adaptation for wider CJK characters, UI element sizing, and
text areas is documented in V2/docs/localization/cjk-text-density.md and
validated by V2/ue/Tools/check-v2-cjk-text-density.py.
RTL text rendering for Arabic and Hebrew glyph shaping, mirrored punctuation,
and mixed LTR/RTL content is documented in
V2/docs/localization/rtl-text-rendering.md and validated by
V2/ue/Tools/check-v2-rtl-text-rendering.py.
RTL UI mirroring for HUD elements, menus, navigation, and focus order is
documented in V2/docs/localization/rtl-ui-mirroring.md and validated by
V2/ue/Tools/check-v2-rtl-ui-mirroring.py.
Voice-over asset management for per-locale VO directory structure, naming
conventions, file format requirements, metadata sidecars, and rights tracking is
documented in V2/docs/localization/voice-over-asset-management.md and
validated by V2/ue/Tools/check-v2-voice-over-asset-management.py.
Voice-over recording script export for actor-facing context, direction, slate
IDs, localized recording text, and deterministic target VO asset names is
documented in V2/docs/localization/voice-over-recording-script-export.md and
validated by V2/ue/Tools/check-v2-voice-over-recording-script-export.py.
Voice-over integration pipeline coverage for matching VO audio files to dialogue
IDs, validating recording coverage, and detecting missing recordings is
documented in V2/docs/localization/voice-over-integration-pipeline.md and
validated by V2/ue/Tools/check-v2-voice-over-integration-pipeline.py.
Voice-over lip-sync per locale for generating phoneme data from each language's
VO and aligning cues to localized recording duration is documented in
V2/docs/localization/voice-over-lip-sync-per-locale.md and validated by
V2/ue/Tools/check-v2-voice-over-lip-sync-per-locale.py.
Subtitle timing from voice-over for auto-generating subtitle display duration
from VO clip length, reading floor, and post-voice hold rules is documented in
V2/docs/localization/subtitle-timing-from-voice-over.md and validated by
V2/ue/Tools/check-v2-subtitle-timing-from-voice-over.py.
Locale-specific number/date/currency formatting for launch locales, CLDR sample
generation, ICU runtime API requirements, and platform-store currency mapping is
documented in V2/docs/localization/locale-specific-formatting.md and validated
by V2/ue/Tools/check-v2-locale-specific-formatting.py.
Locale selection UI for operating system locale auto-detect, text language, and
voice-over language overrides in Options is documented in
V2/docs/localization/locale-selection-ui.md and validated by
V2/ue/Tools/check-v2-locale-selection-ui.py.
Text-to-speech fallback for missing voice-over recordings and incomplete
localizations is documented in
V2/docs/localization/tts-fallback-for-missing-vo.md and validated by
V2/ue/Tools/check-v2-tts-fallback-for-missing-vo.py.
Localization testing mode for rapidly cycling launch locales and screenshotting
each localized screen is documented in
V2/docs/localization/localization-testing-mode.md and validated by
V2/ue/Tools/check-v2-localization-testing-mode.py.
The localization workflow, vendor integration, and QA process handbook is
documented in V2/docs/localization/localization-documentation.md and validated
by V2/ue/Tools/check-v2-localization-documentation.py against
V2/ue/Content/Localization/V2/LocalizationDocumentation_V2_Contract.json.
Launch Coverage#
All customer-facing strings are externalized under
V2/ue/Content/Localization/V2/. The launch inventory covers en-US, en-GB,
fr-FR, fr-CA, es-ES, es-419, pt-BR, pt-PT, de-DE, it-IT,
pl-PL, ru-RU, tr-TR, ar, he, ja-JP, ko-KR, zh-Hans, zh-Hant,
th-TH, vi-VN, and id-ID.
Launch VO ships for en-US, fr-FR, es-ES, pt-BR, de-DE, it-IT,
ja-JP, ko-KR, and zh-Hans. The remaining launch locales are subtitle-only
at launch with a tracked VO patch plan, pickup-session diffs, actor casting
sheets, per-fighter VO banks, and per-locale lip-sync retiming.
Text, Fonts, and Formatting#
The validated feature set enables RTL layout for Arabic and Hebrew, script-aware font fallback, Latin-only dyslexia font policy, ICU CJK linebreaking, CJK full-width and half-width glyph handling, Arabic kashida justification, bidirectional mixed-text handling, and Thai/Khmer/Lao segmentation rules.
Formatting gates include POSIX timezone and DST handling, Gregorian default, Japanese era, Korean Dangi, Buddhist, Hebrew, and Hijri calendars, locale decimal and thousands separators, platform-store-aligned currency, and metric/imperial fighter stat display.
Workflow#
The vendor workflow is mirrored across Crowdin, Smartling, Lokalise, and Wordbee. Each locale has a glossary, string-length-cap validation, text-expansion QA, linguistic review, cultural review, brand review, and a VO casting reference sheet. Live-ops content uses the same review chain for Battle Pass, daily challenges, news feed, and cosmetic shop content.
Emergency hotfix and moderation announcements have a 24-hour localization SLA. Each launch locale has a native-speaker beta cohort of 100 to 500 testers and a dedicated QA lead for subtitle timing, VO lip-sync, RTL layout, CJK linebreaking, and active region variant checks.
Region Variants#
Regional content policy is stored in FV2LocalizationVoiceOverFeatureSet and
URV2_RegionVariant so each SKU is tagged with the active RegionVariant macro
and runtime boot can assert that the installed region matches the expected
variant.
Region checklists:
RegionVariant.DE.USK18:V2/docs/regions/de-usk18-checklist.mdRegionVariant.JP.CEROZ:V2/docs/regions/jp-ceroz-checklist.mdRegionVariant.RU-CIS.CurrentLegal:V2/docs/regions/ru-cis-checklist.mdRegionVariant.CN.NPPA:V2/docs/regions/cn-nppa-checklist.mdRegionVariant.SA-GCC.Gmedia:V2/docs/regions/sa-gcc-checklist.mdRegionVariant.KR.GRAC19:V2/docs/regions/kr-grac19-checklist.mdRegionVariant.AU.ACBR18:V2/docs/regions/au-acbr18-checklist.mdRegionVariant.NZ.OFLCR18:V2/docs/regions/nz-oflcr18-checklist.mdRegionVariant.BR.DJCTQ18:V2/docs/regions/br-djctq18-checklist.mdRegionVariant.CA-QC.Bill96:V2/docs/regions/ca-qc-bill96-checklist.md
Source Trail#
Primary public sources used for the regional gates:
- Germany USK: https://usk.de/en/the-usk/faqs/age-categories/
- Japan CERO rating system: https://www.cero.gr.jp/en/publics/index/17/
- Japan CERO code of ethics: https://www.cero.biz/e/regulation.pdf
- China State Council minor online gaming limits: https://english.www.gov.cn/statecouncil/ministries/202108/31/content_WS612da2a2c6d0df57f98df6bd.html
- Saudi Arabia Gmedia video game classification: https://gmedia.gov.sa/en/services/age-rating-for-video-games
- Saudi Arabia Gmedia age classification: https://gmedia.gov.sa/en/age-classification
- Korea MCST probability item disclosure guide: https://mcst.go.kr/servlets/eduport/front/upload/UplDownloadFile?pFileName=★최종_(영문)_240322_확률형_아이템_정보공개관련_해설서_최종본(누리집).pdf&pPath=0301000000&pRealName=1711068183521.pdf
- Australia Classification Board: https://www.classification.gov.au/classification-ratings/what-are-ratings
- New Zealand Classification Office: https://www.classificationoffice.govt.nz/classification-info/classification-labels/
- Brazil Ministry of Justice games and apps: https://www.gov.br/mj/pt-br/assuntos/seus-direitos/classificacao-1/paginas-classificacao-indicativa/jogos-e-apps
- Brazil ClassInd service: https://www.gov.br/pt-br/servicos/obter-classificacao-indicativa
- Quebec Charter of the French Language: https://www.legisquebec.gouv.qc.ca/en/document/cs/C-11