As games developers spend more time creating apps for mobile phones, tablets and the proliferating number of other devices connected to the internet, localizers sometimes struggle to train less experienced colleagues on internationalization requirements. Here are five guidelines for localization teams to share with mobile games developers, be they internal groups or third-party studios. Following these guidelines will lead to smoother collaboration for producing mobile games that are world-ready.
Resist the temptation to create
your own widgets for internationalization
Mobile games platforms provide language- and locale-sensitive application programming interfaces for parsing, searching and sorting properly in local languages. Use locale settings to present numerical and time information properly, including calendars, by language and country (see Figure 1). There are also ways to handle different formats for currencies, personal names, phone numbers, mailing addresses and punctuation (see Figure 2).
Test during development to enable
simultaneous language releases
Reserve time early in your development schedule to test robustness for internationalization with globalization compliance checkers or pseudo-localization techniques that generate strings with the characteristics of the target language. These environments generate pseudo-Chinese or -Arabic that previews how your code will handle issues such as string corruption, text expansion, and language direction. Resolving these problems during initial app development reduces the amount of time required for localization, and also reduces requests for bug fixes or workarounds. All of this leads to reduced localization testing, which means that you can release your app to all markets at the same time.
Avoid truncation and
resizing problems
Make life easier for localization managers, quality assurance staff and translators — not to mention yourself — by taking advantage of platform capabilities that reposition and resize text appropriately, regardless of the user’s language or locale preferences. Remove fixed-width constraints so text fields and labels can accept more characters to display properly. Avoid setting minimum or maximum sizes for windows so that content can automatically adjust itself, depending on local language requirements. By doing so, you avoid inadvertently cutting off menu items (see Figure 3) and creating screens that appear as the wrong size.
Use variables wisely
Implementing placeholder text to save time and space is one of the first things that every developer learns, whether in school or on the job. For example: “I met with {a woman | women | a man | men | people},” where the code calls on the variable required, according to context. The problem is that languages have different grammatical rules, so the way in which a translator renders this sentence will depend on the target language. For this specific case, some languages must take gender into account, while others change the verb. Your challenge as a developer is to balance the work of creating a separate string for every possibility versus the compromise of accepting a few grammatical errors. Consult your localization team for guidance.
Pay attention to fonts
in Asian languages.
As long as you adhere to the internationalization guidelines provided by the platform you’re coding for, Chinese, Japanese, Korean and other Asian language versions should perform as designed, even when text is required to render vertically instead of horizontally. However, fonts can cause problems. Characters that appear beautifully on the desktop or tablet in European languages may not be available for mobile devices in some Asian languages, or they may require tweaking or substitution for readability. When localization managers or producers request workarounds for this issue, inform them politely that it’s a design issue for them to resolve.
One of the best ways to avoid internationalization-related bugs and rework on your part is to accept input and questions from localizers. There are many ways to accomplish this: a) host a webinar early in the development process to present UI designs and the newest, coolest features to translators, localization service providers, and your own internal localization and testing staff; b) set up a query system for translators and reviewers; or c) participate in a weekly call with the localization team.
By integrating localization guidelines provided by mobile development platforms and collaborating closely with the people responsible for localizing what you create, you will be well on your way to achieving success in local markets.