After being in development for some time, Zombie Panic! Source has the huge 3.1 release pushed out which brings with it the official Linux support.
What actually is it? Zombie Panic! Source is a cooperative, survival-horror first-person-shooter. Think of it like a dedicated infection-mode game. Most players start off as humans, while a few Zombies trying to take them down and infect them and have it spread. Two opposing teams, with very different play-styles.
So why did this upgrade take so long? As time went on and they attempted to do a major code rewrite to get around major issues, they realized how "awful" some parts of the game functioned and so they decided to blitz through it all and ship out a much bigger and better upgrade overall. They've said now this is out, they will hopefully go back to more regular updates.
The most major new features are as follows:
- Linux Client support for Ubuntu and SteamOS machines.
- Revamped recoil system to allow players to have more control
- Major source code clean-up and rewrite from the ground up to remove all code from HL2DM.
- New first-person and third-person animations for firearms, explosives and cell phone.
- Improvements to player hitbox registration synchronizing with the player's model animation.
- Reworked the melee system with 'hit rays', creating an arc of line tracers in the player's FOV.
- Enhancements to the Steam Workshop support with additional "Add-ons" menu.
- Implemented Steam Rich Presence.
- 30 new Steam Achievements.
While they only technically support Ubuntu / SteamOS, it does appear to work fine on EndeavorOS, which is pretty much just Arch Linux.
The game continues being free and you can grab Zombie Panic! Source on Steam.
QuoteWhile they only technically support Ubuntu / SteamOS, it does appear to work fine on EndeavorOS, which is pretty much just Arch Linux.
Just not enough like Arch actually, the game just comes up with a popup about a not being able to load the client library after the introvideo. A shame, I was looking forward to trying this, but at the same time I am in no mood to hunt this bug down.
Last edited by ysblokje on 16 October 2020 at 12:05 pm UTC
Quoting: ysblokjeQuoteWhile they only technically support Ubuntu / SteamOS, it does appear to work fine on EndeavorOS, which is pretty much just Arch Linux.
Just not enough like Arch actually, the game just comes up with a popup about a not being able to load the client library after the introvideo. A shame, I was looking forward to trying this, but at the same time I am in no mood to hunt this bug down.
I have the same problem on Arch [testing], with this error message:
failed to dlopen /home/hagabaka/.local/share/Steam/steamapps/common/Zombie Panic Source/zps/bin/client.so error=/home/hagabaka/.local/share/Steam/steamapps/common/Zombie Panic Source/zps/bin/libcurl.so: undefined symbol: SSLv3_client_method, version OPENSSL_1.0.0
failed to dlopen client.so error=/home/hagabaka/.local/share/Steam/steamapps/common/Zombie Panic Source/zps/bin/libcurl.so: undefined symbol: SSLv3_client_method, version OPENSSL_1.0.0
Last edited by hagabaka on 17 October 2020 at 12:52 am UTC
Quoting: hagabakaQuoting: ysblokjeQuoteWhile they only technically support Ubuntu / SteamOS, it does appear to work fine on EndeavorOS, which is pretty much just Arch Linux.
Just not enough like Arch actually, the game just comes up with a popup about a not being able to load the client library after the introvideo. A shame, I was looking forward to trying this, but at the same time I am in no mood to hunt this bug down.
I have the same problem on Arch [testing], with this error message:
failed to dlopen /home/hagabaka/.local/share/Steam/steamapps/common/Zombie Panic Source/zps/bin/client.so error=/home/hagabaka/.local/share/Steam/steamapps/common/Zombie Panic Source/zps/bin/libcurl.so: undefined symbol: SSLv3_client_method, version OPENSSL_1.0.0
failed to dlopen client.so error=/home/hagabaka/.local/share/Steam/steamapps/common/Zombie Panic Source/zps/bin/libcurl.so: undefined symbol: SSLv3_client_method, version OPENSSL_1.0.0
Replace libcurl.so with the system one from /usr/lib/libcurl.so
Quoting: exstrim401Replace libcurl.so with the system one from /usr/lib/libcurl.so
That could work, except it replaces it every time you try to start the game.
Last edited by ysblokje on 17 October 2020 at 12:20 pm UTC
Quoting: ysblokjeIt does not replaces it for me. In that case you can write sh script like this:Quoting: exstrim401Replace libcurl.so with the system one from /usr/lib/libcurl.so
That could work, except it replaces it every time you try to start the game.
#!/bin/sh
rm ~/.local/share/Steam/steamapps/common/Zombie\ Panic\ Source/zps/bin/libcurl.so
ln -s /usr/lib/libcurl.so ~/.local/share/Steam/steamapps/common/Zombie\ Panic\ Source/zps/bin/libcurl.so
and set launch params to:
~/fix_zps.sh;%command%
Quoting: exstrim401Quoting: ysblokjeIt does not replaces it for me. In that case you can write sh script like this:Quoting: exstrim401Replace libcurl.so with the system one from /usr/lib/libcurl.so
That could work, except it replaces it every time you try to start the game.
#!/bin/sh
rm ~/.local/share/Steam/steamapps/common/Zombie\ Panic\ Source/zps/bin/libcurl.so
ln -s /usr/lib/libcurl.so ~/.local/share/Steam/steamapps/common/Zombie\ Panic\ Source/zps/bin/libcurl.so
and set launch params to:~/fix_zps.sh;%command%
Your solution is close but one tiny point, the game is 32 bit not 64, so the libcurl.so you copy over the original is not being used.
Knowing that means that removing the libcurl.so when the update popup is there works and it wont crash and it wont restore the file either.
I tried this and it seems to work. Thx for pointing me in the right direction.....
I invite those who have problems to read this pinned Steam discussion thread about the known issues and the fix for those who have the problem with cURL and "client.so".
Quoting: Shepard62FRHello everyone, I'm the Linux programmer of Zombie Panic! Source.
I invite those who have problems to read this pinned Steam discussion thread about the known issues and the fix for those who have the problem with cURL and "client.so".
Have you considered incorporating your fix in the actual release? Just a friendly suggestion.
Quoting: ysblokjeHave you considered incorporating your fix in the actual release? Just a friendly suggestion.
Yes, but the problem is that the fix is "situational", it depends on which Linux distribution you are using and if you are running Steam "normally" (with the Steam Runtime) or "natively" (without the Steam Runtime thus using your system's libraries).
To develop and test ZPS under Linux, I use Ubuntu 20.04 and the game start right away without needing the fix mentioned in the Steam thread above.
Quoting: Shepard62FRQuoting: ysblokjeHave you considered incorporating your fix in the actual release? Just a friendly suggestion.
Yes, but the problem is that the fix is "situational", it depends on which Linux distribution you are using and if you are running Steam "normally" (with the Steam Runtime) or "natively" (without the Steam Runtime thus using your system's libraries).
To develop and test ZPS under Linux, I use Ubuntu 20.04 and the game start right away without needing the fix mentioned in the Steam thread above.
Working right away on Fedora too, no fixes needed.
Quoting: Shepard62FRthe problem is that the fix is "situational", it depends on which Linux distribution you are using and if you are running Steam "normally" (with the Steam Runtime) or "natively" (without the Steam Runtime thus using your system's libraries)It's borked for me as well on Debian sid, but simply copying 32-bit versions of libssl.so.1.0.0 & libssl.so.1.0.0 to the bin directory fixes it immediately.
Is there a reason why you wouldn't just ship these libs? By preloading the bin directories first (as you already do in zps.sh), it should be solved for any distro.
This is a lingering issue that Linux gamers continuously suffer through and I expect it'll not be gone for a long while yet. I've long since lost track of how many games needed this specific massaging to unbork...
Quoting: dpanterSince ZPS v3.1.1 (that got released yesterday), I have included the "libcrypto.so" and "libssl.so" files that should work as part of the game's files.Quoting: Shepard62FRthe problem is that the fix is "situational", it depends on which Linux distribution you are using and if you are running Steam "normally" (with the Steam Runtime) or "natively" (without the Steam Runtime thus using your system's libraries)It's borked for me as well on Debian sid, but simply copying 32-bit versions of libssl.so.1.0.0 & libssl.so.1.0.0 to the bin directory fixes it immediately.
Is there a reason why you wouldn't just ship these libs? By preloading the bin directories first (as you already do in zps.sh), it should be solved for any distro.
This is a lingering issue that Linux gamers continuously suffer through and I expect it'll not be gone for a long while yet. I've long since lost track of how many games needed this specific massaging to unbork...
To prevent risking breaking existing working setups, they are not "enabled" by default, you need to do a "little something":
- Right-click on ZPS in your Steam library
- Click on Properties
- Click on "Set advanced command-line options"
- Type "-linux-extra-bins" without the double quotes and all in lowercase.
- Try starting the game again
In the future, I might make those binaries "used by default", that will of course depends on player's feedback if they managed to launch the game with and/or without those extra binaries.
Quoting: Shepard62FRIn the future, I might make those binaries "used by default", that will of course depends on player's feedback if they managed to launch the game with and/or without those extra binaries.Debian needs the -linux-extra-bins launch option for the game to work properly.
See more from me