Making Installed Builds causing FMOD errors

Hi everyone,

I’m trying to make an installed build of the 4.26.1 release with FMOD 2.01.08.

Problem, I can’t because there are these 2 errors :

  • LogFMOD: Error: Failed to load bank lookup
  • LogFMOD: Error: Failed to load asset lookup

Does anyone succeed to make an installed build of 4.26.1 with Fmod 2.01.08 ?

EDIT : The command I used

UnrealEngine\Engine\Binaries\DotNET\AutomationTool.exe buildgraph -target=“Make Installed Build Win64” -script=“Engine/Build/InstalledEngineBuild.xml” -Set:WithWin64=true -Set:WithWin32=false -Set:WithMac=false -Set:WithAndroid=false -Set:WithIOS=false -Set:WithTVOS=false -Set:WithLinux=false -Set:WithLinuxAArch64=false -Set:WithLumin=false -Set:WithLuminMac=false -Set:WithPS4=true -Set:WithXboxOne=true -Set:WithHololens=false -clean

And I do have all the corrects consoles SDKs installed.

Best regards,

Alexandre

Hi Alexandre

We use installed builds internally using a similar build command and we haven’t encountered this type of issue at all.

I’m very surprised that you would get log messages on the LogFMOD channel while trying to produce an installed build, when we make our installed builds it’s just using Epic’s source code so for us there’s no chance of any FMOD specific issues there. Are you adding the FMOD integration to the engine before attempting to build the installed build?

Hi Derek,

I’ve made the installed build with the plugin already copied insind Engine/Plugins.

Furthermore because it was making this error during the building of the DDC and its templates (FirstPerson, ThirdPerson…etc), I tried to make an installed build without DDC… And it worked, the build was successfull and I could package some templates.

Ah okay so it’s actually the DDC build which is failing, I think I can understand why you would get those errors in that context. It would be ideal if it were possible to build an installed build with our plugin but I’m not immediately sure how to fix the problem you encountered, so I’ll add an issue to our tracker so we can review this and figure it out for a future release.

In the meantime your workaround of not building the DDC is okay, I believe an alternative workaround would be adding the integration as an engine plugin after creating the installed build.

Hi Derek,

If I do that (adding FMOD after the generation of the installed build), whatever version I’m using (with or without DDC) I have el famoso :

fmod

So to make an installed build with FMOD you have to :

  1. Add the plugin inside Engine/Plugins
  2. Make an installed build WITHOUT DDC

I will try this out this afternoon

Best regards,

Alexandre

Thanks for the extra information - I’ll add it to the issue in our tracker.

This is happening to us too on 4.26 - is there a solution available? (other than disabling DDC)

Thanks,
Paul

This is something we are currently looking into.

Hi Cameron,

Think we’ve found it. At least we know what is happening and have a [not great] workaround.

When making a build from command line using Unreal 4.26’s Build Graph, the Unreal-specific contents of Content/FMOD (all the .uassets) are not generated. We do not keep these in source control.

When building from Editor this is not possible as when you start the Editor and load the project the Unreal-generated stuff in Content/FMOD is created if missing - so it cannot be missing when the editor-made build is done.

Our work-around is to check the Unreal-Editor-generated .uassets in Contents/FMOD into Perforce, which is a bit of a management headache if bank layouts change, but at least we can make builds from command line.

We suspect [but it’s a bit of a guess] that the code in question that is preventing these files being made in command line builds is if (!IsRunningCommandlet()) here:

void FFMODStudioEditorModule::ProcessBanks()
{
if (!IsRunningCommandlet())
{
BankUpdateNotifier.EnableUpdate(false);
AssetBuilder.ProcessBanks();
ReloadBanks();

    const UFMODSettings &Settings = *GetDefault<UFMODSettings>();
    BankUpdateNotifier.SetFilePath(Settings.GetFullBankPath());

    BankUpdateNotifier.EnableUpdate(true);

    IFMODStudioModule::Get().RefreshSettings();
}

}

Cheers,
Paul

Thanks for the info, I will add this to the case.