Parameter to swap between programmer instruments

Hi,
The team have requested a parameter to change between male and female voicelines, rather than having male and female string table entries in the same programmer instrument.

Is the correct way to do this make a seperate folder, so both male and female voicelines can have the same filename.wav, then just swap programmer instruments on a parameter sheet?

sorry any chance i could get an answer to this fam <3

Hi,

Yes, your way of approaching this specific event behavior is what we’d recommend without using a string table.

1 Like

I’m having some difficulty… some help would be really appreciated

I’ve created a “Male dialogue” bank and added the audio table, set it to the right folder, and done the same with the “female dialogue” bank. ENG_m, and ENG_f

But nothing is showing up in the programmer instruments

and i know im doing something wrong, because it’s trying to create locales inside the locales ive already setup, when I build →

Ok, I’ve managed to get the female voicelines loaded into the programmer instrument, by bringing the directories back one folder, so instead of Localization/Dialogue/ENG_f, i moved the folder to Localization/ENG_f but I can’t get the male to work.

Which is /Localization/ENG_m, and I’m loading into the other program instrument the same way but its not registering.

When I try to build the ENG_M bank, (seen in the screenshot) It’s giving me an error that it cant find the ENG_f locale in the ENG_m directory.

Im so confused

Thank you for sharing the information and screenshots.

I think these issues are stemming from the fact that you aren’t implementing all of the locales in each localized audio table. When you create a locale, the banks expect every locale to have a corresponding folder in their target directory. I expect this is the reason for your warnings. This information doesn’t appear to be in our documentation, I have created a task to clarify this point.

I suspect nothing was showing up because you hadn’t created a keys.txt file, is that how you solved that issue?

This is probably because you do not have a corresponding directory for each locale inside the table’s directory. For example, the warning is expecting you to create 2 folders named ENG_f and ENG_m within the target directory.

Again I’m assuming this is because you have not implemented the “Eng_f” locale for the table in your “Dialoge Male” bank. Would it be possible to share screenshots of how you set up your folder structures so we can better pinpoint the issue?

I think the solution to these issues is not to create locales for the “male” and “female” dialogue variants, and instead rely on specific banks as you are already doing.

You could set up two separate events with a programmer instrument referring to male and female, and let the programmer decide when to play a suitable event:

  1. Create one event for playing dialogue from your male bank, and another for playing sounds from your female bank
  2. Assign the male event to the male bank, and the female bank to the female bank
  3. Create an audio table in your male bank, and set the path to your male dialogue directory
  4. Create an audio table in your female bank, and set the path to your female dialogue directory

Now when you want to play the male dialogue, you just have to play the male dialogue event, and the female dialogue event for the female sounds.

If you want this to be done using a single event and a parameter, you could assign your newly created dialogue events to different tracks, and use volume automation to control which voice can be heard based on the current Gender index.

Hope it helps, let me know if you have any questions.

Hi Li,
Thanks so much for the help…

I’m re-reading through all your info now. I’m still trying to wrap my head around it.

Blockquote
I think these issues are stemming from the fact that you aren’t implementing all of the locales in each localized audio table. When you create a locale, the banks expect every locale to have a corresponding folder in their target directory. I expect this is the reason for your warnings. This information doesn’t appear to be in our documentation, I have created a task to clarify this point.
Blockquote

Sorry, this is confusing. So… every locale needs to have a corresponding folder in their target directory… so what should my locales look like in my “assets” preferences tab? Female works fine this way… just the male is an issue…

Blockquote
I suspect nothing was showing up because you hadn’t created a keys.txt file, is that how you solved that issue?
Blockquote

I didn’t create a text file… But you might be right, because the female voice was setup a while ago, and I likely already put a text file there ages ago. And maybe thats why it’s working

I didn’t create a text file for the male… that might be the or one of the issues.
I can’t find the text file for the female either. Sorry, where do I find that, and where do I put the male text file?

Blockquote
Would it be possible to share screenshots of how you set up your folder structures so we can better pinpoint the issue?
Blockquote

Here are screenshots of my folder structure. Any further assistance would be really appreciated


If male and female are in separate banks, which bank should the event with them both referenced be in? It’s own, dialogue bank?

Thanks so much

For locales in your preference setting, you could create one for each language that your game aiming to support, for example:

The text files need to be put in the same directory where you put all your audio files, for example:

And the folder structures must be like:

You could create a single event with a programmer instrument and assign the event to the master bank, which is easier to manage when you have multiple languages that you want to support.

image

When you build a bank which contains a localized audio table, FMOD Studio automatically produces one version of the built bank for each locale. Each of these banks contains the audio files for the locale it represents, and has the code for that locale as an underscore-separated suffix to its file name.

Whenever you are going to switch to another gender’s voice, you could just unload current bank reference and load target bank reference corresponding to the gender selection. For example:

LocalizationAudio.txt (4.6 KB)

Let me know if the issue persists.

1 Like

Wow, this detailed response is so appreciated. Truly amazing <3 <3

While I work through this, I have one last question if you don’t mind, and I do apologize.

The “female” folder also has all of the other game dialogue(NPC stuff) in it. I figured this to be the only way to do it, without having copies of the NPC .wavs in both folders which would definitely not be optimal.

Do you have any ideas on this? I guess… would I be right in thinking the most logical solution would be to have a third notch in the parameter? like… Male, Female, NPC? For clarity’s sake alone…?

Yes, based on your current setup, incorporating a third category in the gender parameter to exclusively handle NPC dialogues sounds reasonable.