In this article:
You are about to develop your game. Your family is prepared to see little to nothing of you for a long time. Nights will be long while your budget is not. But when you finally finish your game, you'll want to take over the world, with localization. A localized version of your game can bring in more profits, and more people will be able to enjoy the result of your hard work.
No matter which languages you should decide to localize your game into—you'll want it to be authentic and enjoyable. You'll want as many gamers as possible to pick up your game, and you hope they'll never want to put it down.
So do I, and so do my fellow game translators.
Before you embark on this exciting and exhausting development journey, consider giving an extra thought to localization. That's right, think about localization before development. And during. And after. Always keep it in the back of your mind. At least if you're serious about it. Because in order to create a healthy foundation for another language version of your precious game, it pays to plan localization from the very beginning.
Why developers should think about localization before and during development
Some things might not work in some languages or cultures. Certain things might be inappropriate, offensive, or even illegal in certain cultures. Think sex, boobs, alcohol, history, geography, weaponry, and other fun stuff. Those will also affect the age rating which in turn will influence sales.
Languages which are read from right to left (like Arabic or Hebrew) might require you to flip the menu.
Puns and language-related puzzles are often untranslatable and end up not making any sense (I'm looking at you, stupid monkey wrench!).
Even though your foremost thought is to finish your game, you will consider localizing it into more languages later on. Imagine your game is a huge success in the US but you can't successfully localize it for the Chinese market—which in 2017 has generated a quarter of worldwide gaming revenue [source] in the gaming market—only because you didn't consider localization-friendly coding. Big bummer.
In order to avoid such a loss, always ask yourself this one question while you develop your game:
Will this work in [language]?
Keeping this question in the back of your mind will avoid many unpleasant localization-related surprises and make sure there are no reasons why the game's translations will suck.
11 DOS AND DON'TS DURING GAME DEVELOPMENT
I would love to give you advice on how to code your game to make it localization-friendly. But instead of trying to teach you something you know much better than I do, I will tell you what I know best: What makes a game localization-friendly so that we translators can focus on creating a beautiful piece of writing. If you are looking for guidance on how not to do it, read this article on how not to make a game localization-friendly.
#1 USE A FONT THAT SUPPORTS ALL UNICODE CHARACTERS
Why we need it: Languages need certain characters to make for a natural read.
Many a translators' hearts have been broken translating a game where necessary language-specific characters, such as ß, ü, ¿, or å, caused the game to crash. No, I cannot just write "B" instead of "ß". And no, my Spanish colleagues cannot just use a "regular exclamation point".
#2 MAKE SURE THE FONT ALSO ALLOWS NO-BREAK SPACES
Why we need it: To keep things together that aren't meant to be separated.
A no-break space (also called "unbreakable space", non-breakable space or "hard space") is a space that will not be separated from the two characters it's surrounded by. It's basically an invisible character. Hard spaces are needed to avoid splitting certain texts in different lines, such as
numbers (DE: 10 000)
names (EN: Mr. Spock)
numbers from values (DE: 5 %, 10 Gold)
or words from punctuation marks in languages whose convention is to have a space before certain kinds of punctuation (FR: Trop cool !)
Without a hard space, it could happen that the French exclamation mark moves to the next line, desperately waiting there in isolation for a hard space to lean on to.
#3 CODE SCALABLE TEXT BOXES
Why we need it: Most languages need more space than English.
If you program your game so that the translation cannot be longer than the original text, the translators will have a very hard time creating a convincing localization.
Languages like Japanese and Chinese need very little space to express content. English needs a lot of space compared to Japanese (+20–60%) but still significantly less (-10–40%) than German, Finnish, all Romance, and many other languages.
Picture a Japanese game menu. Two or three Japanese characters may form a cool character name. Now picture a possible translation. That same character name might need 8 letters and a space in English, and even 14 letters in German.
Example I:
JP: カロン
EN: Dry Bones
DE: Knochentrocken
Example II:
EN: Screen Settings
DE: Bildschirmeinstellungen
If there is not enough space, translators might have to drastically abbreviate text in the ugly likes of "Kn.tr" or "B.sch.einst.".
-->If you write your game in English, account for at least 30 % more space for all other languages.
#4 DON'T HARDCODE TEXT
Why we both need it: To more easily prepare and translate files.
We can't say it often enough. If you mix in-game text with the code, it will be difficult to extract and integrate all the text for translation. The translator will have a hard time separating code from text, and game code might be accidentally altered in the process. Not hard-coding game text is a win-win for all of us.
#5 AVOID GRAPHIC TEXT
Why you need it: It will be much easier to localize text that can be modified quickly.
You might not yet realize that certain text that you created as graphics should be localized as well. Graphic text is often used in menus, home screens, and within the game.
Picture your main character, gun in one hand, walking towards a big fence. He slowly looks up, and above the barbed wire he reads the letters "State Penitentiary".
If you would like a full localization of your game, such in-game graphic texts should be translated for proper immersion into the game universe. Examples like this are not easy to avoid. However, save yourself the trouble of using graphic text in unnecessary areas like the home screen.
#6 AVOID CONCATENATED TEXT
Why we don't need it: It can cause clumsy-looking translations.
Pulling strings together to form new sentences has their good sides: It can keep a game small and save time—and money—programming, writing, and even translating.
But concatenated texts are one of the localizer's biggest foes. Item names and characters can have different genders (German has 3), conjugations, and even completely different adjectives (think "handsome boy" vs. "pretty girl"). Some languages use cases (German has 4 and Russian even has 6).
Not only that, but we have to be able to rearrange the words in a sentence due to different sentence structures and language-specific rules. For instance, some languages might put the currency sign before the number, while others place it after.
As you see below, a lot of the text has to be grammatically adjusted to fit the variables. This is a simplified, but very common problem German game translators face when working with concatenated text, thanks to genders and cases.
If localization quality is important to you, try to avoid concatenated text.
Example: Genders
Basic English text:
Vito found a brand new [item] in [location].
EN:
Vito found a brand new sword in kindergarten.
Vito found a brand new feather in school.
Vito found a brand new apple in Gotham City.
Now look at what parts I need to adjust in German to accommodate the variables.
DE:
Vito hat ein nagelneues Schwert im Kindergarten gefunden.