Jump to content
mojical

APB 1.30+ on Linux (new guide with Proton-GE and tweaks)

Recommended Posts

On 5/1/2023 at 2:13 AM, gogeo said:

When it gets to the login screen I get this crash everytime.

Steam with Proton GE 55, tried 49 as well, same crash.

 

Specs:

OS: (Nobara) Fedora 37

CPU: Ryzen 7 5800X3D.

GPU: RTX 3060 Ti

RAM: 32GB DDR4

DRIVE: Crucial P1 NVMe 1TB

Seems like you did not set the launch options in the game's properties correctly.

Alternatively you can run this terminal command which will fix the login screen and allow you to launch the game without any options:

echo -e '[LoginSettings]\nbUseSteamLogin=False' >> "$HOME/.steam/steam/steamapps/common/APB Reloaded/APBGame/Config/APBMachineOptions.ini"

You only have to run it once and it will work until you reinstall the game.

 

Merged.

 

On 5/1/2023 at 1:46 AM, Spillra said:

Nvidia (2070 super), Proton GE 7-55. I crash at least once every time i launch the game but it runs fine after that.

I ran it again without most of the config and then i get a solid 300 in a low pop asylum, so there is something in my config that fucks with the FPS
 

The improvement could also be due to shader compilation delays, it takes time to build a full DXVK shader cache. The cache is stored on disk so it will persist after several starts of the game.

Edited by mojical

Share this post


Link to post
Share on other sites

@mojical are you in the LO discord ? there's a couple of linux users there as well, apparently proton 8.1 GE has been released, i'd be great if we could chat there to share our findings 😄

 

Share this post


Link to post
Share on other sites
1 hour ago, Ketog said:

@mojical are you in the LO discord ? there's a couple of linux users there as well, apparently proton 8.1 GE has been released, i'd be great if we could chat there to share our findings 😄

 

I am, but unfortunately I must have been wrong about GE's patches because 8.0 GE still does not work.

Share this post


Link to post
Share on other sites
On 5/1/2023 at 2:41 AM, mojical said:

Seems like you did not set the launch options in the game's properties correctly.

 

I did.

 

Merged.

 

On 5/1/2023 at 2:41 AM, mojical said:

Alternatively you can run this terminal command which will fix the login screen and allow you to launch the game without any options:


echo -e '[LoginSettings]\nbUseSteamLogin=False' >> "$HOME/.steam/steam/steamapps/common/APB Reloaded/APBGame/Config/APBMachineOptions.ini"

You only have to run it once and it will work until you reinstall the game.

 

This alternative terminal command fixed the crash.

  • Like 1

Share this post


Link to post
Share on other sites

Proton Experimental just got updated with the fix, so I also updated the guide to make use of it. Crashes and mail breakages should be gone with this new method.

 

Also expect Proton-GE to have this sorted out in the next build.

Edited by mojical

Share this post


Link to post
Share on other sites
On 5/3/2023 at 10:58 AM, mojical said:

Proton Experimental just got updated with the fix, so I also updated the guide to make use of it. Crashes and mail breakages should be gone with this new method.

 

Also expect Proton-GE to have this sorted out in the next build.

👍

 

 

  • Like 1

Share this post


Link to post
Share on other sites
2 hours ago, Ketog said:

👍

 

 

It works for me too, but for some reason the ping is unplayable on the steam deck for me 😪

Share this post


Link to post
Share on other sites

I've updated the instructions to include Visual C++ runtimes. This is a bit complicated to achieve with the current build but it's a step closer to getting full support, as automatic Steam login is now working.

 

EDIT: Proton-GE now automatically installs the needed VC++ runtimes thanks to my pull request, so I've updated the guide to make use of this development.

Edited by mojical
  • Like 2

Share this post


Link to post
Share on other sites

Launcher says, (Not enough free disk space: 3.75 GB is available, 4.45 GB is required), i have plenty of storage...



What I Used:
GE-Proton8-5 and Proton 8.0-3
Linux Mint 21.2 x86_64, KDE Plasma

 

Share this post


Link to post
Share on other sites

EDIT:

 

Fixed the flickering by installing Nvidia driver version 525. Still have the fps stutters. The game randomly goes from 128 solid to 80fps or lower. It drops lower when moving the mouse, but I don't think the mouse movement is the cause.

 

The fps drops when I move my mouse. Stays steady at 128fps if I don't provide any input.

 

The screen constantly flickers. Other guides say to enable "Force Full Composition Pipeline" in Nvidia settings. This causes the audio and video to freeze when the game is in focus.

 

Kubuntu 23.10

