Fungus Game Localization: The Hunter

This portfolio is a sectional explanation of a Fungus Game internationalization process based on a group project deliverable during my time in Middlebury Institute of International Studies at Monterey, thanks to my teammates, we were able to internationalize “The Hunter” game in four different languages: English, Chinese, Spanish and Russian. For this post, I will mainly talk about the voiceover internationalization part of the process in Fungus, details in regards to other parts of the process please refer to posts:

Fungus Game Project Management

Fungus Game Flowchart Localization

By the end of the previous step, we have managed to localize translatable contents in this game by inserting SET LANGUAGE COMMANDS into the Fungus Flowchart: Demo

It’s almost comical to hear the beep beep…sound throughout the game as the characters talk with each other, we could imagine this might be a simple way for developers to avoid extra hassles when it comes to audio internationalization. Now suppose the original game uses English voiceover to cover the character dialogues, how would the internationalization realize? What part should be paid special attention to then? I will use this post to elaborate.

  • Change the layout of the flowchart.

The last flowchart we arrived at was this:

and we were able to extract our translations from the localization csv file through activating the language code in each language setting blocks:

Yet, it’s important to understand this language code only recognizes written translations from the csv file, it does not help to automatically switch the audio to another language by a simple activation, the reason is simple:

the voiceover clip assigned to each character’s sentence is always unique, therefore when the audio is changed to another language, this clip should also be changed which means each block that contains a dialogue will need to be duplicated into 3 other languages and rearrange their logic based on their previous language code specified block content:

  •  Once the flowchart is updated, give it a test. You’ll find the result is not so much as desired:

The first thing you’ll notice is that when you switch to a non-English language, the dialogue translation goes missing, everything goes to square one, oh my god , what are we gonna do?!

Panic not, notice the character name is still successfully localized? That means the set language menu commands did work, but somehow Fungus loses the connection of its translated csv file, how come the csv file was perfectly recognized before but not now, we never changed anything in that file! Another hint that might give us some clue is to test the English language, remember we changed character names in the csv_en? The character name “Ciara” was changed to “Kimi” from standard to EN in the csv. If you pick English to play the game, you’ll see a scene like this:

The name is still Ciara which means Fungus is pulling the “standard” strings for all languages including English whose block logics in the flowchart have not been changed. This should give you the hint that the logic behind the flowchart is not the problematic part, the problem lies in the csv file. Since Fungus fails to recognize the relations between the Keys and their corresponding activation codes, some sort of “mismatch” must have occurred. Now let’s open our csv file:

Nothing seems strange in the first glance, so it’s time to ask yourself what went wrong?  What have you changed since the last time it was still working? Remember?

You added more blocks!

You may not understand why they are called “Flowchart5” or “Flowchart8” in the key column, but since these are the key parts that Fungus uses to recognize and link with their corresponding activation codes, when the number of blocks is increased, these numbers should also go up, right? And we never updated the csv file…

So let’s re-export our localization.csv file again(You might run the risk of losing your previous translated csv contents, so make sure keep a backup file!):

And what do we find?

 

Total number of the rows have changed from 39 to 176, the number quadruples because we copied almost every single block into 4!

Now let’s give it another test run:

  • Now that we’ve fixed the mistake, it’s time to upload our voiceover audio.

For this example, I only uploaded some temporary wav audio files our team has recorded for only English and Chinese(since we only speak these two), normally we would use Adobe Audition to monitor the voiceover recording process, for this example, I am putting more focus on the implementation of realizing audio internationalization, so I am temporarily tolerating the not so noise-free version of audios. 🙂

After dragging your audios into the asset folder, select audio files that you intend for each block’s character dialogue and you’ll see the amazing result!

Voiceover_Demo_EN

Voiceover_Demo_ZH