The Seven Most Common Mistakes in Game Localization

Introduction

As we’ve discussed in an earlier post, mobile game developers often encounter huge roadblocks at international expansion. In this post, we’ll talk about the seven most common—and devastating—game localization mistakes that developers make. And we’ll provide some recommendations on how you may avoid those pitfalls.

Game Localization Mistake #1: Hard-coding text into the source code

To save time, some game developers hard-code their game’s text into the source code. For example,

/** Bad Example */

var language = getCurrentLanguage();
function attackEnemy(event) {
    var message = document.getElementById('message');
    
    // Name of player and enemy decided by code logic
    var player_name = '...'; 
    var enemy_name = '...';
    
    // To show a message on the screen
    if (language === 'english') {
        message.innerHTML = player_name + ' attacks ' + enemy_name + '.';
    } else if (language === 'chinese') {
        message.innerHTML = player_name + '向' + enemy_name + '作出攻擊。';
    }
    // Continues with other logic
}
// Attack Enemy by clicking a button
var attackButton = document.getElementById('attack');
attackButton.addEventListener('click', attackEnemy);

In this example, the attack message “A player attacks an enemy” is embedded into the logic of the source code. This hard-coding text is a shortcut. But, like many shortcuts, you’ll pay for it later on.

Given that all the text is embedded in the code, you have to go back in and trace it every time you want to alter or update a translation. This slows down your translation effort and make it much more expensive to proceed.

How to fix it.

Be sure to follow best string wrapping practices that fit the standards of internationalization. Also, when you’re extracting text from the source code, do so comprehensively, and make it into a resource file. (A resource file consists of key/value pair data). Save one resource file for each of your game’s languages. That way, managing all your translations will be much easier.

In regard to the example used above, a better way to wrap the strings should be like this:

/** Good Example */

var locale = getCurrentLocale();
// Some predefined translations
var translations = {
    'en': {
        'patrick': 'Patrick',
        'slime': 'Slime',
        'attack_message': '{{ player }} attacks {{ enemy }}.'
    },
    'zh-HK': {
        'patrick': '帕特里克',
        'slime': '史萊姆',
        'attack_message': '{{ player }}向{{ enemy }}作出攻擊。'
    }
};

function getTranslation(identifier, params) {
    var string = translations[locale][identifier];
    // handle parameters substitution
    // ...
    return string;
}

function attackEnemy(event) {
    var message = document.getElementById('message');
    var player_name = getTranslation('patrick');
    var enemy_name = getTranslation('slime');
    // To show a message on the screen
    message.innerHTML = getTranslation('attack_message', {
        player: player_name,
        enemy: enemy_name
    });
    // Continues with other logic
}

// Attack Enemy by clicking a button
var attackButton = document.getElementById('attack');
attackButton.addEventListener('click', attackEnemy);

Game Localization Mistake #2: Providing insufficient contextual information to translators

A lot of game developers don’t take localization seriously. They just send their translators a big spreadsheet full of text without any images or other contextual information.

Context is crucial for translation quality, and without a sufficient sense of how the words are being used in context, translators can make serious mistakes.

For example, while translating the game Modern Warfare 2 from English to Japanese, translators accidentally turned the line “Remember, no Russians” into “Kill them, they are Russians.” With more context, the Japanese translators would have understood that Russians weren’t the target in this part of the game. Instead, they mistranslated it. Japanese gamers got confused and started shooting the wrong targets. They weren’t happy.

How to fix it.

You need someone on your team who’s responsible for localization, such as a localization project manager. This person will respond to translators’ questions and prepare contextual information for the translators. (Tip: if you have a small team and can’t afford to make localization oversight a designated role, enlist your script writer for the project).

If you give your translators good contextual information, you’ll be likelier to get a great translation. This information includes:

    • A translation glossary
    • A style guide
    • Useful visuals, such as screenshots
    • Details about dialogue subtitles
    • Biographies of major characters

Game Localization Mistake #3: Hiring the wrong type of game translators

Games are a unique kind of content. And different game genres present very different kinds of translation challenges.

Research-Oriented Text

A lot of games involve slang, including specialized gaming slang (think of the word “gank,” which has a special meaning to League of Legends players). Some games involve specialized terminology—say, sports terms, for a FIFA game—that require translators to do a lot of research. We call this research-oriented text.

Creativity-Oriented Text

Other games, such as QuizUp or Candy Crush, introduce a lot of new gaming concepts, so that translators are also, at some level, content creators. We call this creativity-oriented text.

Basically, regular translators aren’t always up to the task. Pick the wrong ones, and you may be in for a long, expensive, unsatisfying game localization experience.

How to fix it.

You need translators who are native speakers and active gamers—and, preferably, familiar with your type of game.

Start by thinking about the content of your game in detail. Is more of your content research-oriented or creativity-oriented? Then examine the portfolios of game translators. What games has she helped localize before? What kinds of games does she play? Does she have experience with research? Experience with content creation?

Game Localization Mistake #4: Failing to test translations on an actual device

Some developers don’t test-drive their localized games—which can leave them with a game that has all sorts of graphics and UI problems.

The problem is that translated strings often don’t fit graphics and UI elements. After all, translation tends to change the length of a sentence. For instance, a sentence will get much longer after it’s translated into German (which tends to take up 50% more space than English text) and much shorter after it’s translated into Chinese (which uses compact characters).

Also, in the final version, some strings may be missing due to hard-coding.

How to fix it.

Test your translation on an actual device! One method is pseudo-localization testing, in which you replace the textual elements of an application. A simpler, more cost-effective method is on-device localization testing, which has the added benefit of letting you gauge the overall quality of game localization, and not just the presence of glitches.

You can also set text space as autofit with the text, which helps to prevent some of these common UI problems.

Game Localization Mistake #5: Not paying enough attention to culturization

The world is a diverse place. Gamers in different regions have different gaming preferences. Distribution and content regulations vary from country to country. And each mobile game market has its own unique ecology.

If you’re not prepared, certain features of a new market can blindside you (for example: in-app purchases are not allowed on Google Play in China). Your game content may be inappropriate for a particular market. It may need adjustment. When the original PC game Age of Empires arrived in South Korea, for example, its historical depiction of Japanese armies invading the Korean peninsula offended government regulators. In the end, Age of Empires had to create a downloadable patch that changed the depiction in a way that appeased the authorities (source).

How to fix it.

You don’t want to be caught off-guard by cultural differences. Fortunately, you have a group of game-savvy locals ready to help: your translators. Ask them in advance for their observations about your game content.

Game Localization Mistake #6: Managing translation content poorly

Game developers have a lot of different types of content: manual content, packaging or app store descriptions, marketing copy, in-game interface text, and dialogue subtitles.

Game developers sometimes do a poor job of organizing all the different formats and files. As a result, it’s easy to have mistranslations across different kinds of content, or to have duplicate translations made of the same piece of text—which slows the process down and raises costs.

How to fix it.

Make sure to centralize the management of your translations. The ideal is to use a Translation Management System, which helps you to organize and manage your translations, and to adapt them for new uses.

Game Localization Mistake #7: Treating localization as an afterthought

A lot of game developers think of localization as something that occurs late in the development cycle. It’s a kind of extra step, for them, tacked onto the end.

Really, though, it’s unwise to treat localization like an afterthought. Doing so, you miss out on great opportunities in overseas markets. You risk getting overwhelmed by local clones, with nowhere to go. And, if you do decide to localize later, it’s much more expensive when you have to rework your source code and build up translation materials from scratch.

How to fix it.

Think about localization from the start. Wrap strings at an early stage of game development, so that they’re ready for localization down the line. If you don’t do that, at least try to tweak your coding style to meet the internationalization standard.

Most of the world’s gamers are overseas. And that market is only growing. Be localization-ready, and you’ll be ready to conquer the world.

Ready? Start localizing your game today.

Wrapping up

Do you have experience with a localization mistake that we forgot? Is there anything important that you think we’ve missed? Let us know in the comments!

About OneSky

OneSky provides seamless end-to-end localization solutions for thousands of mobile apps, games, websites, and businesses worldwide. We offer professional translation services in 50+ languages and a translation management system (TMS) with API integrations and plugins to streamline your workflow. We hire and carefully screen our own translators to ensure the highest control over quality. Using OneSky’s powerful QA features, cross-functional teams collaborate efficiently to deliver faster release cycles and higher quality translations. See how you can go global at www.oneskyapp.com

Patrick Yip

Patrick Yip is the former Head of Marketing at OneSky. Heavily attracted to any brilliant growth strategy, well-crafted content and the idea of making the Internet globally accessible.

Popular post

Leave a Reply

Your email address will not be published. Required fields are marked *

Resources

Localization Resources
to get you started