Proton: Grand Theft Auto IV (12210)

Created on 24 Aug 2018  Â·  109Comments  Â·  Source: ValveSoftware/Proton

gtaiv-crash.log
steam-system-info.txt

Distro: Gentoo Linux

Game compatibility - Unofficial Regression

Most helpful comment

Aha, I thought it was a dx11 game.. So that dxvk wiki link is useless..
Thanks for pointing out that you can in fact run winecfg. I did say "as far as I can tell" if whoever gave a thumbs down to my comment thought it was arrogant or something.

I checked out wine-stagings ppa (I really thought it was dead) and managed to get the files and now it works.
Mini guide:
Download https://dl.winehq.org/wine-builds/ubuntu/pool/main/wine-staging-i386_3.13.0-2~bionic_i386.deb and https://dl.winehq.org/wine-builds/ubuntu/pool/main/wine-staging-amd64_3.14.0~bionic_amd64.deb for 32bin and 64bit libs respectively.
No need to install them. Just open them with your archive manager of choice and extract the nvapi files to their respective folder:
(archive)/opt/wine-staging/lib64/wine/nvapi64.dll.so -> /Proton 3.7 Beta/dist/lib64/wine/
(archive)/opt/wine-staging/lib64/wine/fakedlls/nvapi64.dll -> /Proton 3.7 Beta/dist/lib64/wine/fakedlls/
(archive)/opt/wine-staging/lib/wine/nvapi.dll.so -> /Proton 3.7 Beta/dist/lib/wine/
(archive)/opt/wine-staging/lib/wine/fakedlls/nvapi.dll -> /Proton 3.7 Beta/dist/lib/wine/fakedlls/

Game boots up just fine. Performance is questionable.

All 109 comments

Seems similar to this, which in turn might be due GFWL.
A workaround for the moment is XLiveLess.

The game refuses to launch for me giving me a black screen. XLiveLess is installed

The installation goes fine, then it asks me about a Xbox account, I just hit play and then i get this error

schermafdruk van 2018-08-25 15-12-20

@Houtworm, please read the comment above about XLiveLess. GFWL doesn't work on wine and probably never will.

Source?
AFAIK the current blockers are only LiveID service not initializing (which could have benefited a lot of the last work on msi installers) and WPF (which should have some very dirty workaround, at least).

