Fixed: Regression Error: Not all events play in cooked game

Hi there,

a few years ago I had a problem with FMOD initializing audio banks too late, thus randomly ignoring some sound events in the cooked build. Inside UE4 editor, everything works correctly, but upon packaging the game I am experiencing this issue.

Back then I managed to fix it with .uplugin definition like this:

"Modules": [
	{
		"Name": "FMODStudio",
		"Type": "CookedOnly",
		"LoadingPhase": "PreEarlyLoadingScreen"
	},

Last year I was forced to port my game to 4.27.2 and once again I have the same annoying issue. Sadly the fix no longer works as it crashes the engine, and the earliest possible phase is PreLoadingScreen, which is too late and some events no longer play.

Is there anything I can do to ensure that all events work correctly?

Many thanks,
Jan

Also this is the log if I use PreEarlyLoadingScreen:

Assertion failed: Object->IsValidLowLevelFast() [File:D:/Build/++UE4/Sync/Engine/Source/Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp] [Line: 3743]

TheForest!FDebug::AssertFailed()
TheForest!FDebug::CheckVerifyFailedImpl()
TheForest!FAsyncPackage::Event_StartPostload()
TheForest!<lambda_7cb63577489adea33633ac3fab30b69a>::operator()()
TheForest!FAsyncLoadingThread::ProcessAsyncLoading()
TheForest!FAsyncLoadingThread::TickAsyncThread()
TheForest!FAsyncLoadingThread::TickAsyncLoading()
TheForest!FAsyncLoadingThread::FlushLoading()
TheForest!FlushAsyncLoading()
TheForest!LoadPackageInternal()
TheForest!LoadPackage()
TheForest!ResolveName()
TheForest!StaticLoadObjectInternal()
TheForest!StaticLoadObject()
TheForest!UMaterialInterface::InitDefaultMaterials()
TheForest!UClass::CreateDefaultObject()
TheForest!UMaterialInterface::PostCDOContruct()
TheForest!UClass::CreateDefaultObject()
TheForest!FEDLBootNotificationManager::ConstructWaitingBootObjects()
TheForest!FAsyncLoadingThread::TickAsyncLoading()
TheForest!FAsyncLoadingThread::FlushLoading()
TheForest!FlushAsyncLoading()
TheForest!LoadPackageInternal()
TheForest!LoadPackage()
TheForest!UPackage::FullyLoad()
TheForest!FFMODAssetTable::Load() [D:\Devel\Syr_BI\SYR\Plugins\FMODStudio\Source\FMODStudio\Private\FMODAssetTable.cpp:51]
TheForest!FFMODStudioModule::RefreshSettings() [D:\Devel\Syr_BI\SYR\Plugins\FMODStudio\Source\FMODStudio\Private\FMODStudioModule.cpp:1077]
TheForest!FFMODStudioModule::StartupModule() [D:\Devel\Syr_BI\SYR\Plugins\FMODStudio\Source\FMODStudio\Private\FMODStudioModule.cpp:517]
TheForest!FModuleManager::LoadModuleWithFailureReason()
TheForest!FModuleDescriptor::LoadModulesForPhase()
TheForest!FPluginManager::TryLoadModulesForPlugin()
TheForest!FPluginManager::LoadModulesForEnabledPlugins()
TheForest!FEngineLoop::PreInitPostStartupScreen()
TheForest!GuardedMain()
TheForest!GuardedMainWrapper()
TheForest!LaunchWindowsStartup()
TheForest!WinMain()
TheForest!__scrt_common_main_seh() [d:\a01_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll

I managed to fix the issue. It was the same symptoms, a different cause, so no need to use PreEarlyLoadingScreen at all.

Hey JanKavan! I’m glad you got your issue fixed back then. Do you remember what it was that fixed it the second time? I’m having an issue where a lot of event aren’t playing in a cooked build but the editor works perfectly.

Hi khorwynd,

I see you’ve posted more recently about this issue here: Unreal builds for Steam don't play most FMOD events

Did Mathew’s suggestion resolve the problem? If not, can I get the version numbers of your UE install and FMOD UE integration?

Hey Louis!

Just to clear this up, the solution to the problem was both increasing the channel count in Unreal AND I had to do some bank management stuff within perforce.

1 Like