You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Found while shipping the Hindi locale (#237): the campaign's most-read text — level title, scenario, learn, debriefTip, plus objective labels — lives as English strings in src/campaign/levels.js data (the schema even documents them as "UI strings (EN)"). They render in English for every locale, including uk and the new hi.
For any locale, this is now the single biggest localization gap: the campaign is the education spine, and its narrative is the part players actually read.
Found while shipping the Hindi locale (#237): the campaign's most-read text — level
title,scenario,learn,debriefTip, plus objectivelabels — lives as English strings insrc/campaign/levels.jsdata (the schema even documents them as "UI strings (EN)"). They render in English for every locale, including uk and the new hi.For any locale, this is now the single biggest localization gap: the campaign is the education spine, and its narrative is the part players actually read.
Scope
25 levels × (title + scenario + learn + debriefTip + ~4 objective labels) ≈ ~200 keys × 11 locales ≈ 2200 strings, plus the mechanism:
level_<id>_title,level_<id>_scenario, …,obj_<levelId>_<objId>), keeplevels.jsholding keys not prosecheckfunctions are untouched — this is presentation-onlyWorth doing in two PRs: (1) the mechanism + en extraction (zero visible change), (2) the translations.