I did get GTA IV to work using playonlinux. xliveless should be used as always.
It was rather straight forward until I started to apply patches needing to get any controller to work. Then it stopped working :-(.
Anyway: GTA IV should work more or less out of the box by installing the xlive.dll using the steam recipe on PoL (not the GTA IV recipe, as that is outdated).

I hope Proton will have an xliveless option in the future.

Anyway my problem is almost the same as I started with EFLC. EFLC should display a menu to select which of the two stories you want to play before starting the game itself. That menu is black.

What's your GPU / OS? @ardje

@vanyasem : GTA IV EFLC is working for me now (tm) on a GPD WIN 2 using padoka PPA. It only starts from the desktop client though, starting it from big picture gives me black screen. And I need big picture to translate the controller to something sane :-(. I need some more testing though.
This is using the 3.7.4-beta proton if I recall correctly... I will play with it some more tonight.
Note that being able to run it on the WIN 2 is an achievement as a lot of (linux) games ignore the rotated status of the screen and assume the 720x1280 rotated means 720 horizontal and 1280 vertical.
I also will test GTA IV EFLC on my steam machine by starting another wm in the .xsession and use the desktop client.

@mirh Source: winehq. Note on the bottom of the page.

Games for Windows - LIVE does not work under Wine. GFWL components will crash any game that use the service. The only thing to do about it is to cut XLive out using XLiveLess Patch.

I probably won't find a comment by one of Wine maintainers about GFWL support, but considering it has been a _lot_ of time since that note was initially created, you probably get the idea.

Oh, wait, I am not using padoka, but oibaf, and that's a guy/repo who packages upstream mesa for stable ubuntu releases on a daily basis.
GTA EFLC seems to just take ages to get to the selection screen I've now seen. I should time it, it looks like 5...10 minutes in big picture mode.
The GPD WIN 2 is based on an intel SoC with a 720x1280 portrait display rotated landscape. It has no rotated scanout features, so all rotation is done in software. The specs: intel M3, intel HD 615, 8GB memory, xbox like gamepad.

On my steammachine with steamos beta, I just reboot it, because it never finishes installing. I think I should install it using desktop mode and see what happens. The steam machine is an i5 with a GTX960M with 3GB VRAM.
On the WIN2 I have major problems using the controller pad, but that might be due to not compiling the kernel correctly. It's not related to GTA at least.
About GFWL, I never knew anything other than to install xlive.dll to get rid of it.
I think installing social club from the GTA site should fix most of these.
But I don't know how proton integrates. Personally I would just use some base image and use a unionfs like fs layer on that. Or each game should have it's separate fixed up environment (like playonlinux).

About GFLW: a lot of howtos for windows is about how to disable GFLW. It's not just a problem for people using wine, it's a generic problem.

About the very long wait: I found this: https://www.reddit.com/r/GTA/comments/8ff35v/gta_iv_game_stays_on_a_black_screen_for_about_a/

It seems that it looks really like GTA IV EFLC is working properly.

Game keeps crashing during the benchmark (Options→Graphics→Benchmark).
gtaiv-benchmark-crash.log

I tried waiting for 11 minutes with no success. I am using the -windowed option. Could you please upload a screenshot?

Also there is a new folder in GTA IV directory called steam_shader_cache, which seems related to the fact that I have pre-compiled shaders on in Steam settings. Do you have that enabled?

I probably won't find a comment by one of Wine maintainers about GFWL support, but considering it has been a lot of time since that note was initially created, you probably get the idea.

Means [less than! random guy ≠ wine] nothing.
It's just microsoft gaming dep had a sort of reverse-NIMBY crisis and decided to implement everything they could via this or that windows service (which just about nobody would or does use).
And people seem so much like not even caring that in 3 years nobody noticed bugs getting fixed either.

I just cannot understand for the love of me, what people think wine objective would even be.

About GFLW: a lot of howtos for windows is about how to disable GFLW. It's not just a problem for people using wine, it's a generic problem.

That's because games come bundled with outdated runtimes, which cannot even get to the stage of updating without misbehaving on newer windows. But in my experience this can solve *all* problems.

p.s. I'm impressed that M3-7Y30 (corresponding broadly to a QX9300 plus HD4670) can bring "gta 4 working faster than a slideshow" territory on that tdp

@vanyasem
Before launching the game (in -windowed mode), I did 2 things:

# process doesn't seem to be useful? game ~works anyway
while :; do pkill -9 'gta4Browser.exe' ; sleep 2; done

# speeds up game startup (almost instant), drops all the outgoing connections
iptables -A OUTPUT -o eth0 ! -d 127.1 -j DROP

Framerate is horrible though, and there's a graphical glitch next to minimap:

screenshot

Do you all have AMD GPUs or has someone succeeded in launching the game on an __nvidia__ GPU? I feel like nvapi issue might be related here. Though it doesn't work for me even on latest wine staging, so unlikely, still worth noting.

The game is constantly eating one core of my CPU, staying at the black screen. I disabled intro videos just in case, but that didn't help.

I have the same problem as @vanyasem - xliveless is installed (used this before, so I know how to do it), but no matter what I do (killing gta4browser.exe, setting specific options), the screen just stays black (and one of my CPU cores goes to 100% usage).
This is on Arch Linux with NVIDIA 396.54

Me too. Have the same problem as @vanyasem and @DissCent
NVIDIA 396.54 drivers on GTX 1050m XUbuntu 18.04
@zetok's workaround does not work for me.

I had to install intel-microcode to get past the securom 8016 error on my
steam machine. The steam machine (with steamos and with steam in normal
client mode and window manager) has an nvidia card and it just hangs on
EFLC or plain IV.
My gpd win2 with intel hd and oibaf ppa starts EFLC fine. The install
requires xlive.dll . I have not been able to start IV on any of my systems
though.

okay i'm new to this steam proton thing, where do i have to put those wine fixes to block the gta4browser.exe? I tried to put it inside the user_settings.py but that just breaks all games.

I managed to get the game working fine by copying xliveless (from lutris repo) to the game folder, and then blocking tv.rockstargames.com (because that subdomain has misconfigured ip address at the moment, and game is stuck at disclaimer screen trying to connect to it) by applying following command:
sudo sh -c "echo '127.0.0.1 tv.rockstargames.com' >> /etc/hosts"

Nasty workaround (because of Rockstar's negligence towards GTAIV PC port), but it works.

What you suggest, @lazanet , seems to be for a separate issue. The first workaround is obvious and is for skipping GFWL. The second is for skipping activation and getting stuck at the disclaimer screen. The problem is that some of us are not even getting to the disclaimer screen. Can you please share your specs so that we can rule out some stuff? Tnx :-*

@Mattia98 I've managed to get EFLC running on nvidia by copying nvapi files from my system installation of wine (wine 3.14) to the corresponding directories in the Proton (Proton Beta 3.7-5) installation.

cp /usr/lib64/wine/nvapi64.dll.so ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib64/wine/nvapi64.dll.so
cp /usr/lib64/wine/fakedlls/nvapi64.dll ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib64/wine/fakedlls/nvapi64.dll
cp /usr/lib/wine/nvapi.dll.so  ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib/wine/nvapi.dll.so
cp /usr/lib/wine/fakedlls/nvapi.dll ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib/wine/fakedlls/nvapi.dll

For Arch the paths to wine libs differ:

cp -v /usr/lib64/wine/nvapi64.dll.so ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib64/wine/nvapi64.dll.so
cp -v /usr/lib64/wine/fakedlls/nvapi64.dll ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib64/wine/fakedlls/nvapi64.dll
cp -v /usr/lib32/wine/nvapi.dll.so  ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib/wine/nvapi.dll.so
cp -v /usr/lib32/wine/fakedlls/nvapi.dll ~/.local/share/Steam/steamapps/common/Proton\ 3.7\ Beta/dist/lib/wine/fakedlls/nvapi.dll

Related to #165

Can confirm, that fixes both GTA IV, and GTA EFLC for me
2018-09-07-231824_3840x2067_scrot

The game performs very poorly though, I get around ~19 FPS in 4k maxed out. Specs: https://gist.github.com/vanyasem/f787469ec8c50cdd3728340ef4c73269

I only saw some occasional graphics glitches, and shuttering during cutscenes (vsync off). The game runs pretty well by itself.
2018-09-07-234309_384x349_scrot

When dowloading Wine 3.14 from playonlinux I don't get those files. And when searching through the Ubuntu package (https://packages.ubuntu.com/bionic/amd64/libwine-development/download) I can't find them there either. Where can I get those files?
BTW still not working out-of-the-box on Proton 3.7-6

@Mattia98
Those are part of wine-staging.

Anyway, https://github.com/doitsujin/dxvk/wiki/Common-issues#nvapi

@pchome OK, as far as I can tell there is no winecfg in Proton so that's out. How would I spoof an AMD card in Proton like suggested in the dxvk wiki?
--- Back to the files:
Where can I find a precompiled wine-staging? According to the wine wiki it's discontinued and there is no such package in the Ubuntu repos.

@Mattia98 first of all, GTA IV is NOT a dx11 game (it uses dx9), and thus doesn't use DXVK. You cannot spoof an AMD card using that method.

There is in fact winecfg in Proton. Use WINEPREFIX="/path/to/steam/steamapps/compatdata/GAMEID/pfx/" "/path/to/steam/steamapps/common/Proton 3.7 Beta/dist/bin/wine64" winecfg to access it.

Now, for wine-staging. Ubuntu's PPAs concept is in fact confusing, which is why I use Arch with it's AUR. But anyways, read https://www.maketecheasier.com/install-wine-staging-ubuntu/, which describes the process of installing wine staging in detail.

Aha, I thought it was a dx11 game.. So that dxvk wiki link is useless..
Thanks for pointing out that you can in fact run winecfg. I did say "as far as I can tell" if whoever gave a thumbs down to my comment thought it was arrogant or something.

I checked out wine-stagings ppa (I really thought it was dead) and managed to get the files and now it works.
Mini guide:
Download https://dl.winehq.org/wine-builds/ubuntu/pool/main/wine-staging-i386_3.13.0-2~bionic_i386.deb and https://dl.winehq.org/wine-builds/ubuntu/pool/main/wine-staging-amd64_3.14.0~bionic_amd64.deb for 32bin and 64bit libs respectively.
No need to install them. Just open them with your archive manager of choice and extract the nvapi files to their respective folder:
(archive)/opt/wine-staging/lib64/wine/nvapi64.dll.so -> /Proton 3.7 Beta/dist/lib64/wine/
(archive)/opt/wine-staging/lib64/wine/fakedlls/nvapi64.dll -> /Proton 3.7 Beta/dist/lib64/wine/fakedlls/
(archive)/opt/wine-staging/lib/wine/nvapi.dll.so -> /Proton 3.7 Beta/dist/lib/wine/
(archive)/opt/wine-staging/lib/wine/fakedlls/nvapi.dll -> /Proton 3.7 Beta/dist/lib/wine/fakedlls/

Game boots up just fine. Performance is questionable.

Compatibility Report

  • Name of the game with compatibility issues: Grand Theft Auto V
  • Steam AppID of the game: 12210

System Information

I confirm:

  • [ ] that I haven't found an existing compatibility report for this game. (N/A)
  • [ ] that I have checked whether there are updates for my system available. (I will check the game with newest Ubuntu release and newest NVidia Driver, this report IS NOT generated based on newest OS and GPU driver version)

Game log

https://gist.github.com/grabmateusz/d0b8b916c27695488aed537e806551a5

Symptoms

First try:

Window that allows to click "Play game" pops up. After clicking game didn't start, same issue as one reported by @Houtworm. I've applied XLiveLess fix, by putting xlive.dll to the directory with the game.

Second try:

After having xlive fix applied, clicking play results in new window, that does not render anything. I went through this thread and applied fixes suggested by @instabilis and I manually copied nvapi files.

Third try:

Xlive fix applied, nvapi fix applied. Game launches, I can see first animation, I can hear music. I can see GTA splash screen:
screenshot from 2018-09-09 17-23-18

Afterwords nothing happens, black screen, game does not respond.

Reproduction

Follow steps described in Symptoms section.

@Mattia98 Thanks mate!
To recap:
apt install intel-microcode to get past securom error 8016 on skylake CPU's
xlive.dll to get past GFWL (generic fix for GFWL, not just for linux/wine)
oibaf PPA/ubuntu (so recent mesa) to get it to run on intel or radeon graphics.
nvapi.dll(.so)? fix to get it to run on Nvidia (black screen hang).
AND:
echo 127.0.0.1 tv.rockstargames.com >> /etc/hosts to get past the second black screen hang on GTA IV.

I have GTA IV EFLC working on both steamos (still using icewm as WM instead of bare steamos session) big picture on a real steam machine with an nvidia gtx960M (zotac sn970) and brewmaster_beta, and ubuntu 18.04 with oibaf ppa on a GPD WIN 2.

I have GTA IV working after the tv.rockstargames.com hack on the steam machine, I still need to confirm this hack on the gpd WIN 2.

The steam controller works fine on the steam machine!

So what's remaining for me:

  • Test if GTA IV and EFLC work in raw steamos session (so no icewm) (to be clear: GTA V doesn't work in a steamos session).
  • Test if GTA IV works on the gpd win 2 using the hosts hack.
  • Figure out why the steam controller and the xpad controller on the gpd win 2 do not work. (Definetly User error, meaning: me).

Edit: running it on nvidia sometimes does have artifacts like blocks you can sometimes see in bad mp4's.
The mesa @ intel looks great though.

@grabmateusz
try:
echo 127.0.0.1 tv.rockstargames.com >> /etc/hosts
as I couldn't find any other thing in your log.
You will notice if you do an ss -nt |grep SYN_SENT
and the one directed to that address sticks out.
I have no idea what happens if you have a https server on localhost though :-)

Nice tl;dr but

xlive.dll to get past GFWL (generic fix for GFWL, not just for linux/wine)

On windows you just update it to the latest version and it works as I said above

@mirh I am sorry to burst your bubble, but none of the GTA's (SA, IV) would start on my fresh windows 10 install on my GPD WIN 2 without additional hacking.
Maybe on older windows systems.
Point is: on windows you need to do additional hacking too. On windows you can install xliveless (it was intended for windows, but helps out on wine too), or you can download and install something from microsoft. So whatever you do, it is always necessary to do that, to get it to even run on windows.
Next to that it requires skylake cpu's to have a certain firmware update running.
Fortunately we can get by by just using the firmware loader, and we do not have to update our bios (some boards will never get a firmware update that fixes the securom issue with skylake cpus).

  • Edit: maybe SA did start, but it certainly did not work with any controller.
  • Edit2: @mirh I do wonder what will happen when you actually install the new versions before installing GTA IV.
    I also do think it would do nothing. As someone already said: tv.rockstargames.com is blocking the startup of GTA IV, as that address is unreachable. This has been going on for a long time. Rockstar could have pointed it to a server that just sends connection reset, making the startup a breeze.
    The only TLC GTA IV got was the expiry of the music licenses, and hence removal of a lot of songs. A shame, because this game is still awesome.

@ardje thanks, I confirm, that now it works for me as well. The game itself is playable after applying all 3 mentioned workarounds:
1) Putting xlive.dll to game dir
2) Copying 4 nvapi files to Proton dir
3) Adding tv.rockstargames.com to /etc/hosts

