Alpha Centauri 2

Sid Meier's Alpha Centauri & Alien Crossfire => The Theory of Everything => Topic started by: MercantileInterest on February 26, 2020, 10:02:19 pm

Title: Attempt to Play Sound File Crashes Game
Post by: MercantileInterest on February 26, 2020, 10:02:19 pm
Using the GOG version. Every time the game plays a sound, it crashes. Removing the sound files makes everything run. Anyone know how to fix this?
Title: Re: Attempt to Play Sound File Crashes Game
Post by: Fibonacci on February 26, 2020, 10:41:32 pm
In your "Alpha Centauri.ini", is "ForceOldVoxelAlgorithm=0" under [PREFERENCES]? I vaguely remember that selecting which code the game uses to renders audio.

Aside from that, right clicking the shortcut and running the game in compatibility mode for an older version of Windows may help.

I'm fuzzy on other methods under windows because I've been running via WINE under Linux for the last 7 or so years.

Works nicely once I discovered that the resolution both horizontal and vertical need to be divisible by 8.
Title: Re: Attempt to Play Sound File Crashes Game
Post by: MercantileInterest on February 26, 2020, 11:04:22 pm
That fixed it! Thanks!
Title: Re: Attempt to Play Sound File Crashes Game
Post by: bvanevery on February 27, 2020, 12:07:58 am
The wording isn't clear what is supposed to be a "good" or bad" setting.  I have

Code: [Select]
[PREFERENCES]
ForceOldVoxelAlgorithm=1

and no issues.  I believe this is the default for a GOG installation.
Title: Re: Attempt to Play Sound File Crashes Game
Post by: Fibonacci on February 27, 2020, 04:45:53 am
ForceOldVoxelAlgorithm=1 uses the older pre-MMX instruction set algorithm for decoding audio.
ForceOldVoxelAlgorithm=0 uses the same algorithm, but re-compiled allowing MMX instruction set use.

Good is whichever one plays nice on your system. In theory, the MMX stuff should allow more processor time for everything other than the audio decoding.
Title: Re: Attempt to Play Sound File Crashes Game
Post by: bvanevery on February 27, 2020, 06:36:13 am
There was some technical issue with MMX and DirectX back in the day, about preserving FPU state or failing to do so.  MMX aliased the FPU registers, repurposing them.  The successor, XMM, didn't have this problem.
Templates: 1: Printpage (default).
Sub templates: 4: init, print_above, main, print_below.
Language files: 4: index+Modifications.english (default), TopicRating/.english (default), PortaMx/PortaMx.english (default), OharaYTEmbed.english (default).
Style sheets: 0: .
Files included: 33 - 892KB. (show)
Queries used: 19.

[Show Queries]