Jump to content

OpenAL and Steam (You might want to check this if you release on Steam!)


Recommended Posts

So... We found out the hard way that Steam has issues with installing OpenAL (45% refund rate oof). If OpenAL isn't installed the game simply doesn't start, without any error messages...
To Josh: is it possible to make it so the engine/game gives an error message if OpenAL fails to initialize or if the DLL isn't found?

If you intend to publish your LeadWerks game on Steam I highly recommend creating a custom installation script for OpenAL.
I did this by including the OpenAL installer in the game folder and writing the following SteamWorks InstallScript:

"InstallScript"
{
	"Run Process"
	{
		"2.0.7.0"
		{
			"HasRunKey"		"HKEY_CURRENT_USER\\SOFTWARE\\Valve\\Steam\\Apps\\YOUR_DEPOT_NUMBER_HERE"
			"process 1"		"%INSTALLDIR%\\oalinst.exe"
			"command 1"		"/s"
			"NoCleanUp"		"1"
		}
	}
}

Don't forget to add the InstallScript to your BuildScript too, keep in mind that the paths may be different for you depending on how you have your SteamWorks build process setup:

"FileMapping"
{
  // copy install script into depot root folder
  "LocalPath" "..\\openalinstall.vdf"
  "DepotPath" "."
}

"InstallScript" "..\\openalinstall.vdf"


For more information on this check:
https://partner.steamgames.com/doc/sdk/installscripts
https://partner.steamgames.com/doc/sdk/installscripts#build

Link to comment
Share on other sites

I haven't had one complaint with OpenAL installation errors once I moved to Steamworks. I've installed it on fresh systems without any issues. I think Valve also checks this before you can even ship.

If I start getting feedback about this, I'll refer back to this. I shouldn't have to worry about this at all being I make no OpenAL calls, but whatever.

  • Like 1

Cyclone - Ultra Game System - Component PreprocessorTex2TGA - Darkness Awaits Template (Leadwerks)

If you like my work, consider supporting me on Patreon!

Link to comment
Share on other sites

1 minute ago, reepblue said:

I haven't had one complaint with OpenAL once I moved to Steamworks. I've installed it on fresh systems without any issues. I think Valve also checks this before you can even ship.

If I start getting feedback about this, I'll refer back to this. I shouldn't have to worry about this at all being I make no OpenAL call, but whatever.

Yeah from what I've seen it doesn't always fail. It seems things start breaking when people uninstall OpenAL themselves and then at a later date install a Steam game that has OpenAL as a dependency. Somehow Steam doesn't start the installation process.

Judging by the many, many forum posts for other games this is a very common issue. Some bigger titles too.

Link to comment
Share on other sites

For standalone installers, you can package the OAL and VS redistributable EXEs in the install files of Inno setup and add a step that automatically installs them. Both have command-line options for silent installation, if that is what you want to do.

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

10 minutes ago, Josh said:

There's a checkbox for this in the Steamworks settings. You also need to check the Visual Studio Redistributables.

Yes, we are aware. That's why I said that Steam has issues installing it :)
Setting the redists for the game was one of the first things we did.

This problem seems to have been plaguing many commercial games already and it doesn't seem it's gonna change anytime soon. Hence my post about it, because I'm sure more people might run into this.

  • Thanks 1
Link to comment
Share on other sites

I'm taking it that when the user removes OpenAL, something gets left behind that steam uses to validate if it's installed causing a false positive; telling the installer to skip the process.

I'm probably going to include it in my game just to be safe but I think this only will effect, how Apple would put it - A small amount of customers.

Cyclone - Ultra Game System - Component PreprocessorTex2TGA - Darkness Awaits Template (Leadwerks)

If you like my work, consider supporting me on Patreon!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...