GE-Proton8-5 and Proton 8.0 (steam)

Nvidia Driver 535.129.03

Edited by BlatMan

Share this post


Link to post
Share on other sites
20 hours ago, BlatMan said:

EDIT:

 

Fixed the flickering by installing Nvidia driver version 525. Still have the fps stutters. The game randomly goes from 128 solid to 80fps or lower. It drops lower when moving the mouse, but I don't think the mouse movement is the cause.

 

The fps drops when I move my mouse. Stays steady at 128fps if I don't provide any input.

 

The screen constantly flickers. Other guides say to enable "Force Full Composition Pipeline" in Nvidia settings. This causes the audio and video to freeze when the game is in focus.

 

Kubuntu 23.10

GE-Proton8-5 and Proton 8.0 (steam)

Nvidia Driver 535.129.03

 

Are you on Wayland or X11? Have you tried running X11 with the compositor turned off? 

 

You could also try updating to the latest GE-Proton release (23 as of this post), there is no need to run 8-5 specifically but it was the first version that could launch the game without manual tweaking. Since downgrading your drivers helped I suspect the newer drivers may not be playing nice with the somewhat older DXVK in Proton 8-5.

 

Regarding the stutters, putting the command line option 

 

DXVK_HUD="compiler" %command%

 

in Steam's launch options will make the game notify you when a shader compilation occurs. If your stutters are due to shader compilation they will go away as you play the game and build up a disk cache of shaders. Overall though unfortunately the experience with Nvidia is not going to be as smooth as with Radeon cards, and I lack any modern Nvidia cards to be able to test. 

Edited by mojical

Share this post


Link to post
Share on other sites

I'm a Linux noob. I just read the manual to get the OS up and running,

 

X11. No, I haven't tried with the compositor turned off.

 

