Ask an AI about this
This is where the actual translating happens: a side-by-side view of the game's original text and your version, with filters, a glossary, translation memory, and machine assist to speed you up.
The Translate page
This is where the actual translating happens: a side-by-side view of the game's original text and your version, with filters, a glossary, translation memory, and machine assist to speed you up.
The Translate page is where you'll spend most of your time as a translator, so it's built like a good workbench: everything within reach, nothing in the way. The idea is simple. The game's text arrives as a long list of strings (a menu label, an item name, one line of dialogue each), and you work through them: original on the left, your translation on the right. Everything else on the page exists to make that loop faster and more consistent.
Source · English
Rest here. The kingdom can wait a moment longer.
● Target · Japanese
ここで休むといい。王国はもう少し待てる。
The string list
Here's a real row, editable. Try typing into the right side:
| Where | What it does |
|---|---|
| Status badges | Every row reads To do or Done, and a row you have marked "no translation needed" says so instead. Done arrives the moment the box has text in it, which makes the remaining work visible as you scroll. |
| Quick filters | Three pills above the list: All, Untranslated, and With audio. Untranslated is the one you'll live in. |
| Search and sort | Search runs over both the source and your translation. The sort menu reorders the list thirteen ways, including untranslated first, recently updated, and AI translated first. |
| Files | The left rail groups the game's text by file with a percentage on each, so "finish chapter 2" is a click rather than a search. |
| Labels | Tag rows (NPC dialogue, UI, items) and filter by tag. Useful for splitting work with teammates or doing all of one kind of text in a sitting. |
| No translation needed | Some strings are asset names or debug text that must stay in English. Mark one and it drops out of every coverage number instead of sitting there as unfinished work forever. |
Where the strings come from
Most Unreal games keep their text in translation bundles, one per language, and that is what Tranzio reads when you add a game. Some keep part of it somewhere else: inside the game's own asset files, in what Unreal calls a string table. Nothing about those strings appears in any translation bundle, so a tool that only reads bundles leaves them in English no matter how complete the translation looks.
A third arrangement is a data table: a spreadsheet inside the game with one row per line and one column per language. Games that ship voice acting often keep their whole script this way, because the row's name is also the name of the recording. Here too nothing reaches a translation bundle, and the gap can be most of the game: one such title keeps 2,117 menu and document strings in its bundles and all 3,356 of its spoken lines in a single table.
A few studios skip Unreal's system altogether and invent their own text format. Those games ship a translation bundle that is technically present and completely empty, which is the most confusing case of all: everything looks like it worked, and the editor opens with almost nothing in it.
Tranzio reads all four. Each source shows up in the list as its own document, named after the file it lives in, and they all translate exactly like everything else. At build time the last three take a different road home: instead of writing a translation bundle, Tranzio rewrites the file itself around your text and packs the rewritten copy. You do not have to know which kind a string is, and nothing in the game folder is modified either way.
A data table is the one case where Tranzio has to choose what to overwrite, since every language sits in the same file. It writes over the column of the language you are translating from, which is the one the game reads while you are playing it, so your text appears exactly where the original did.
How much of a game lives outside the bundle varies wildly. Little Nightmares II keeps its entire menu and every tutorial hint in string tables, 208 strings that were invisible before. Hogwarts Legacy is the extreme case: its translation bundles hold one placeholder string between them, and all 53,844 of its real lines are in a format Avalanche wrote for themselves. Plenty of other games keep everything in the bundle and have none of this.
If a game really does keep its text somewhere Tranzio cannot read yet, the add-game run says so at the end rather than leaving you to work it out from an empty editor.
Two ways to work
The page has two shapes and a toggle in its header. Workspace is the three-pane view: files on the left, the string list in the middle, and translation memory, string info, audio and comments on the right. Focus throws all of that away and gives you one string at a time, full width, which is what you want for a long dialogue session. Esc brings the panes back.
Files on the left, the string list in the middle, memory and context on the right.
Your progress, always visible
Five cards sit under the page title and update as you type: how many strings there are in total, how many are translated, how many are not, how many you have excused from translation, and how many carry a voice line. Watching the second number climb is half the motivation.
Bookmarks, for coming back to a line
Some lines you cannot finish on the spot. A pun with no obvious equivalent, a term the team has not settled on, a string whose context you want to check in-game first. Click the bookmark icon on a card (or the button in Focus mode) and the line joins a list in the Marks tab of the left sidebar. Clicking it there takes you straight back, however deep in the document it sits.
Bookmarks are yours alone. They live on this computer, they are never uploaded, and nobody else on the adaptation sees them, so you can flag anything you like without it reading as an instruction to a teammate. They also never travel inside a published build.
Saving your work
Typing does not write to the database straight away. Each line you change is held as a draft, and a bar appears along the bottom of the page counting them: 3 unsaved changes. That bar is the thing to watch, because it is the only place the count lives.
| Control | What it does |
|---|---|
| Save all | Writes every draft you have open to your computer at once. The button carries the count, so you always know how much is pending. |
⌘ + S | The same thing from the keyboard, without reaching for the bar. |
| Discard | Throws every pending draft away and reloads the saved text. There is no undo for this, so read the count first. |
Because drafts are not written until you save them, the bar showing a count is your cue that there is work in the page that is not yet on disk. Save before you close the game or switch to another one.
Placeholders, handle with care
Some strings contain tokens like {playerName}, %d, or <color>. The game fills these in (or styles text with them) while running: %d might become "42", {playerName} becomes whatever the player typed. Treat them as sealed boxes: move them to wherever your language's grammar wants them in the sentence, but never translate, respell, or delete them.
What you write
{player_name}、骨を%d個あつめてくれ。
What the player sees
Hornet、骨を12個あつめてくれ。
Both tokens survived. Word order is yours to change.
A missing or mistyped placeholder can crash the game or print blank text at that spot. Nothing checks this for you yet, so it is worth a glance every time a row has a token in it: count the tokens in the source, count them in yours, and make sure they are spelled identically.
The glossary keeps you consistent
Character names, place names, recurring item terms: decide once how you translate them, save the pair in the glossary, and it follows you through the rest of the project. When a term appears in the string you're translating, the panel shows your agreed translation right there.
Glossary · 3 terms
Sign in to manage glossary.
Translation memory
Games repeat themselves constantly, and so will you. As you move onto a string, Tranzio searches everything you have already translated in this project for lines that read like it and shows the closest matches with a similarity score. Click one and it drops into your box, ready to adjust.
Translation memory · 2 matches
Identical strings, settled at once
Under it sits a stricter panel: Same source, for strings whose source text is exactly identical. A game can carry the same "Continue" under forty different keys, and the panel lists them one row per string, each with the key and file that locate it and whatever is written for it today. Translated rows come first, identical wordings sit together, and the ones nobody has touched are listed too. Only an exact match counts: "NEW GAME" never reaches "Begin a new game", however close the two read.
Same source5 strings
This source is translated 2 different ways. Pick one to keep them consistent.
Where else it appears- /UI_MAINMENU_NEWGAMEMainMenu_Game.locres
新しいゲーム
Same as yours - /UI_NEWGAME_TITLEMainMenu_Game.locres
新しいゲーム
Same as yours - /UI_PAUSE_NEWGAMEHUD_Tooltips.locres
ニューゲーム
- /UI_TITLE_NEWGAME_CONFIRMSettings.locres
Not translated yet
It works in both directions, which is the useful part.
| Where | What it does |
|---|---|
| Copy to your translation | Pulls that row's wording into the box you are editing, replacing what is in it. Good when a twin already got it right. A row that already matches what you have says so instead of offering the button. |
| Apply your translation to all | Pushes the wording in your box out to every identical string at once. This is the alternative to searching the project and retyping a phrase forty times after you change your mind about it. |
The push asks before it writes, because it can overwrite work. The confirmation shows the exact source being matched, the wording about to go in, and the wordings about to be replaced, and it lets you choose between all identical strings and only the empty ones. Afterwards the toast carries an Undo that puts every previous translation back, so settling on a phrase is never a decision you have to be sure about in advance.
Machine assist
The Translate with AI button in the header pre-fills rows for you. You choose how much to do (a count of untranslated strings, or a set you picked by hand), which model to use, and whether it should assign labels as well as write the text. Tranzio quotes the cost in credits before it starts and streams the results in as they arrive, so you can watch and stop.
For long games this is a real accelerator: fixing a decent draft is much faster than typing from zero. Just never publish the raw output. Automatic translations miss tone, context, and every joke; a machine line is a starting point, and your edit is the translation. Rows written by AI are marked as such in the string info panel, so you can always tell what still needs a human pass.
Keyboard flow
The editor is built to keep your hands on the keyboard:
| Shortcut | Action |
|---|---|
| Ctrl+S | Save every pending change |
| Ctrl+F | Focus the search box |
| Ctrl+→ | Next entry |
| Ctrl+← | Previous entry |
| Esc | Exit focus mode |
Keeping quality high
- Watch the coverage numbers on the Build page. Text, audio and fonts each get their own percentage there, which is the clearest picture of what is actually left.
- Lean on the glossary for names and key terms; future you will be grateful.
- Use the identical-source panel to settle on one wording per repeated string, rather than discovering three of them after release.
- Play your own translation early and often. Text that looks perfect in a list can overflow a button or read strangely in a cutscene. Build, install locally, and see it in-game.