How To Prepare Your Game For Localization: A Few Translation Tips (part 2)

2019-01-22 | Michael Souto

How To Prepare Your Game For Localization: A Few Translation Tips (part 2)

In the previous blog about game localization, we talked about making your game text localization-friendly. This is the first step in the game localization process, especially when looking to achieve a high-quality game translation.

In this localization blog, we will focus on the in-game dialogues. We’ll look at maximum text length in game translation and handing game translator questions throughout the game localization process.

Game dialogue challenges

We often receive game localization requests that have an amount of game source text that is dialogue related. Not necessarily to be recorded in the studio but perhaps to be used as subtitles, or perhaps used in place of English source text used in the game (also not audio). It’s regularly all in the same sheet or text file and mixed in with all the other text. This creates a number of basic problems when translating the game:

  1. Finding and separating the dialogue text strings
  2. Ordering the text strings
  3. Understanding the context of the dialogue

Those are just the basic issues. Then we have issues based on:

  • Who is the line delivered by?
  • Who is it directed to? Is it one person or a group? Who is in the group?
  • What gender is the speaker?

So, let’s talk about how to organize the strings with dialogues and control the max text lengths.

Set up your strings

Storing your strings

To streamline your game localization process, you initially need to plan where the strings will be stored.

You could, of course, use a game localization tool (like our LocDirect system) that separates these strings into folders. However, if you want to stick with old school files then it’s best that you work in a spreadsheet. It’s better to steer clear of .txt files.

Create one sheet that contains the “in-game” text and then another that contains “dialogue”. Alternatively, if you want just the one sheet then you should clearly separate “in-game” and “dialogue” within that sheet. Your call but make it clear.

Indicate the order of the strings

I’ll go with the separate sheet concept for now.

The “in-game” sheet should contain columns for:

  • String ID
  • Source text
  • String description
  • Order.

Some in-game text may have a specific order, however, if the ID doesn’t feature that order then this can be missed by the game translation team.

The game translator could decide to sort the text in a different way or perhaps use a separate system for translation which may order on ID. This is very possible!

Take a look at this pretty simplistic example:

Mike-blog-pt-1-table

Now if reordered on StringID:

Mike-blog-pt-1-table2

You can see that the “fire” ability will be translated differently depending on the understanding of how fire is used. Did you mean “to start a fire” or “open fire on the enemy”?

If you include an “Order” column, this can be used by the translator to understand context. Alternatively, you can add a number prefix to all strings so even if sorted on ID they will be in the correct order:

0049_objective_11_start

0050_objective_11_ongoing

0051_objective_11_complete

NB: you need to ensure that there are enough digits to allow an effective sort. If you have just 1, 2,11, etc. then these will not sort correctly as 0001, 0002, 0011, etc. would.

I would recommend that you step in 10s instead of just 1. For example: string_0000, string_0010, string_0020, etc. This then allows you to add strings in-between without having to rename all strings or add an a, b, c…

Understanding the context of the dialogue

The order of the strings helps the game translator with an understanding of dialogue flow and context. However, in many instances, there may be additional information that you can provide so that the game translator is aware of what is intended by the string. Is the person meant to deliver in an urgent manner? Is the person irate, joking, etc.? Here’s where the string description column is of great use.

Create additional columns for dialogue

So we have the “in-game” sheet and all is looking good. Then we have our “dialogue” sheet. You should add at least two further columns here (of course up to you on whether you feel there are even more that would help with the game translation).

These are:

  • Speaker - Who the line is delivered by (add the gender of the character).
  • Recipient - Who the line is being delivered to (character name/group and gender needed).

An example here for you, note that not all columns from the dialogue sheet are shown here (no String ID, description, etc.).

Mike-blog-pt-1-table3

Of course, putting this kind of information together can take some time but will certainly be worth the effort. You want to receive the best quality game translations and minimize error and translator questions. If your game is heavy, you may want to look at using a localization CMS system that allows you to add custom fields!

That said, however, you can scale this detail back if time really is against you. As a basic rule, you certainly need the Speaker name (and gender) and Recipient gender information to help with game translation quality.

Gender in dialogue

On the subject of gender, in some languages (Japanese, Spanish, Russian), women use different words and styles than male counterparts. When you have M/M, M/F, F/M, and F/F dialogue, all of those can be very different strings.

In some cultures, men use a more forceful language and women - more deferential. It can reverse the forms in certain situations, like an older woman or mother speaking sternly to a young man. When it comes to three-person and four-person discussions, the gender of speakers can make things really tricky for game translators.

Video & audio reference

Supplying video or audio files separately is a great way to improve game localization quality and cut down on translator questions.

Just ensure that it’s easy for the translators to reference the string with the file. It’s extremely painful trying to find a string when it’s in a long video or in a large number of audio files. If you do supply reference files then include a timecode column in the dialogue spreadsheet/tab.

NB: Sending massive 2GB files is a pain, the game translators don’t need a 1080p quality video to review audio (or even text). Compress files if you can.

Code scalable text boxes

All too often the request is to “keep the game translations to the English text length”. This is next to impossible to do.

Most other languages are longer than English and if you have structured the display so that English fits “just right” then you are going to have problems localizing your game.

As a rule of thumb, if you develop your game in English, budget for a 30% minimum additional space to accommodate other languages. Of course, it’s not a case if you localize into Chinese that takes 20-60% less space than English.

Let’s see how “game localization” looks in different languages:

  • EN: Game localization
  • ES: Localización de videojuegos
  • IT: Localizzazione di videogiochi
  • DE: Spiele-Lokalisierung
  • UA: Локалізація ігор
  • CN: 游戏本地化
  • JP: ゲームローカライゼーション
  • AR: تعريب الألعاب
  • HE: לוקליזציית משחק

Code scalable text boxes if possible. If you have a scaleable font then that will help, but you may find that the length of the string will mean that the localized text then becomes illegible.

Line breaks in subs

If you have a max text length for subtitles then you may want the game translator to introduce line breaks. Note that the line breaks in translations are usually not going to be in the same place as the English, so ensure you are flexible.

The best way is to use something like \n to denote where translators feel the line break should be. Line breaks performed at the developer should be discouraged as it regularly leads to phrasing that appears and sounds very clunky. It also sometimes breaks up phrases that shouldn’t be split.

There are also instances where your code may split a word that has a hyphen and drops that second part to the next line. This results in a hyphenated word being split across two lines which looks pretty bad (and spoils flow).

How to deal with translator questions

So game translator questions, unfortunately, a necessary evil! Believe me, sending you queries isn’t fun for them too as it adds time and effort to the game localization project, and they aren’t paid for it. They are however professionals and most want to do a great translation job (it’s also a matter of reputation).

Even with the greatest game localization preparation, there are almost always translator questions. Usually, the larger the word count - the greater the number of questions posed. That’s not a rule as such but certainly a trend we have experienced on many projects.

So how do you plan to receive, answer and return these queries during your game localization process?

You often find that what may appear to be a straight-forward text string to one person may not be to another. However, if you are having multilingual translations, the query answered may then lead other game translators to reconsider their original translation. It is, therefore, a great idea to expose these queries to all game translators working on the project.

My suggestion is again to use something like LocDirect (our game localization tool) or an online spreadsheet (Google Doc or an alternative) for your game localization queries. Then just grant access to all the relevant people working on the game’s localization project.

Time spent on defining and providing information to game translators is no waste at all. It will improve the game translation quality, improve the player’s impression of the game (and ultimately their perception of your studio) and also cut down on game translator questions and localization QA costs. Learn how to provide the right game localization instructions in the final part of our guide.