I tried using Proton 8 (Steam's), GE-Proton 8-5, and GE-Proton 23. They all ran about the same, on the 525 Nvidia driver. GE-Proton 23 loaded on 535 Nvidia driver, but performance was still bad, if not worse.

 

I overwrote the install with Windows 10 LTSC (year 2019 release) just to get APB working with the EAC update. I'll get another SSD and try it again.

 

I'm not sure which distro to go with. Any suggestions? I have Mint in a virtual machine for testing, and I've used Ubuntu for work, but like I said very little experience overall. I like Kubuntu's layout, but the window icons were buggy. For example, Firefox would use the default min max close buttons, instead of the ones I set in the settings. I also didn't like having tons of default apps installed.

 

On Windows, I get over 100fps average, usually over 150fps. Edge of the districts can get over 200fps if there's not a lot of players nearby.

 

System Specs:

CPU: Xeon W3680

Motherboard: Evga X58 SLI

RAM: 12GB DDR3 2133Mhz (Can run 24GB 1866Mhz, if needed)

GPU: Nvidia GTX 1080

Storage:

- 480GB SSD Sata (OS)

- 500GB SSD Sata (Scratch Disk)
- 500GB SSD NVMe (Games)

Share this post


Link to post
Share on other sites

I would try Nobara, specifically the KDE Nvidia version. If you are using Nvidia, desktops like Gnome or Cinnamon won't be the best option because you can't fully disable the compositor on them, so KDE is preferable. If your poor performance persists, you can use the builtin tool GOverlay to enable a HUD that will tell you about CPU/GPU usage and frequency, as does RTSS on Windows.

 

Be aware that GPU usage will be significantly higher under Linux with DXVK so maybe your 1080 is hitting its limit, odd as it sounds for APB.

  • Like 1

Share this post


Link to post
Share on other sites

Thanks for the suggestion. I'll give Nobara a try when the drive comes in. I forgot to mention my monitor. It's 1440 144hz. That can be a struggle for my GPU. In windows it's 30% worst case.

Share this post


Link to post
Share on other sites

EDIT:

 

The stuttering issue is due to cstates. Linux ignores your bios settings and enables cstates by default. My CPU was downclocking to 1.5Ghz while APB was running. Apparently this is normal behavior and there's tons of clowns who think it's a bad idea to run your CPU at it's advertised speed.

 

To disable cstates, edit the file /etc/default/grub and add "intel_idle.max_cstate=0" to the "RUB_CMDLINE_LINUX_DEFAULT=" line. Mine looks like this after adding it:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_idle.max_cstate=0"

 

Original Post:

 

Long overdue update.  I decided to stick with Debian with Xfce. The documentation is easy to follow and most popular distros are based on Debian so software support is less of an issue. APB still doesn't run as good as it does on Windows, but better than when I tested a month ago. Main performance problem is freezing during combat. 2v2 in an empty area is fine, but 4v4 or if there's another mission nearby, it stutters a lot. I'm not sure if it's related to the shader compiling or not. Shaders are compiling every few seconds, but the notification doesn't line up with the stutters. One of the CPU cores frequently jumps to 100%, but it doesn't line up with the stutters either. I increased RAM to 24GB. No change in performance.

 

Linux Distribution: Debian 12 "bookworm"

Proton Version: GE-Proton8-25

Nvidia Driver Version: 525

 

Here's a few issues I was able to fix.

 

Flickering when in full screen:

1.  Disable composer in Xfce.

2.  Make sure the display's refresh rate is at it's highest setting.

3. If 1 and 2 don't work, try enabling/disable gsync support.

 

Slow texture loading. Invisible objects. Slow lobby loading. Abnormally low fps. Multiple gigs of shader cache that keeps growing.

1. Confirm APB is set to use the proton version you want to use.

2. Delete APB's proton files, then restart Steam. You have to open Steam in big picture mode. Right click on APB, Developer > Delete Proton Files.

3. Launch APB. It will reinstall the windows dependencies.

 

Framerate really low after Alt-Tab. CPU frequency inconsistent.
1. Install gamemode.

2. Add "gamemoderun" to APB's launch arguments in Steam.

Edited by BlatMan

Share this post


Link to post
Share on other sites
On 12/10/2023 at 5:47 AM, BlatMan said:

EDIT:

 

The stuttering issue is due to cstates. Linux ignores your bios settings and enables cstates by default. My CPU was downclocking to 1.5Ghz while APB was running. Apparently this is normal behavior and there's tons of clowns who think it's a bad idea to run your CPU at it's advertised speed.

 

To disable cstates, edit the file /etc/default/grub and add "intel_idle.max_cstate=0" to the "RUB_CMDLINE_LINUX_DEFAULT=" line. Mine looks like this after adding it:


GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_idle.max_cstate=0"

 

In my experience to keep your CPU at its maximum frequency it is sufficient to set the "performance" cpu governor, which will still allow for acceptable idle power consumption.  Disabling C-states causes a 10-fold increase in idle power usage (10W to 100W) on my CPU, so I would not enforce it via GRUB at least. 

 

If changing the governor is still not enough, you can disable C-states temporarily with this command:

sudo cpupower idle-set --disable-by-latency 0

And to reenable them:

sudo cpupower idle-set -E

With some scripting this can be used to disable C-states before launching the game and reenable them when you're finished playing. That way you will not encounter high power draw and temperatures when using the same PC for web browsing and other light tasks. 

Edited by mojical

Share this post


Link to post
Share on other sites

Made multiple edits to this post. Here's the final solution to prevent the CPU from switching to a lower frequency at idle. Note that this most likely only applies to my CPU/motherboard combination. New PCs shouldn't need to disable the idle states.

 

Blacklist the acpi_cpufreq module:

Create a new blank text file in "/etc/modprobe.d/". It can be named anything. I called it "cpu-scaling-driver-blacklist.conf
Add "blacklist acpi_cpufreq"
Save the file.

 

Disable cpuidle:

Open the text file "/etc/default/grub"
Edit the line "GRUB_CMDLINE_LINUX_DEFAULT="quiet"
Add "cpuidle.off=1", so it looks like:  "GRUB_CMDLINE_LINUX_DEFAULT="quiet cpuidle.off=1"
Save the file.
Run the command "sudo update-grub"
Reboot PC

 

Most of the stuttering is gone, and I think there's less stuttering overall than on Windows, but I need a US East district to be fully populated to test that. A full EU district doesn't stutter as bad as it does on Windows 10. Low pop areas of the districts have slightly higher fps as well. Now I see why so many people claim some games run better under Linux. Honestly, I thought they were all crazy.

 

Standing next to the car spawn area under the Plantagent building, looking at central park, I get about 120fps to 160fps in Windows. On Debian, I get about 160fps to 210fps standing in that same spot. It varies based on how many players are nearby, so it's hard to get an accurate comparison.

Edited by BlatMan

Share this post


Link to post
Share on other sites
On 12/13/2023 at 1:11 AM, BlatMan said:

Most of the stuttering is gone, and I think there's less stuttering overall than on Windows, but I need a US East district to be fully populated to test that. A full EU district doesn't stutter as bad as it does on Windows 10. Low pop areas of the districts have slightly higher fps as well. Now I see why so many people claim some games run better under Linux. Honestly, I thought they were all crazy.

 

Standing next to the car spawn area under the Plantagent building, looking at central park, I get about 120fps to 160fps in Windows. On Debian, I get about 160fps to 210fps standing in that same spot. It varies based on how many players are nearby, so it's hard to get an accurate comparison.

I have edited the original post with a config to reduce stutters (the dxvk.conf part), would be nice if you can try it out and see if it makes a difference for you. 

Share this post


Link to post
Share on other sites

@BlatMan 

 

I'm using an i4790K in linux for something else and like you I found that my BIOS settings being overridden.  Below may work for you.

 

Using "intel_idle.max_cstate=0 cpuidle.off=1 idle=poll" as boot line options ensures a fixed clock frequency.

 

Once booted, I  can then choose to have the CPU running at a fixed 4GHz or at a fixed 4.4GHz (Max turbo boost frequency), using console commands;

 

echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo 

 

or 

 

echo 0 > /sys/devices/system/cpu/intel_pstate/no_turbo

 

I'm not blacklisting any drivers. 

Edited by Rade

Share this post


Link to post
Share on other sites

You're most likely using the intel driver. Mine uses acpi_cpu because my board doesn't have C-states, and boost is off.

 

I tried the updated dxvk.conf you posted. No difference during normal gameplay.

Share this post


Link to post
Share on other sites

Solution: Disable Steam shader pre-caching, and delete the old shadercache files.

 

In Steam's settings, disable Shader Pre-caching.

- Menu up top > Steam > Settings > Downloads > Enable Shader Pre-caching (uncheck)

 

Then, delete the old shaders. Delete all files in this directory.

- /home/username/.steam/steam/steamapps/shadercache/113400/

 

Drive around the district to compile the vulkan shaders. The game should run better.

 

Original Post:

 

Since the Christmas event ended, I've been having stuttering caused by particles. For example, if I'm driving and a teammate is using blow torch on my vehicle, the game will stutter. It stutters worse the more particles are on my screen. It does not stutter when I use blow torch on a vehicle, which makes no sense. Same with shooting. other players shooting within my screen space causes stuttering, by my own shots do not.

 

I tried resetting the config files and removing the dxvk.conf. I deleted APB's proton files and even tried upgrading to Proton GE 27. Nothing seems to make a difference.

 

I'm wondering if something got screwed up with my Debian installation. I tried installing the Kate text editor one time. With it installed, not even running, it caused display lag. It was somehow preventing APB's window from updating on the screen. Fps was stable, but 2/3 of the frames weren't making it to the monitor. I uninstalled it while APB was running, and it immediately fixed the problem. I removed the orphaned packages that were required for Kate.

 

I still can't get the Nvidia settings to load at login. I have to launch the Nvidia X Server settings app to load the settings.

Edited by BlatMan

Share this post


Link to post
Share on other sites

im on windows and game is running fine on my end, but i just had to like OP msg for its effort and contribution 

(my contribution to this thread is useless, but i still had to write this msg :D)

Share this post


Link to post
Share on other sites
On 7/22/2023 at 6:47 AM, Kultuuraa said:

Launcher says, (Not enough free disk space: 3.75 GB is available, 4.45 GB is required), i have plenty of storage...



What I Used:
GE-Proton8-5 and Proton 8.0-3
Linux Mint 21.2 x86_64, KDE Plasma

 

Having the same problem.

Tried GE-Proton 8-30 and 9-01
Running on Pop_OS 22.04 LTS

Share this post


Link to post
Share on other sites

Intel ARC

 

A quick tip for Intel ARC users. ARC GPUs will automatically scale its clock frequency due to demand but on older games that are not GPU intensive (like APB) this can result in varying frequencies during game play i.e. fluctuations in FPS.  If you want more stable FPS you can control your MIN and MAX frequencies, simply setting the MIN frequency to the same value of the MAX will fix the clock frequency to MAX.

 

To view current values  

cat /sys/class/drm/card0/gt_min_freq_mhz
cat /sys/class/drm/card0/gt_max_freq_mhz

 

Intel ARC A770, default values are 300MHz and 2400MHz.

 

To change the MIN (below is an example of setting the MIN to 2400MHz, which is the same as the MAX value)

echo 2400 > /sys/class/drm/card0/gt_min_freq_mhz

But this will likely come up with a permission denied, so you first need to enable write permission to the file(s). 

sudo chmod a+w /sys/class/drm/card0/gt_min_freq_mhz

All changes to those files are not persistent and will be lost on reboot. 

 

Above tested in Ubuntu 23.10.

  • Like 1

Share this post


Link to post
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.   Restore formatting

  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.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...