How To: Fix the Shadow Warrior startup DBUS address error on Linux

I picked up the Humble Indie Bundle 14 the other day, which included Shadow Warrior – so I’m all keen to give it a shot on Linux, but when I launched it, I got this DBUS issue:

r3dux [ ~/Games/ShadowWarrior ]$ ./ShadowWarrior.bin.x86 
process 9383: arguments to dbus_connection_open_private() were incorrect, assertion "address != NULL" failed in file dbus-connection.c line 2664.
This is normally a bug in some application using the D-Bus library.
  D-Bus not built with -rdynamic so unable to print a backtrace
Aborted (core dumped)

I’m running 64-bit Arch, and I noticed there was a lib folder – so I thought that would be a good place to start experimenting, and I was right! =D

To get Shadow Warrior to launch, you need to remove the libSDL2 and libOpenAL library (.so) files – but have your Linux distro’s versions installed. I did this by renaming the lib folder to old-lib, creating a new lib folder to take its place, and then trying to launch, getting an error, and copying a lib from the old-lib to the lib folder, which by the time the game would launch gives me:

r3dux [ ~/Games/ShadowWarrior ]$ ls lib
r3dux [ ~/Games/ShadowWarrior ]$ ls old-lib

I have libSDL2 and all lib32-sdl* packages installed, but I have only the native 64-bit version of OpenAL installed (which did not get copied into the remastered ‘lib’ folder) and not the lib32 variant – and yet the game launches and works! So give that a shot – works for me =D

Shadow Warrior - working!