Recently I cam acroos interesting article Serious Sam 4 Linux DXVK Wine
I found out that this article is outdated + additionally I wanted to setup Serious Sam on PlayOnLinux (not Lutris).
First of all Serious Sam 4 requires 42 GB of storage. This is too much for my system folder.
However I have additional mounted disk/folder.
The problem is that PlayOnLinux by default store its "bottles" in the home path (different virtual wine folders), e.g. ~/.PlayOnLinux.
I changed default location by this guide How to move PlayOnLinux virtual drives to another disk.
- close PlayOnLinux
- create
.PlayOnLinuxfolder on mounted disk. E.g.mkdir /mnt/mystorage/Install/.PlayOnLinux/ - copy default
.PlayOnLinuxfolder into new created. E.g.cp -av ~/.PlayOnLinux/ /mnt/mystorage/Install/.PlayOnLinux/ - clean default
.PlayOnLinuxfolderrm -rf ~/.PlayOnLinux - make a symlink from default
.PlayOnLinuxfolder into new one. E.g.ln -s /mnt/mystorage/Install/.PlayOnLinux ~/.PlayOnLinux
2 Obtain Serious Sam 4
As a result you should have following:
├── Bonus
│ ├── serious_sam_4_artbook.zip
│ ├── serious_sam_4_ost_aac.zip
│ ├── serious_sam_4_ost_flac.zip
│ ├── serious_sam_4_ost_ogg.zip
│ └── serious_sam_4_ost_wav.zip
├── DLC
│ └── setup_serious_sam_4_deluxe_edition_dlc_1.08_(64bit)_(45801).exe
├── setup_serious_sam_4_1.08_(64bit)_(45801)-10.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-11.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-1.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-2.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-3.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-4.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-5.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-6.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-7.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-8.bin
├── setup_serious_sam_4_1.08_(64bit)_(45801)-9.bin
└── setup_serious_sam_4_1.08_(64bit)_(45801).exe- Run PlayOnLinux
- Go to
Tools->Manage Wine versions - Select
Wine versions (amd64)tab - Install at leat one x64 wine version, e.g.
6.17-staging - Close
Manage Wine versionswindow - Go to
Configure->Newfor adding bottle (virtual drive) Next->64 bits windows installation-> Select some Winex64 version e.g.6.17-staging- Enter name of the
bottle, e.g.x64v6.17staging - After
bottlewas created -> select thisbottleon the left andInstall componentstab on the right - Install
d3dcompiler_47andDXVK - Select
Miscellaneoustab on the right and clickRun a .exe file in this virtual driveand install Serios Sam 4 by selectingsetup_serious_sam_4_1.08_(64bit)_(45801).exe - Close PlayOnLinux for now
Game by default tries to use Vulkan API, which is buggy and even can not start the game.
- In order to start the game go to game folder, e.g.
cd /mnt/mystorage/Install/.PlayOnLinux/wineprefix/x64v6.17staging/drive_c/GOG Games/Serious Sam 4/ - Open
UserCfg.luawith any text editor and add following lines at the end of the file:
gfx_strAPI = "Direct3D11";
sfx_strAPI = "OpenAL";
- Save and close
UserCfg.lua - Go to
Content/SeriousSam4/Config/ - Open
CheckDriver.luawith text editor and replace with the following:
local aSettings = {
{ cvar="sys_iGPUVendorID" },
{ cvar="sys_strPlatform" },
{ cvar="gfx_iReqDriverVersion" },
{ cvar="gfx_iAPI" },
}
-- vendor IDs
local VID_NVIDIA = 0x10DE;
local VID_ATI = 0x1002;
local VID_INTEL = 0x8086;
-- assume no driver version detection
gfx_strAPI = "Direct3D11";
-- if vendor is nVidia
if sys_iGPUVendorID==VID_NVIDIA then
-- set needed driver version (September 2020)
gfx_strAPI = "Direct3D11";
-- if vendor is ATI
elseif sys_iGPUVendorID==VID_ATI then
-- set needed driver version (September 2020)
gfx_strAPI = "Direct3D11";
-- if vendor is ATI
elseif sys_iGPUVendorID==VID_INTEL then
-- set needed driver version (September 2020)
gfx_strAPI = "Direct3D11";
-- for any other vendor
else
-- just report a warning
print( "Unable to check for correct version of display driver!");
end
- Save and close
CheckDriver.lua
5 Download lates Proton GE archive
e.g. Proton-7.2-GE-2 Released
- Extract
Proton-7.2-GE-2.tar.gzarchive - Create folder in
.PlayOnLinux/wine/linux-amd64/e.g.Proton7.1GE2 - Copy
bin, lib, lib64, sharefolders fromProton-7.2-GE-2.tar.gzarchive (filessubfolder) into newly created folder, e.g.cp -av /home/lex/Downloads/Proton-7.1-GE-2/files/ /mnt/mystorage/Install/.PlayOnLinux/wine/linux-amd64/Proton7.1GE2/
- Run PlayOnLinux
- Go to
Configure-> select your bottle e.g.x64v6.17staging - Open
Generaltab on the right and on the lineWine versionyou should seelctProton7.1GE2(the folder that you created earlier and PlayOnLinux should detect wine inside this folder) - Click
Make a new shortcut from this virtual driveand selectSam4.exeandNext - Close
PlayOnLinux configurationwindow and run Sam4!
The same works for Serious Sam: Siberian Mayhem