Audio related Freelancer stutter NPC ship spawn
-
For anyone who’s interested on playing on Linux (likely nobody ), I’ve created a Lutris installer for Freelancer here: https://lutris.net/games/freelancer/
It works surprisingly well under WINE but there’s one bug I can’t seem to fix. It’s the same issue as described here which seems to get magnified under WINE. When NPC ships spawn a stutter occurs:
https://the-starport.net/freelancer/forum/viewtopic.php?topic_id=6083
If I try it on Windows on the same machine it’s fine, no stutter. Has anyone been able to work out how to fix this?
I’ve done some experiments and worked out that it’s audio related.
-
It’s not a disk I/O issue, I’m running the game from an NVME drive
-
Disabling audio entirely fixes the problem
-
Commenting out engine_sounds.ini in Freelancer.ini (so not to load the engine sounds) fixes the problem. It’s definitely audio related and definitely related to engine sound audio
-
Using the same wav file for all engine sounds makes no difference
-
Making all engine sounds range = 1, 2 has no effect. I thought this might mostly disable them. My thought was to let the ships appear on screen and not have the engine sounds load until they get close with a view to tweaking the distances it if worked. It didn’t.
-
Setting attenuation=0 for all engine sounds to reduce processing
-
Removing pitch_bendable for all engine sounds
-
Removing is_2d for all engine sounds
-
In-game 3d sound enabled/disabled makes no difference
-
Playing with the sound options in dacom.ini has no effect (e.g. massively increasing sound channels or decreasing it to 1, setting all falses to true and visa versa). No noticeable change audible in game. I’m not convinced these options are even used in the game
Anyone got any other suggestions of how to fix it? It’s annoying because playing with engine sounds commented out in freelancer.ini works perfectly but it does somewhat ruin the atmosphere.
-
-
Can you try installing WMFDIST.exe from the FL cd? I get a lot exceptions with audio codecs when I debug FL for reversing stuff and apparently this is supposed to fix it. You might need winetricks, though.
-
Thanks for the suggestion, the installer WMFDIST from the CD looks like it works fine, but did display some errors on some files.
I manually installed by
wine WMFDIST.EXE /T:C:/temp/ /C
Then copied the files from c:\temp to c:\windows\system32
Unfortunately, it didn’t fix the stutter
-
You probably have to override the dlls in winecfg so that wine does not use its native implementation, but the dlls instead.
-
I thought that was only required if the DLLs are also provided by wine. Regardless, I tried adding each DLL to the override list and it didn’t help unfortunately. I did the same for WMPCDCS8.EXE just in case that contained some required DLLs, it didn’t help either.
-
You can try finding msacm32.dll via winetricks. It is not included in the WMFDIST package, but you’ll need both. I am getting a lot of “Exception thrown at 0x3FEE4811 (msacm32.dll) in Freelancer.exe: 0xC0000005: Access violation reading location 0x00000000” errors when debugging and it is sound related. This is the only lead I can give you for now. Maybe under Wine it behaves differently, but exceptions sure can cause stuttering.
-
Wow thank you! A quick test and that seems to have worked!
winetricks msacm32 does the job! Thanks! I’ve been trying to fix this for a while and that seems to have solved it! Will report back after a longer test.
-
I can confirm that this completely fixes it. In fact, trying a fresh install in a new wineprefix, the only thing that’s needed is msacm32 and the stutter is gone. On my new install even without WMFDIST everything works perfectly.
-
Glad I could help. Interesting that you don’t need the codec files, since here in Win7 I get those exceptions. Hadn’t had the time to test whether the installer really fixes it, though. Just read it in some forums. But I will have to fix it for debugging next time FL crashes because of me
-
TheJkWhoSaysNi wrote:
I can confirm that this completely fixes it. In fact, trying a fresh install in a new wineprefix, the only thing that’s needed is msacm32 and the stutter is gone. On my new install even without WMFDIST everything works perfectly.I can confrim it too. I used to deal with that little annoying problem before and it fixed the stutters.
Thank you Schmackbolzen !