LQA for Vietnamese Games: Bugs Machine Translation Always Misses
💡 Machine translation produces fluent Vietnamese text that still fails in-game: pronouns depend on social hierarchy, concatenated sentence fragments break grammar, and missing font glyphs turn diacritics into squares. A structured LQA pass with a native Vietnamese reviewer and screenshot captures finds these bugs before players do.
Key takeaways
- Run a dedicated Vietnamese LQA pass: MT output reads fluently in isolation but breaks on pronouns, font glyphs, and concatenation in the running game.
- Build a pronoun map (em/anh/con/bạn) for every major NPC before translation begins; hand it to both the translator and the LQA reviewer.
- Check every font asset against the full Vietnamese Unicode block (U+1E00-U+1EFF, Latin Extended Additional); a missing glyph silently falls back to a square box.
- Never split a sentence across two localization keys; expose full sentences so Vietnamese word order and pronouns can be adjusted correctly.
- Use Unity's pseudo-localization or Unreal's text-stress mode to find UI overflow before translation begins - budget 25-30% extra space per container.
Why does Vietnamese need a dedicated LQA pass when MT looks fluent?
Linguistic Quality Assurance (LQA) is an in-context review of localized text in the running game, not a file comparison. A reviewer plays through the game or walks through a screenshot set, logs bugs against a severity scale (Critical, Major, Minor), and retests every fix. Standard frameworks such as MQM (Multidimensional Quality Metrics) categorize errors by accuracy, fluency, terminology, style, and locale convention.
Vietnamese earns its own LQA pass because its structural differences from European languages produce bugs that only surface in context. The same translated string can be grammatically correct in a file and socially wrong in the game: the correct Vietnamese pronoun for "you" depends on the NPC's age and rank relative to the player, not on the English source word "you." Machine translation has no access to that relationship data and defaults to a neutral form that native players notice immediately.
The four bug classes MT always misses in Vietnamese games
Analysis of Vietnamese game LQA reports consistently surfaces four categories that MT engines handle poorly:
- Pronoun and register errors: Vietnamese lacks a universal "you" or "I." The correct pair (em/anh, con/mẹ, bạn/bạn) depends on the speaker-listener relationship. MT defaults to a neutral pronoun that is often socially wrong for the NPC's age or rank.
- Font glyph gaps: Standard Western fonts lack Vietnamese-specific characters such as ẵ, ệ, or ợ. When the game engine falls back to a system font for missing glyphs, the result is square tofu blocks - invisible during file review and glaring to players in-game.
- Concatenation chaos: Game engines typically build sentences from fragments: "[Player] has joined [Team]." Vietnamese word order and grammar depend on the full sentence context; fragments cannot be reassembled correctly after translation.
- Untranslated strings: Hard-coded UI labels, developer tooltips, and strings injected via code rather than the localization pipeline bypass MT entirely. LQA reports consistently place this category at roughly 24% of all bugs found.
Pronoun errors: why does MT pick the wrong honorific every time?
Vietnamese personal pronouns encode age, gender, and social hierarchy simultaneously. When an NPC says "Come with me, [Player]," the correct pronoun pair depends on whether the NPC is older, younger, a friend, or an authority figure. MT has no access to that relationship data - it defaults to a neutral form that Vietnamese players immediately notice as wrong for the scene.
The fix requires upfront design work, not just post-translation review. Build a pronoun map into your localization style guide before translation begins: list each major NPC, their role, their age relative to the player, and the expected pronoun pair for first-person and second-person address. Hand that document to both your translator and your LQA reviewer at the start of the project. Without it, every scene involving an elder character, a mentor, or a peer will have inconsistent register.
Font gaps and diacritics: the bug that only shows up in the running game
Vietnamese uses the Quốc Ngữ script: Latin letters extended with vowel shape marks (circumflex, breve, horn) and tone marks (grave, acute, hook above, tilde, dot below). The complete set sits in the Unicode Latin Extended Additional block (U+1E00-U+1EFF). Any font that only covers Basic Latin or Latin-1 Supplement will silently drop these glyphs.
In Unity's Localization Package, verify your string table is stored as UTF-8 and that the TextMeshPro font atlas includes the full Latin Extended Additional range. In Unreal Engine, set the font fallback chain so a missing Vietnamese glyph falls to a known-good font rather than the system default. Run a glyph-coverage check against your actual Vietnamese string file - not just "does the font claim Unicode support."
Concatenation chaos: why can't Vietnamese grammar be assembled from pieces?
Many game engines build sentences from injected fragments: "{name} has defeated {enemy}." In English the surrounding grammar is fixed and the injected words are just nouns. In Vietnamese the surrounding grammar may need to change based on the inserted noun: a classifier word, a title, or a pronoun form may be required before or after the inserted term, depending on what it refers to.
The only reliable fix is to expose full sentences to translators, not fragments. Use ICU MessageFormat (documented in the Unicode CLDR LDML specification) or your engine's equivalent to let translators reorder tokens freely within a complete sentence template. Never split a grammatical unit across two localization keys. Vietnamese word order is flexible but depends on the full clause, not detached fragments.
What your team can do in-house vs when to hire a native Vietnamese reviewer
Several LQA checks require no Vietnamese language knowledge and can be done entirely by your QA team:
- Language-coverage report: every string key in the build must have a Vietnamese value, not an English fallback or empty string.
- Font glyph coverage check for U+1E00-U+1EFF on every font asset used in Vietnamese UI.
- Pseudo-localization run in Unity or Unreal to preview text expansion before translation ships.
- UI overflow audit: test every container at 25-30% longer text length than English.
- Number and currency formatting: Vietnamese uses period (.) for thousands, comma (,) for decimal; 500.000₫ not 500,000₫.
A native Vietnamese reviewer is genuinely necessary for pronoun and register correctness in all story dialogue and NPC speech, cultural appropriateness of humor and idioms, and in-context dialogue flow where correct Vietnamese can still sound translated if sentence rhythm is off. For a game targeting Vietnam's roughly 55 million mobile players, the cost of one LQA pass is small compared to the reputation cost of viral posts about broken Vietnamese text.
For help with Vietnamese game localization and LQA, see the Vietnamese game localization service.
FAQ
Do I need a full LQA pass if I had a human translator review the files?
Yes. File review catches translation errors but not in-context bugs: UI overflow, concatenation failures, missing glyphs, and hardcoded strings only surface in the running game. LQA complements translation review and does not replace it. Run the in-game screenshot pass after translation QA, not instead of it.
How many strings in a typical mobile game need Vietnamese LQA?
A mid-size mobile RPG typically has 5,000-15,000 localized strings. A full LQA pass covers all UI screens, main story dialogue, and NPC names. A lite pass covers the critical path: main menu, HUD, tutorial, and key story beats. For a first release in Vietnam, full coverage of the critical path plus spot-checks on secondary flows is a practical starting point.
Can I use MT with post-editing (MTPE) for Vietnamese games instead of fresh translation?
MTPE is viable for item descriptions, system messages, and text where pronoun choice is fixed and register is neutral. Avoid MTPE for story dialogue, NPC speech, and any scene where the speaker-listener relationship determines pronoun choice. The post-editor must be a native Vietnamese speaker who evaluates context, not just fluency.
What severity should I assign to a pronoun error in a Vietnamese game?
Pronoun errors in story dialogue are typically Major (the player understands the text but the social register is noticeably wrong). A pronoun error that changes the meaning of a quest instruction or obscures an NPC's relationship to the player is Critical. System UI pronoun errors on context-neutral screens (settings, loading) are Minor. Apply MQM or your studio's scale consistently so reviewers and developers agree on priorities.
Which engines have the best built-in support for Vietnamese localization?
Unity's Localization Package (com.unity.localization) supports UTF-8 string tables, Smart Strings for pluralization and conditionals, and pseudo-localization for early layout testing. Unreal Engine's localization pipeline supports XLIFF export and font fallback chains. Both engines need a manual font atlas configured to cover the full Vietnamese Unicode range (U+1E00-U+1EFF). Neither engine auto-detects pronoun register - that always requires a native reviewer's judgment.
Official Sources
- Unity Localization Package: String Tables - UTF-8 string table structure, Smart Strings, and pseudo-localization for layout testing. Verified Oct 2026.
- Unicode CLDR: Locale Data Markup Language (LDML) - ICU MessageFormat specification for reorderable, plural-sensitive sentence templates. Verified Oct 2026.
- W3C Internationalization: Language on the Web - lang attribute requirements and BCP 47 tag guidance for Vietnamese (vi, vi-VN). Verified Oct 2026.
- Transphere: Vietnamese Game Localization Guide 2026 - Vietnamese diacritics, glyph gaps, pronoun complexity, and UI string expansion data. Verified Oct 2026.
Written by Dao Huy (Lucas), Vietnamese translator & localization specialist (EN · ZH · FR → Vietnamese). See translation services →
