Unreal crashing after submitting /Content/FMOD to Perforce

Hi there,

We are using perforce for our source control. Every time we submit the folder to perforce anyone without the original generated data gets a crash. I saw a topic that was similar to this and integrated the new FMOD4.26 that was on GitHub but we are still getting the same issue.

This is the crash log:

Error saving ‘…/Game/v0.1.1/Content/FMOD/PrivateIntegrationData/BankLookup.uasset’

UE4Editor_FMODStudioEditor!FFMODAssetBuilder::BuildBankLookup() [E:\jk\workspace\2.1_UE4.26_Win64\integrations\UE4\temp\FMODStudio\HostProject\Plugins\FMODStudio\Source\FMODStudioEditor\Private\FMODAssetBuilder.cpp:253]
UE4Editor_FMODStudioEditor!FFMODAssetBuilder::ProcessBanks() [E:\jk\workspace\2.1_UE4.26_Win64\integrations\UE4\temp\FMODStudio\HostProject\Plugins\FMODStudio\Source\FMODStudioEditor\Private\FMODAssetBuilder.cpp:41]
UE4Editor_FMODStudioEditor!FFMODStudioEditorModule::OnPostEngineInit() [E:\jk\workspace\2.1_UE4.26_Win64\integrations\UE4\temp\FMODStudio\HostProject\Plugins\FMODStudio\Source\FMODStudioEditor\Private\FMODStudioEditorModule.cpp:364]
UE4Editor_FMODStudioEditor!TBaseRawMethodDelegateInstance<0,FFMODStudioEditorModule,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [C:\Data\UE4\Unreal Engine\4.26\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:469]

Thanks for reporting this.

I’ve been trying to reproduce this behavior without success and I’m not certain I understand your workflow. Are you able to provide some more detail about this? It would be ideal if you could describe the workflow from the perspective of two users - the user generating the data and checking it into perforce, and the user who encounters the crash after getting latest.

Thanks for replying. So I will build the banks into the /content/FMOD folder in the project and then go into unreal to do implementation. I will submit the changes and my team members will get the latest version. The project will then crash for anyone that doesn’t checkout the /content/FMOD folder. I think it has something to do with the . uassets.

Are you checking the uasset files in Content/FMOD into perforce along with the built banks? We do recommend that you do that but the issues with source control integration in our 2.01.08 plugin mean that the uasset files in Content/FMOD must be checked out when the UE4 editor loads the FMOD banks (FMOD banks are loaded when loading the project and automatically reloaded if the bank files change on disk).

It does sound like that’s the issue you’re hitting here?

We’ve addressed those issues with source control integration, if you’re able to update to the FMOD for UE4 plugin source code from GitHub you could test now if that fixes the problem, if you’re not able to use the source from GitHub then it will be included in our next release which should be available on our website soon.

In case you have to wait for our release to fix this there are a few ways I can think of to workaround the issue (none of which are very pleasing, unfortunately):

  1. Configure users’ Perforce workspace views to exclude the uasset files in Content/FMOD. This seems like the most elegant temporary solution but I don’t believe it is possible if you’re using Perforce Streams. In that case you might want to look into Virtual Streams, from Perforce’s description they sound like they could be useful.
  2. Do not add the uasset files in Content/FMOD to Perforce. This won’t work if you are using a build system which cooks assets from the command line but otherwise it’s not too bad.
  3. Users have to either check out the uasset files under Content/FMOD, or otherwise make them writable on disk, before opening the project in UE4.