Translate a Unity or Godot game into Italian
Upload the CSV string table exported from Unity or Godot. Manuce fills in or adds the <i>it</i> column and returns the same file, ready to re-import. Placeholders and markup are checked in every value, while gender agreement, articles and fonts still need testing in-game, as explained below.
What it costs
For the language files of a Unity or Godot game totalling about 4,000 words, into Italian:
To understand, internal use.
Ready to send, by the technical specialist.
Cross-checked. For documents that commit you.
Price for one language, original layout included. VAT not applicable — article 293 B of the French General Tax Code (CGI). The exact quote, based on your file's word count, is shown before you pay.
What Italian changes in your game text
Italian uses the Latin alphabet and runs left to right. It is noticeably longer than English, roughly as long as French. Short labels grow: Settings becomes Impostazioni, Load becomes Carica partita. A button sized tightly around English text will overflow, so allow auto-sizing or spare width in your UI components.
Accented vowels are everywhere: à è é ì ò ù, as in perché, città and è. At the start of a sentence the correct capital is È, not E', a common giveaway of rushed localisation. If your font is a glyph atlas restricted to ASCII, such as a TextMeshPro font asset built from a reduced character set or a bitmap font in Godot, those letters will render as empty boxes.
You also need to settle the register. Italian software often addresses the user formally with Lei (Vuole salvare?). Most games, however, use the informal tu (Vuoi salvare?). Decide before translating and keep it consistent throughout. Numbers follow Italian conventions too: 1.500 monete, 2,5 secondi. If your code hard-formats numbers with a decimal point, fix that in code.
Plurals, gender and placeholders: the Italian traps
CLDR defines three plural categories for Italian: one, many and other. For in-game counters you will mostly meet one and other: 1 vita, 3 vite. The many category covers large round numbers that take di: 1 milione di monete. In Unity, a Smart String such as {0:plural:{} vita|{} vite} must keep its structure intact. A Godot CSV holds one value per key and language, so plan separate keys like COINS_ONE and COINS_OTHER rather than a single %d coins.
Grammatical gender is the second trap. The Italian article depends on the noun: lo scudo, l'ascia, la spada, gli stivali. A string like Hai perso il {item} will therefore be wrong for half the inventory. Participles agree as well: {item} è stato venduto suits the shield but not the potion (è stata venduta). There are two fixes:
- store the article inside the item-name string (
la spada); - rewrite the source so that no agreement is needed, for example
Oggetto venduto: {item}.
Avoid building sentences by chaining several keys together. Italian word order will not follow your source language.
What Manuce returns, and what it does not do
Manuce handles string tables exported as CSV, with one key column and one column per language. The Italian column is filled in if it exists and added if it does not. With a Godot header such as keys,en,it, only the third column changes. The file you get back is the same file: indentation, key order, quotes, comments, line endings, encoding and BOM are all preserved, so it re-imports into Unity or Godot as is.
Every translated value is compared with its source for placeholders ({playerName}, %s, %d) and tags (<b>, <color=#FFD700>, [color=yellow]). If a mismatch persists, the source value is kept and the report flags it. An untranslated line is better than a lost {0} that breaks a dialogue.
The following are left untouched: keys, empty values, URLs, email addresses, numbers, colours, date formats, identifiers and anything marked as non-translatable. The report lists the strings translated and those left as they were, with the reason.
Manuce does not edit your scenes, scripts, textures or fonts. It does not translate text baked into images or voice-over, and it does not playtest. You pay for the words in the values only; keys and tags are excluded. Italian is charged at the base rate (coefficient ×1).
Preparing the file and checking in-game
Before uploading:
- export the table with a complete source column, because an empty source value will not be translated;
- mark names that must stay as they are, such as the game title or certain character names, as non-translatable;
- fix source strings built by concatenation or by combining an article with a placeholder.
Next, request the free extract and check the register: Vuoi or Vuole. For a released game, the Professional level is the sensible choice. After re-importing, check in-game:
- that
È,àandùdisplay in every font; - overflowing buttons and tooltips;
- counters at 0, 1, 2 and one million;
- inventory messages, for articles and agreement;
- any lines the report says were left in the source language.
In practice
- Export your Unity or Godot string table as CSV, with the source column filled in.
- Upload it to Manuce and select Italian; the quote appears straight away.
- Review the free extract, especially whether the player is addressed as tu or Lei.
- Download the completed CSV and the report, then re-import the file into your project.
- Playtest fonts, text length, plurals and agreement.
Frequently asked questions
Will the player be addressed as tu or Lei?
Formal Italian defaults to <i>Lei</i>, but games usually address the player as <i>tu</i>. Check the free extract before paying to see which register you get. Then check that it is consistent across menus and dialogue.
What happens if a placeholder such as {0} or %d goes missing?
Every value is compared with its source, including placeholders and tags. If the mismatch persists, the source value is kept and the report says so. You get no broken strings, just a few lines to deal with.
Do I need a different font for Italian?
Not necessarily, but the glyph atlas must include the accented vowels, capitals included (<code>È</code>, <code>À</code>). Manuce does not change the fonts in your project. Check this in-game after re-importing.
Will item names agree correctly in sentences?
Manuce translates each value on its own and cannot see which value the game inserts into a placeholder. A string like <code>il {item}</code> will produce the wrong article for feminine nouns or nouns starting with a vowel. Rewrite the source or store the article inside the item name.
Which words are counted?
Only the words in the values are counted, not the keys or tags. The quote is based on the exact word count when you upload the file. Italian is at the base rate, and a discount applies to the whole order from two languages (−20%).
The specialist in charge
This subject goes to Dédale, the technical specialist. See how it works.
The same file, into another language
Into Italian, other files
See also
Try it on your own file, free
A sample of your file translated at the level you choose, before any payment. You judge, then you decide.