Game runs well. Thanks guys, hope first 2 steps can be solved by Valve, 3rd step by Rockstar (or maybe hack by Valve in Proton itself?) and GTA IV will be whitelisted, as it's decent game.
(Meanwhile my setup sightly changed, as I installed Ubuntu 18.04.1 + newest drivers available for my card). Here is my current System information.
Thanks everyone for help!

I am sorry to burst your bubble, but none of the GTA's (SA, IV) would start on my fresh windows 10 install on my GPD WIN 2 without additional hacking.

SA has nothing to do with this, and yes it's butchered steaming heap of bugs.
Not working with many controllers (without mods) is not one though, since of course XInput didn't exist in 2005

As someone already said: tv.rockstargames.com is blocking the startup of GTA IV, as that address is unreachable

I don't know the mysteries of whatever c**p they may have added or broke in the game with the last totally unexpected patch but a) people on steam community report successes here and there still b) I was just talking about gfwl

@grabmateusz Define playable. I don't think mine is.

I confirm the game runs really well, except minor little graphic glitches it seems to run perfectly to me. I played for an hour and did the first missions with no trouble.
I played in windowed mode, 1920x1080 (60Hz) and every graphic settings set to High/Very High.
The 3 tips mentioned by @grabmateusz did the trick.

I can confirm that with the short list of fixes made by @grabmateusz it works fine. FPS are smooth with everything in High (not Very High, which I haven't tried) in a computer with a 4th Gen i7, a Nvidia GTX 750 Ti and playing fullscreen at 1366x768. Only some graphical artifacts in text and the less important graphics layers (i.e. the lamp example).

Implementing the fixes takes at most 15' if you are not familiar with any of them.

I'm using Proton 3.7 Beta.

BTW: I've noticed the lights artifacts are gone when I'm forcing LOD Bias using libstrangle

Way to reproduce:

Example: GTA: EFLC localfix I'm currently testing:
~/.config/protonfixes/localfixes/12220.py

from protonfixes import util

def main():
    """ GTA IV: EFLC game
    """
    util.append_argument('-nomemrestrict')
    util.append_argument('-norestrictions')
    util.append_argument('-fullspecaudio')
    util.append_argument('-notimefix')

    # libstrangle
    util.set_environment('LD_PRELOAD', 'libstrangle.so')
    util.set_environment('VSYNC', '-1')
    #util.set_environment('FPS', '59.9')
    util.set_environment('PICMIP', '-1')

Proton 3.16-4 that is meant fix the nvapi issue does __not__ fix the nvapi issue with GTA IV

guys how to fix a graphical glitch next to minimap? And is better use proton 3.16? now I using 3.7-8

Anybody managed to get user music / independence fm working?
The game reads all of my MP3s in the User Music folder as can be deduced by how userfile.dat is being populated with paths to the music files, but I can't seem to get them playing ever.
I expect it's only normal that MP3s playback won't be available by default though, but I don't really know what else to do.
I looked up some issues in here that had mp3 mentioned, and I found some where they suggested to install libmpg123-0:i386 from apt, but I already had that installed even before having the game (including libmpg123-0 / its 64 bit version, I assume).

I'm using Proton 3.7 and with the xlive fix, copying the nvapi files and changing the hosts file works fine. I have experienced some random freezes after switching back and forth to the GTA and noticed that using PROTON_NO_ESYNC=1 helps with that. I also get the lights glitching, but it's nothing that can prevent the game from being played.

I should mention that I'm using nvidia with optirun/primusrun and bumblebee. Since this is not a DX11 (Vulkan) game, it runs just fine with that.

I've been trying to make GTA IV + D9VK work, but got nothing so far.
First I downloaded d9vk-0.13f, set my wineprefix to /home//.steam/steam/steamapps/compatdata/12210/pfx, run the "setup_dxvk.sh install" (extracted from d9vk-0.13f) and tried to run the game. It won't launch. But I had PROTON_LOG=1 so I got the log from the launcher, which is attached to this post. Could someone shed some light into this?
steam-12210.log

This is about getting the game to seamlessly start at all, and the current issue is whatever magic going on between securom/gfwl/rclub.

Don't add useless complexity to it, if you have problems specific to D9VK, nag them.

Game is crashing for me before I can even see the launcher, no error or anything.

gtacrash.log

Kernel: 5.3-rc7
CPU: Ryzen 3700X
GPU: 5700XT

I've tried the xliveless and /etc/hosts workarounds to no avail. I believe this may be related to SecuROM on the new processor, or perhaps the new kernel. Also happens with previous versions of Proton (tested 3.7 as well)

Hello @DougTy, you may be encountering #2927, please give it a read.

Removing xlive, being good for making the game launching, is a bad solution IMO as it removes some important functionality like achievements tracking, multiplayer, etc., and, I believe, it violates ToS. I remember it actually making it work on regular wine installation to some extent, so why not trying to find workarounds.

I can confirm that game refuses to launch on system with Ryzen 5 3600 specifically. I've upgraded my rig recently, and apart from the platform and the RAM nothing really changed. I've also checked the #2927 but even though the patch should be in 5.4 already, I don't see any changes for the better in my case.

proton.log

As explained by the patch creator, GTA4 is also using SLDT in addition to just SGDT, SIDT, and SMSW.
He's currently working on the right approach to fix it.

GTA IV on Steam was updated today to remove GFWL, replaced by the Rockstar Launcher. It worked for me on Proton 5.0-4 with no hacks, although the game still isn't able to read the amount of VRAM correctly (I think a command-line argument is needed for that)

Sound crackling. Any known soultions?

The new launcher isn´t working for me in the latest Proton 5.0-4 version.

Tried (All with Steam Native runtime) :

  • Proton-5.4-GE-1
  • Proton-5.4-GE-1 with gamemoderun %command% -width 3440 -height 1440 -nomemrestrict -norestrictions -percentvidmem 100 -availablevidmem 8192 -noprecache -novblank
  • Proton 5.0-4 with gamemoderun %command% -width 3440 -height 1440 -nomemrestrict -norestrictions -percentvidmem 100 -availablevidmem 8192 -noprecache -novblank
  • Proton-5.4-GE-1 with the dinput8.dll setup, put it in the executable folder, and added WINEDLLOVERRIDES="dinput8=n,b" %command% (so gamemoderun WINEDLLOVERRIDES="dinput8=n,b" %command% -width 3440 -height 1440 -nomemrestrict -norestrictions -percentvidmem 100 -availablevidmem 8192 -noprecache -novblank)

I will try with Proton-5.4-GE-2 and all the previous methods with Steam Fixed Runtime instead.

                   -`                    pm@VIX 
                  .o+`                   ------ 
                 `ooo/                   OS: Arch Linux x86_64 
                `+oooo:                  Kernel: 5.5.10-arch1-1 
               `+oooooo:                 Uptime: 3 hours, 44 mins 
               -+oooooo+:                Packages: 1472 (pacman), 5 (flatpak) 
             `/:-:++oooo+:               Shell: bash 5.0.16 
            `/++++/+++++++:              Resolution: 3440x1440 
           `/++++++++++++++:             DE: Deepin 
          `/+++ooooooooooooo/`           WM: Mutter(DeepinGala) 
         ./ooosssso++osssssso+`          Icons: Papirus-Dark [GTK2/3] 
        .oossssso-````/ossssss+`         Terminal: deepin-terminal 
       -osssssso.      :ssssssso.        Terminal Font: SF Mono Powerline 11 
      :osssssss/        osssso+++.       CPU: AMD Ryzen 5 3600X (12) @ 3.800GHz 
     /ossssssss/        +ssssooo/-       GPU: NVIDIA GeForce GTX 1060 6GB 
   `/ossssso+/:-        -:/+osssso+-     Memory: 4708MiB / 32044MiB 
  `+sso+:-`                 `.-/+oso:
 `++:.                           `-/+/                           
 .`                                 `/                           

Grand Theft Auto 4 - first run on SteamOS

Issue transferred from https://github.com/ValveSoftware/Proton/issues/3667.
@vladislavyuzbekov posted on 2020-03-21T07:20:29:

Compatibility Report

  • Name of the game with compatibility issues:
  • Steam AppID of the game:

System Information

  • GPU: GTX 1060
  • Driver/LLVM version: nvidia 415.27
  • Kernel version:
  • Link to full system information report as Gist:
  • Proton version: 5.0-5

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.

The log is not recorded at this stage.

Symptoms

Game start stops when you install Rockstar games launcher.

Reproduction

Independence FM doesn't work at all. If I put an individual file in the User Music folder, the userfile.dat looks like this
image
If I replace that \\ with \ the radio channel goes completely quiet and doesn't play the ads that would be there if you had your no self supplied music. So I'm guessing it's picking up the music but can not play it.
Additionally, if I add several mp3's, the file looks like this
image
Line ending mixup I assume.
Just in case, this is the hex view of the same file
image

The game freezes easily if you take the cab and don't skip over the ride.
Log of the game after kill -9 on all the processes.

After launching, the Rockstar Games launcher loads the game but only a window with a black screen appears.

After launching, the Rockstar Games launcher loads the game but only a window with a black screen appears.

Yeah, it seems the latest patch (that apparently fixed the 512 mb VRAM bug) broke Proton compatibility completely. A lot of Windows users have also reported that the game is now crashing on start up. There maybe a new patch on the way by Rockstar...

After launching, the Rockstar Games launcher loads the game but only a window with a black screen appears.

I see this too. Using wined3d instead of DXVK (PROTON_USE_WINED3D in user_settings.py) does allow the game to launch, but I haven't tried gameplay yet. Next week I'll try and figure out what's going on.

Can confirm. Passing PROTON_USE_WINED3D=1 %command% as a launch option allows the game to run.

The game still works fine for me here on a 5700XT. Are all the ones affected using a Nvidia GPU?

Nvidia here.

Sound crackling. Any known soultions?

Bump. Am i the only one having such issue?

The game still works fine for me here on a 5700XT. Are all the ones affected using a Nvidia GPU?

Most likely, yes. I have 1070GTX and also have a black screen after the game launches. Spoofing an AMD card fixes the issue for me. (From the logs, I am pretty sure the game hangs on loading nvapi.dll)

Audio issue is fixed by installing dsound.dll replacement by https://www.indirectsound.com/

I did some testing with dxvk with https://github.com/doitsujin/dxvk/pull/1536 applied, the game doesn't freeze on launch any more. Video often stutters though, especially when driving. Not sure what's causing this.
Also some control problems with a 360 pad: pop-ups show keyboard controls until you push the 360 pad, then it shows the 360 buttons. Also, exiting the menu can't be done through controller, have to use escape on the keyboard.

Sound was perfect though. @xDShot, when are you getting crackling sound? All the time?

@mrpippy

Video often stutters though, especially when driving.

Confirming. The only thing that reduces the stutter for me is disabling in-game vsync.

Also some control problems with a 360 pad: pop-ups show keyboard controls until you push the 360 pad, then it shows the 360 buttons.

Also confirming. It also prevents gamepad rumble from working. I looked into the bug some time ago and found out the game sends simulated key presses (F5, I think) twice. But never releases the key. I didn't go far with a fix though except for ignoring the simulated key event.

Also, exiting the menu can't be done through controller, have to use escape on the keyboard.

It can be done if you move a stick to one side a little bit and then press B.

I didn't go far with a fix though except for ignoring the simulated key event.

Lost the patch. But made a similar one: https://github.com/AlexeyProkhin/wine/commit/99e882a125b60d9a2972e96cfb75a10256da8458.

Lost the patch. But made a similar one: AlexeyProkhin/wine@99e882a.

Thanks, I looked at disassembly and the game calls SendInput() with a VK_F8 keydown after some amount of time. I have no idea why, maybe to disrupt or detect cheats (which I think often used F8 as a trigger)? There is code where the game installs its own low-level keyboard hook, my thought is that the game injects a keydown for VK_F8 and then catches it in the hook, if it doesn't arrive that means a cheat is being used. But for me, the game's hook never gets installed. Very weird--a hack like this for Proton might be the best fix.

i cant change the language from english to italian. Have you got any solutions?

But for me, the game's hook never gets installed.

For me too. I didn't find any SetWindowsHookEx(WH_KEYBOARD_LL) calls in the logs except the one from dinput. Assuming it's a part of the game's anticheat engine, maybe the game can't initialise it on wine for some reason, so it never installs the hook.

a hack like this for Proton might be the best fix.

I opened a merge request: https://github.com/ValveSoftware/wine/pull/88

After more disassembly and testing, the problem is that on Windows, keyboard events sent with SendInput() using a virtual-key code will not be received by DirectInput's GetDeviceData() method. If the event is sent using a hardware scan-code (KEYEVENTF_SCANCODE), it shows up as expected.
To complicate matters more, regardless of whether a VK or hardware scan code is used in SendInput(), the event's state is correctly shown in the DirectInput GetDeviceState() method. Very weird.

I'll work on a proper fix for this.

"Unable to launch game, please verify your game data."

Getting this message after fresh install of the game. It's my first time installing this game on Linux. I'm running elementaryOS.

The game runs now with the RC but for some reason the terrain loads extremely slowly
20200404204937_1
20200404204944_1

Alright the loading issue was fixed with -availablevidmem 6144. The game still sees only 512MB as its hard limit. Would it be reasonable to add a hack to proton akin to this https://github.com/colistro123/GTAIV_ExtendVidMem to make the game see your true VRAM value?

Are frequent crashes and random hang-ups a Windows issue as well?

I think I have fixes for both the controller issue and VRAM detection. If all goes well they should be in Proton 5.0-7.

Here's the patch for the controller issue, hopefully it'll be upstream soon: https://source.winehq.org/patches/data/183269

For VRAM detection, the game first tries to use nvapi or atiadlxx.dll, depending on the GPU vendor. When that fails it then falls back to the Intel codepath and uses DXGI (IDXGIAdapter::GetDesc()), but requires DedicatedVideoMemory to be very small and takes SharedSystemMemory to be the VRAM size. I've attached a patch that should fix this, I'd appreciate some testing if anyone wants to try it out.
0001-HACK-dxgi-Swap-around-memory-sizes-for-GTA-IV.patch.txt

@Managor have you figured it out with custom music not playing?

I gave up after making those comments. Haven't seen anyone post the userfile.dat from a windows install so I have no point of reference either.

Custom music also doesn't work in GTA V, I believe because of unimplemented parts of Media Foundation. There's been a lot of work in that area lately, I'll look into what more is needed.

Game was working until recently with the launch options:
PROTON_NO_ESYNC=1 PROTON_USE_D9VK=1 %command% -width 3840 -height 1600 -nomemrestrict -norestrictions -percentvidmem 100 -availablevidmem 8192 -noprecache -novblank
However since Proton 5.0.6 the game loads to a black window and doesn't enter fullscreen although the mouse is captured.
Glorious Eggroll's Proton-5.6-GE-2 build is working great, without requiring d9vk. Still needs to specify the amount of video memory tho.

Hello @howels, please add PROTON_LOG=1 to your set of env variables in the game's launch options and drag and drop the generated $HOME/steam-$APPID.log into the comment box. Also, please copy your system information from Steam (Steam -> Help -> System Information) and put it in a gist, then include a link to the gist in this issue report.

As a side note, PROTON_USE_D9VK doesn't do anything with Proton 5.0 going forward. The equivalent has been enabled by default.

@kisak-valve here is the log
steam-12210.log
and here is my system info: https://gist.github.com/howels/5d64e4a2a9964a3ea234359c2d1c67d8

I have played a lot recently on prior 5.0.x releases but the 5.0.6 release seems to give me a blank window and display. The forked release Proton-5.6-GE-2 works fine.

@howels Proton 5.0-6 does not include the updated DXVK version needed to run the game on NVIDIA systems, but 5.6-GE-2 probably does.
With stock Proton, PROTON_USE_WINED3D=1 should allow it to launch.

With stock Proton, PROTON_USE_WINED3D=1 should allow it to launch.

Can confirm that this currently eliminates a blackscreen issue (affecting performance though), 5.0.6 and NVidia Optimus here.

The game freezes when trying to play Episodes from Liberty City / The Lost and the Damned. A short cutscene plays where the audio doesn't match what's on screen and then hangs on a black screen. If you skip the cutscene the game is infinitely loading "Clean and Serene".

steam-12210.log
sysinfo.txt

The Ballad of Gay Tony plays but the audio doesn't match what's happening.

With 5.0-7, the game runs but has performance problems when you drive a car. I feel a lot of stuttering.

On the steam forums for GTA IV, I've seen reports of stuttering even for windows. Might not be a proton problem.

With 5.0-7, the game runs but has performance problems when you drive a car. I feel a lot of stuttering.

Try '-nocache' in "Properties" -> "Set Launch Options" for the game, it eliminated an 'unplayable' stutter for me.

Thanks a lot for this tip. It works great now
Cheers!

I did what @thaewrapt wrote and the game works now like a charm under Proton 5.0.7.

Good news is that a HUD fix was merged into DXVK a few hours ago https://github.com/doitsujin/dxvk/issues/1608

@aeikum I uninstalled the game and installed it again and now I'm getting the error:

image

Log file: steam-12210.log

@aeikum I uninstalled the game and installed it again and now I'm getting the error:

image

Log file: steam-12210.log

https://github.com/GloriousEggroll/proton-ge-custom/releases/tag/5.8-GE-2-MF resolves this issue.

@kisak-valve according to information displayed during installation today It turned out that all the saves I made a few days ago weren't uploaded to Social Club and it's empty although I checked the option to keep saves on Rockstar Games server but fortunately they were uploaded to Steam Cloud so I haven't to start the game from the beginning.

@aeikum I uninstalled the game and installed it again and now I'm getting the error:
image
Log file: steam-12210.log

https://github.com/GloriousEggroll/proton-ge-custom/releases/tag/5.8-GE-2-MF resolves this issue.

@kisak-valve according to information displayed during installation today It turned out that all the saves I made a few days ago weren't uploaded to Social Club and it's empty although I checked the option to keep saves on Rockstar Games server but fortunately they were uploaded to Steam Cloud so I haven't to start the game from the beginning.

I switched back to Proton 5.0.7 and the issue doesn't occur anymore.

GTA IV offline mode inaccessible

Issue transferred from https://github.com/ValveSoftware/Proton/issues/4063.
@sipsu posted on 2020-07-13T01:06:44:

Compatibility Report

  • Name of the game with compatibility issues: Grand Theft Auto IV: The Complete Edition (Rockstar launcher)
  • Steam AppID of the game: 12210

System Information

  • GPU: GeForce GTX 650
  • Driver/LLVM version: nvidia 390.138
  • Kernel version: 4.15.0-109-generic
  • Proton version: 5.0-9

I confirm:

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

steam-12210.log

Symptoms

The game will not allow offline mode. Game does not allow saves and SocialClub says "Offline Mode Not Available".
steam-12210.log

Rockstar launcher (opened independently via proton) runs successfully, but does not recognized GTA IV as being owned or installed (as it does under Windows).

To open RockStar launcher:
PRELOAD=:/home/user/.steam/ubuntu12_32/gameoverlayrenderer.so:/home/user/.steam/ubuntu12_64/gameoverlayrenderer.so STEAM_COMPAT_DATA_PATH="/home/user/.steam/steam/steamapps/compatdata/12210/" /home/user/.steam/steam/steamapps/common/Proton\ 4.11/proton waitforexitandrun /home/user/.steam/steam/steamapps/compatdata/12210/pfx/drive_c/Program\ Files/Rockstar\ Games/Launcher/LauncherPatcher.exe

Compatibility Report

  • Name of the game with compatibility issues: Grand Theft Auto IV: The Complete Edition (Rockstar launcher)
  • Steam AppID of the game: 12210

System Information

  • GPU: Radeon RX 570 4G
  • Driver/LLVM version: mesa 20.1.7-1
  • Kernel version: 5.8.7-arch1-1
  • Link to full system information report as Gist: Link to report
  • Proton version: 5.0-9

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

The Rockstar launcher cannot go into online mode. I have verified my game cache and everything, but it does not work. Because of this issue, I am not allowed to start the game or sign into my Rockstar account.
Updated steam-12210.log
GTA IV Error

Reproduction

  • Download the game
  • Launch the game, which will require you to install the Rockstar launcher.
  • Finish the launcher installation and then run the game
  • The Rockstar launcher is unable to go online and it becomes impossible to play the game.

Side note

  • This issue does not occur in Proton 4.11-13. It's probably a regression in 5.0-9.

@howels Proton 5.0-6 does not include the updated DXVK version needed to run the game on NVIDIA systems, but 5.6-GE-2 probably does.
With stock Proton, PROTON_USE_WINED3D=1 should allow it to launch.

Hmm. What about 5.0-9? As it is, can't seem to get past the black start screen here if I don't use PROTON_USE_WINED3D=1. I suppose this comes with performance impacts, right (DXVK/D9VK is faster AIUI)? Is the DXVK patch merged into mainline Proton yet? Do we have any idea which Proton version will be the first to include it (assuming it's not already in)?

FWIW, I tried with 5.13-1 (which doesn't work at all), and with 5.9-GE-8-ST which doesn't work at all in WINED3D mode (freezes when pressing "Play" at DLC selection menu) and has the same "black screen" issue as stock proton in DXVK mode.

EDIT: My next candidate was 4.12, with which I was even more unsuccessful (basically same as GE's fork - freezes in WINED3D mode at the DLC selection menu). So I'm not sure it's a regression, @kisak-valve :-/

EDIT2: On the other hand, I suspect this new "Soldier" runtime that 5.13-1 uses makes the whole Proton thing kind of different? Is there a guide on "what to expect" (and "how to fix common/expected issues") with 5.13-1? Some sort of "migration guide" for SteamPlay users? :-)

Retried GTAIV (main story) with Proton 5.13. Works pretty much ok, and -nocache workaround isn't needed no more (not sure what exactly caused this enhancement, though).

I just tried and it didn't seem to work, I'll try again tonight. Did you
need env vars, and what's your GPU?

EDIT: I read Nvidia Optimus above, I see. What about WINED3D, do you still need it for the black screen thing?

Since 5.0.7 I'm playing the DXVK version only, no WINED3D in other words (and, actually, since there is no more cache issue, "Launch Options" are totally empty).

PS The GPU model is MX130.

@thaewrapt I found why 5.13 doesn't work here, I'm hitting #4266 unfortunately :-/

Well, I have excellent and terrible news.

The excellent news is, somehow after reinstalling 5.0-9 (and opting out of "next" beta, which might have helped?), the game works properly and I don't get stuck on a black screen when starting it without WINED3D any longer. It performs way better and I can max out the graphical settings without issue (you'd expect so, running a 12 year old game on a RTX2060...).

The terrible news is, Rockstar lied to us and doesn't actually backup our saves to the cloud. I've had to delete the prefix a few times during these tests... there goes 50 hours of gameplay or so. Meh. I'll speedrun the game back to where I was, I guess...

EDIT: More precisions. It's not about reinstalling 5.0-9. It's about not suspending the laptop after a fresh boot. Friggin' Nvidia drivers again. >__<

Retried GTAIV (main story) with Proton 5.13. Works pretty much ok, and -nocache workaround isn't needed no more (not sure what exactly caused this enhancement, though).

@thaewrapt it has been solved here https://github.com/doitsujin/dxvk/pull/1714

Was this page helpful?
0 / 5 - 0 ratings

Related issues

kforney picture kforney  Â·  3Comments

prototype99 picture prototype99  Â·  3Comments

shaphanpena1 picture shaphanpena1  Â·  3Comments

raikirii picture raikirii  Â·  3Comments

lucifertdark picture lucifertdark  Â·  3Comments