Bank Load Exception ".strings.bank"

To preface this, the studio I’m working with are using Visual Studio and the file pdb2mdb.exe to convert the code to dll’s or to mono debug files (?). I’m not sure on the exact methods but I do know that this VS solution gets built before the plugins folder and, therefore, the scripts can’t use FMOD as they’re being built in a different order than desirable.

To solve this, the director and myself have moved the FMOD scripts to the solution and, after many errors, have got it to mostly work but we’ve come across an error that I think is an FMOD bug, rather than a bug caused by putting the scripts somewhere it wasn’t really designed for.

We get a ‘BankLoadException: FMOD Studio could not load the bank ‘restOfPath/StreamingAssets/.strings.bank’ : ERR_FILE_NOTFOUND’.

I’ve been looking through the FMOD code for some kind of const string that holds the name for the Master Bank and Master Bank.strings but I’ve only found the code finding the directory to the banks.

Although I don’t fully understand the cause of this error, could it be that the banks it’s looking for/string is wrong and is hard coded somewhere and can then, therefore be changed to Master Bank.strings, which I do have in Streaming Assests (I should say now that the banks have all built correctly and are where they should be).

My thought right now is that it’s just looking for the wrong bank. The custom editor scripts already don’t edit the main runtime scripts so I feel there’s some links to code broken, or maybe references to different things.

But honestly, I’m not sure so all help is welcome.

Thank you in advance,
James

Usually this indicates that banks need to be rebuilt or reimported into the project, there are a couple steps you can take.

  • Rebuild the banks in FMOD Studio.
  • Re-assign the project/folder in the FMOD Settings.
  • Delete the banks in the streaming assets folder.
  • You should see a message in the Unity console when the banks are copied into streaming assets.
  • If none of that helps, re-importing the plugin could fix any file issues.
1 Like

Thank you for your answer! I managed to fix this by adding = “Master Bank” to the MasterBank variable (can’t remember what script that’s in). However, now I’ve got an error for a missing plugin but the name is correct in the settings and the dll’s are still in the correct folder.

Also, I believe turning code into dll’s is called creating a Managed Plugin for Unity. Has the FMOD team came across this before? Is there a certain way this should be done? Because there’s been so many errors from this it’s ridiculous.

The MasterBank variable is cleared and reset when the bank files/cache is updated but, if you try to play in editor before that, you can get this error.

As for the missing plugin, make sure the folder and plugin name in the error message match up to your plugin.