ValveSoftware / ValveSoftware/Proton

Beyond Good and Evil (15130)

Open
#1,536 34 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Game compatibility - Unofficial
Dominant language
C++
Stars
32.8k
Forks
1.6k
PR merge metrics
PR metrics pending

Description

Compatibility Report

  • Game: Beyond Good & Evil
  • AppID: 15130

System Information

  • GPU: GTX 1060 (6gb)
  • Driver/LLVM version: Nvidia 396.54
  • Kernel version: 4.15.0-33
  • My System Info
  • Proton version: 3.7-6

I confirm:

  • that I haven't found an existing compatibility report for this game.
  • that I have checked whether there are updates for my system available.

Symptoms

Technically this game runs identically with Proton in Linux as it does in Windows. Unfortunately this game infamously runs like shit in Windows. There are a number of issues that are persistent across operating systems, but the fixes require a little bit more work with Proton.

The first time you launch the game you will be greeted with the settings launcher window. You need to set the graphics and details to low, check manual compatibility and disable hw vertex processing, fastflip and triple-buffering. Despite the age of the game, you will get constant slowdowns and graphical glitches if you don't set everything down low. I've yet to find a way to get the settings to appear again (besides uninstalling and reinstalling the game) so set them the first time. The settings launcher is a separate exe and I can't get it to launch again.

When you start a new game, the first noise you hear will get stuck in a 2 second loop for roughly 5 minutes, playing over the rest of the audio. The lines of dialogue spoken by the characters during combat will be repeated until you finish combat and many lines outside of combat will be repeated until you leave the area. Other sounds will also get stuck in a loop very often during the course of the game.

The only fix that worked for me was to install wine and winetricks through the terminal

sudo apt install wine-stable winetricks

Then you need to get a dsound.dll file from Windows 7 or up (the one shared on the wine page was this one: http://www.down-dll.com/index.php?file-download=dsound.dll&arch=32Bit&version=6.2.9200.16384&dsc=DirectSound ) and replace the one in this games wine bottle (located at /steamapps/compatdata/15130/pfx/drive_c/windows/system32 and " "/syswow64). Then edit the winecfg of the bottle from the terminal:

WINEPREFIX="​/home/<user>/<Steam Library>/steamapps/compatdata/15130/pfx" winecfg

and set wine to win7 and add dsound as a native library.

That stops the sound loop, but the audio will be badly out of sync and very choppy. Apparently this is because the game doesn't like it when your CPU slows down so you must force it to run at max performance all the time (when running the game) by opening up a terminal, logging into root (it can't be done with sudo) and setting the scaling governor on all threads of your cpu to "performance" instead of "powersaving"

su root
echo "performance" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

I've yet to find a simple way to set core affinity in Ubuntu (like in Windows task manager). So if there is one, that last step could be simplified quite significantly.

steam-15130.log

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the attached steam-15130.log and reproduce the audio-loop behavior under Proton 3.7-6 on Ubuntu, comparing it with the report's dsound.dll workaround. The work is complete when the underlying compatibility cause is identified and the game's audio behavior is validated without the workaround.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, ubuntu
Domain
operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.