Game crashes due to FMOD initialization on some PC

Hi there,
We have deployed our games a few month ago, and a few days ago a user told us he hasn’t been able to start the game (on steam) cause it crashes before starting.
I’ve made him send me the unity crash log and the last part is here:

ExecutionEngineException: SIGILL
at (wrapper managed-to-native) FMOD.System:FMOD5_System_LoadPlugin (intptr,byte,uint&,uint)
at FMOD.System.loadPlugin (System.String filename, System.UInt32& handle, UInt32 priority) [0x00000] in :0
at FMOD.System.loadPlugin (System.String filename, System.UInt32& handle) [0x00000] in :0
at FMODUnity.RuntimeManager.LoadPlugins (FMODUnity.Settings fmodSettings) [0x00000] in :0
at FMODUnity.RuntimeManager.Initialize () [0x00000] in :0
at FMODUnity.RuntimeManager.get_Instance () [0x00000] in :0
Rethrow as SystemNotInitializedException: FMOD Studio initialization failed
at FMODUnity.RuntimeManager.get_Instance () [0x00000] in :0
at FMODUnity.RuntimeManager.SetListenerLocation (Int32 listenerIndex, UnityEngine.GameObject gameObject, UnityEngine.Rigidbody2D rigidBody2D) [0x00000] in :0
at FMODUnity.StudioListener.SetListenerLocation () [0x00000] in :0
at FMODUnity.StudioListener.OnEnable () [0x00000] in :0

(Filename: Line: -1)

Crash!!!

It seems a problem related to FMOD initialization, but I can’t reproduce the crash on any of our computers. I’ve tried to google it and it seems an error that appear due to driver or hardware issues.
Do you have any suggestion?
Thanks in advance!
Simone

Hi Simone

Thanks for reporting this.

We have not been able to reproduce the issue either but SIGILL is an illegal instruction exception and I think the most likely cause is that the Mono JIT compiler has generated the illegal instruction.

The fact that you have only one user reporting this issue, and that we can’t reproduce it, suggests there is something specific about the user’s environment or configuration which is triggering the problem. I would suggest the user tries completely uninstalling and reinstalling your game, if a bad instruction was generated due to freak circumstances it might reset things and allow the game to work on the user’s system. The other thing that comes to mind is to check if there is a newer version of the Mono runtime available in a recent version of Unity and see if that would work correctly for the user.

Unfortunately I can’t think of much else to suggest in this case, if the issue isn’t resolved I would raise it with Unity or Mono.

Please let us know if there is anything more we could do to assist - certainly if you are able to get a reproduction of the issue or additional logging we will look further into it for you.

Cheers
Derek

Hi Derek,

Thank you for your answer.
Unfortunatly we can’t update mono. We are stuck with Unity 5.6 due to performance issues related to VR and PS4 with the newer version of Unity. I’ll try suggesting to reinstall the game and I’ll let you know if something comes up.

Thanks for the support,
Simone

Hi there,
Another player had the same issue. He tried reinstalling the game ad updating the drivers but still gets the same error.
He sent us his computer configuration:

Processor: Intel(R) Core™ i5 CPU 750 @ 2.67GHz 3.81 GHz
RAM: 16GB
OS: Windows 10
Graphics Card: GeForce GTX 1060 6GB
Motherboard: Asus P7P55D LE
BIOS: American Megatrends Inc. 1408, 25/03/2010

I think the sound is onboard.
I can see a couple of audio driver:
NVIDIA High Definition audo: c:\windows\system32\drivers\nvhda64v.sys (1.3.38.4, 222.55 KB (227,896 bytes), 09/11/2017 04:38)
VIA HD audio: c:\windows\system32\drivers\viahduaa.sys (6.0.11.800, 684.70 KB (701,136 bytes), 22/06/2015 02:49)

Can you investigate more on this problem with these new informations?

As far as we can see, it looks like the code-gen messed for loadPlugin in our C# wrapper.

What plugin is it trying to load when this occurs?
You could also add some logging to the wrapper to try to capture more information if/when it crashes.

Hi there,
I’ve been able to detect which plugin we load, and we load only the oculus spatializer, so it must be it!
This is the log of the filename on my pc:
C:/UnityProjects/Blind/Assets/Plugins/X86_64/OculusSpatializerFMOD.dll

Thanks
Simone

What are the versions of the FMOD Integration and the Oculus plugin you are using?

Sorry for the late response (we had some problems with the whole project that delayed my investigation), I’ve been able to find out the versions:
FMOD: 1.10.06
Oculus plugin: 1.25.0

Thanks for your support,
Simone

It looks like the Oculus Spatializer is up to 1.38.0 now, are you able to update that and/or FMOD to see if that helps?