![]() ![]() ![]() It then uses the text IDs from the script source files to include which line of text to insert in the output file. The tool that created this custom script file lets you pick whether you want to use the English or the Japanese text in the generated file. Trying to do so would make references to internal data structures invalid and cause the game to crash. It was because of this that the file couldn't be reloaded while in-game. This file contained the text spoken by the characters as well as game specific commands such as giving the party a key item or starting a new quest. One case in which this split file approach didn't work was with the custom script file used for dialog. So in the end we went with the first solution. We found that this was the less ideal solution, as JRPGs like SoSCR have a lot of different kinds of type data the amount of code that needed to be adapted was simply too great a risk. This option will end up costing less hard drive space as there's only one file, but does require tooling that generates the file to change and the code that loads it. This wasn’t the only solution to the problem however, there was also the option of interleaving both languages in the same file. So for example, before we had a single “dialog.dat” file and afterwards we would have two files named “dialog_en.dat” and “dialog_jp.dat”. The tutorial text of both games is contained in a separate file.įor SoSCR, an English and Japanese version of these texts already existed and the solution for making the game support both languages at the same time was to create the compiled assets for both languages and loading the correct file based on the language setting. We had to take all these different sources of text data into account when working on the localization systems for porting the games. These Excel spreadsheets were then used as the input for a series of custom tools, outputting different files such as C++ headers, plain text files or custom binary formats. The source of these different types of text were Excel spreadsheets. Text that is shown in an in-game manual.Text that is associated with objects, usually referred to as "type data" (items, spells, quests, etc.).Just be sure to also check the binary files!įor this project the text was split into: This will help you in discovering all files containing text in the project. A best practice is to search through all files with a text editor or custom script to check for common words and phrases. So if you ever find yourself working on porting a game, never assume that you've found all the text once you've stumbled across the largest file containing text data. The separation being determined by content creation tools that determine which feature or screen ends up showing the text in game. In both games the text that's displayed to the player was spread out over multiple different files and file types. Note that the latin characters remain the same as the two encodings overlap for those characters. Misinterpreted text shows up as seemingly random characters. ![]() Luckily for us, SoSCR and SoSW didn't have any. If the source code contains hardcoded strings then those will be converted as well, which will cause havok when these strings are then passed to systems that are still expecting the Shift-JIS encoding. Our solution to this was to create a script that converts the source code to UTF-8. This can lead to syntax errors when the compiler interprets the source code as another encoding and encounters unexpected characters. Something that applies to most Japanese games, is that text and source code tends to be encoded using the Shift-JIS encoding rather than the UTF-8 encoding that's much more commonly used in software. This was something that had to be implemented for a global release.Īs for SoSW, the original game had only seen a Japanese release under the name 蒼き翼のシュバリエ (Aoki Tsubasa no Chevalier), there was no English text or release whatsoever. Well the Japanese release and English release of this game were two entirely separate SKU’s, featuring only the Japanese or English text and no option in-game to switch between the two languages. The original PSP Vita release of SoSCR already was an English localized release, so you might be wondering what the difficulty was with creating the English localized versions for the new platforms? It does not cover the actual translation of text found in both games, which was handled by NIS America. This article outlines the technical localization challenges that were found in the two games and how we approached solving them. ![]() Late in 2019 NIS America approached us (Codeglue) to discuss porting these two games to the Nintendo Switch and PC. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |