Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Phasmophobia (739630) #4295

Open
2 tasks done
Nereuxofficial opened this issue Oct 19, 2020 · 65 comments
Open
2 tasks done

Phasmophobia (739630) #4295

Nereuxofficial opened this issue Oct 19, 2020 · 65 comments
Labels
Game compatibility - Unofficial Games not expected to work without issues Regression Confirmed working on an older version of Proton

Comments

@Nereuxofficial
Copy link

Nereuxofficial commented Oct 19, 2020

Compatibility Report

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

System Information

  • GPU: RX 590
  • Driver/LLVM version: 4.6 Mesa 20.3.0-devel (git-9a062383e3)
  • Kernel version: 5.8.9-zen1-1-zen-vfio
  • Link to full system information report as Gist
  • Proton version: 5.0.9 but it also doesnt work with GloriousEggrolls Proton-5.9-GE-8-ST

Proton Log

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 voice recognition doesn't work.
Some user on ProtonDB wrote that it's due to Cortana being used for the voice recognition in the game, but i can confirm that it works fine on Windows.

Reproduction

Run the game, go into Options -> Audio -> Voice Recognition -> Test. It should not work.

@kisak-valve kisak-valve added the Game compatibility - Unofficial Games not expected to work without issues label Oct 19, 2020
@earldbjr
Copy link

Just to make sure everyone's on the same page, Phasmophobia voice recognition uses Microsoft's online Cortana service.

@FurtadoPires
Copy link

Just to make sure everyone's on the same page, Phasmophobia voice recognition uses Microsoft's online Cortana service.

Is it possible to use something like MycroftAI to translate Cortana Service to Linux like Wine does?

@dmbasso
Copy link

dmbasso commented Jan 26, 2021

Just like this report on ProtonDB, after splash screen and loading (both are visible), I get just a black screen with the grey circle/aim cue (sound's working fine tho). I tried with Proton 4.2, 5.13-5, and Experimental, all to the same result. I have a GeForce GT 1030 with nvidia-driver-390 on Linux Mint.

@kisak-valve
Copy link
Member

Hello @dmbasso, the nVidia 390 driver series is older than the support cutoff for Proton. Please update to a newer driver series.

@dmbasso
Copy link

dmbasso commented Jan 27, 2021

Thanks for point that out, @kisak-valve, I mistakenly thought I was using the recommended drivers. I've updated to nvidia-driver-460, but the problem with Phasmophobia persists.

@FurtadoPires
Copy link

FurtadoPires commented Jan 27, 2021

@dmbasso your video card probably can't handle the game.

According to the game specs, it require a GTX 970 at minimum to run this game.

Edit: nope, apparently it can (according to youtube)

@semplar2007
Copy link

semplar2007 commented Feb 28, 2021

Thanks for point that out, @kisak-valve, I mistakenly thought I was using the recommended drivers. I've updated to nvidia-driver-460, but the problem with Phasmophobia persists.

Hey, I ran into the same problem: after game loaded, black screen white circle in the center appears, I can walk, I have sound, but basically no graphics is shown. It happened to me with wine-staging 4.21.
I tried wine-staging 5.22 and it worked out of the box, (so the issue is fixed!), no additional libraries needed, with my GTX 1050 (Laptop) I got decent FPS. No voice recognition of course, because Linux has no Cortana replacement, so ghost commands like "How old are you?" don't work.

@swaggestfam
Copy link

swaggestfam commented Mar 6, 2021

Replying to #4295 (comment)

Hiya, I have the exact same problem as you (with the white circle and black screen with audio and no graphics), but I am using wine-staging 6.3 so would that be a problem? I am using intel on board graphics and my original plan was to buy a proper graphics card, however you said you used a GTX 1050 and had the same issues that you solved with changing your wine-staging, so I don't want to buy a new graphics card if it won't resolve my issue. Thank you :)

@semplar2007
Copy link

semplar2007 commented Mar 7, 2021

Replying to #4295 (comment)

Hey, just try wine-staging 5.
But after few hours of playing I realized the game was not much playable this way on GTX 1050 anyway. Much glitches: no sanity percents shown, movements can be VERY laggy, and no voice recognition, of course.
I ended up dual-booting Windows and playing it properly, works like a charm on the same hw setup.

@swaggestfam
Copy link

Replying to #4295 (comment)

Hey, just try wine-staging 5.
But after few hours of playing I realized the game was not much playable this way on GTX 1050 anyway. Much glitches: no sanity percents shown, movements can be VERY laggy, and no voice recognition, of course.
I ended up dual-booting Windows and playing it properly, works like a charm on the same hw setup.

Ah thank you very much, i'll give it a go and if not I'll try windows like you said. Have a great day :)

@kisak-valve
Copy link
Member

Phasmophobia (739630)

Issue transferred from #5122.
@tr1ckyv2 posted on 2021-08-28T10:49:54:

Compatibility Report

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

System Information

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.

steam-739630.log

Symptoms

FPS is VERY low compared to windows, always under than 30 fps and sometimes 8-2 fps
example: i get always higher than 60 fps on windows.

current distro: Endeavour OS (arch linux distro)

Reproduction

FPS

@Patola
Copy link

Patola commented Jan 23, 2022

It seems that the latest update stopped the game from working in VR. Tried with different versions of proton and had the same crash at start, segfaulting on vrclient.
PROTON_LOG follows (after a clean prefix). I might rerun it with other options if needed.
steam-739630.log

@Patola
Copy link

Patola commented Jan 30, 2022

Any news on the issue? VR is still non-functional. I noticed that it creates a directory with some files that might contain useful information and there is also a minidump. I've zipped the three files (error.log, Player.log and crash.dmp) and I am attaching it to this message. I might also provide the accompanying proton-log if needed but should be the same as the previous one.
phasmophobia_crash_reports.zip

@earldbjr
Copy link

@Patola I don't have the time to fire it up and check right now, but going by protondb it seems people aren't sharing this problem.

Two bits stand out to me from your log:
GameAssembly.dll caused an Integer Divide by Zero (0xc0000094) in module GameAssembly.dll at 0033:61dab59b.
and
No mono DLL path set. This app is either running IL2CPP, or the crash occurred before mono was initialized.

@Patola
Copy link

Patola commented Jan 30, 2022

Thanks, @earldbjr. Indeed, it seems that something accumulated from updates -- maybe due to my changing proton 6.3-8 to proton experimental bleeding edge and then back to 6.3-8?. I uninstalled the game and removed the remaining files in the game directory, then downloaded and installed it again completely from scratch. It ran successfully this time.

@choelzl
Copy link

choelzl commented Apr 1, 2022

Note: Wine 7.4/7.5 Announcement has definitions for windows.media.speech, potentially fixing the voice recognition soon once the implementation is complete

Read more

@earldbjr
Copy link

earldbjr commented Apr 7, 2022

New VR update for Phasmophobia dropped today, most notably it uses openXR now.
I've got two rigs, one of which renders pancake mode on the desktop when VR is chosen (leaving the "Next Up" screen on the index).
The other pops up an error "Phasmophobia does not support VR. It will appear on your desktop and may affect VR performance." after which it crashes steamvr with error -203 with no frames rendered.

Anyone having similar issues or can confirm they have it working as of today?

@Patola
Copy link

Patola commented Apr 8, 2022

Here it's working correctly. The only issue is -- as with every OpenXR game -- the game does not exit properly, it gets stuck and I have to force-close it. Valve Index, 5900X, Arch Linux, Mesa 22.0.1.

@earldbjr
Copy link

earldbjr commented Apr 8, 2022

Here it's working correctly. The only issue is -- as with every OpenXR game -- the game does not exit properly, it gets stuck and I have to force-close it. Valve Index, 5900X, Arch Linux, Mesa 22.0.1.

Thanks for the response. Are you using Steam's openXR implementation as is? Did you have to do any tweaking to get it to work? I've got a couple games now that claim they can't find it. Index, 2080TI, Kubuntu, Proprietary drivers.

@Patola
Copy link

Patola commented Apr 8, 2022

Yeah, I am currently using SteamVR beta and Proton 7.0-1. In my previous answer I was using Proton 6.3-8, I just noticed and changed it now. Apart from that, no tweaking.
Are you using the latest Kubuntu (21.10)?
If you need any other details, feel free to ask. I think you should try and run the game with launch options PROTON_LOG=1 %command% and paste the resulting steam-739630.log here for us to try and see where you're having issues.

@earldbjr
Copy link

earldbjr commented Apr 8, 2022

Thanks for the offer, here's my log:
https://pastebin.com/WU7Yn4b3

I think the problem is specifically openXR related. When I try to run Vermllion, which also uses openXR exclusively, it throws an error that no openXR can be found. When I saw on Phasmo's trello that they were moving to openXR some months ago I had a feeling I wouldn't be able to play it once the update went live, and sure enough...

I've already set SteamVR settings->Developer-> "Set SteamVR as OpenXR runner"

I've tried multiple proton versions, including experimental.
Tried steamvr beta.
Verified game files.

Nvidia driver is the recent, 510.47.03

I can't find anything on google related to reinstalling the openXR implementation, nor really anything to help me troubleshoot.

@Patola
Copy link

Patola commented Apr 8, 2022

It's weird indeed. At first glance your log does not seem too weird -- even the dump_unwind parts also reflect on my own proton log. I will have a full day at work today and even more tomorrow, but given time I will try and get to the bottom of your issue, if someone else doesn't do that first.

In the meanwhile, have you tried purging the steamapps/compatdata/739630 directory and running the game again? This way the game reconstructs the proton prefix and this reinstalling often "cleans" the game files in a way that makes it work.

I don't own Vermillion but I've added to my wishlist. Will buy it eventually.

@Patola
Copy link

Patola commented Apr 8, 2022

BTW, if possible, please also disable gamemode and change to regular stable Proton 7.0-1 (instead of Proton Experimental that you are using) before purging 739630. This way we get the lowest amount of variables.

Also, although I have an AMD, it's likely that I will make VR working on a separate NVIDIA laptop I have quite soon. If this issue is not resolved by then, I'll also test this on the NVIDIA laptop.

@earldbjr
Copy link

earldbjr commented Apr 8, 2022

Changed to Proton 7.0-1
Purged the indicated folder
Removed gamemoderun
Started SteamVR
Pressed play on Phas, was greeted with the "pancake or vr" options, plus a new one:
Play Phasmophobia in VR (exc. Steam Home)

Steam Home hadn't come up yet, perhaps that's the reason.

Selected the "exc. Steam Home" option, box came up instantly reporting that Phas is a non-VR game.
Pressed Cancel.
Selected the usual "in vr" option, proton 7.0-1 ran it's initial setup.
Windowed game window came up on desktop, black screen.
5 seconds later SteamVR shows error -203 (This error number specifically was a constant problem for a long time, resolved by the release of a new nvidia driver).
Terminated phas, also stopped it from steam. Black window disappeared, steamVR somehow recovered from the -203 error, resumed functioning.

Steam log looks the same (minus the gamemoderun issues), same initial error code 6ba.

@Patola
Copy link

Patola commented Apr 10, 2022

Hi, @earldbjr, I have started phasmphobia in SteamVR mode using the launch line WINEDEBUG=+openxr %command%. Everything went smoothly and I selected multiplayer at the start screen and then browsed the European servers and joined a match with some people. Then I quit the game. It got stuck (OpenXR games always do at the end) and then I force-killed it. I am attaching the resulting log as a zip file because it ended up quite large (50 MB). See if you can find something by comparing to what happens to you. If needed, upload your log using the same +openxr flag.
steam-739630.zip

@Patola
Copy link

Patola commented Apr 10, 2022

BTW I noticed that when I start Phasmophobia via the desktop it now offers me three options. I choose the SteamVR option (not the one excluding SteamVR home).

@DomiStyle
Copy link

I tried playing this game in VR after a long time but can't get it to run, it always starts in desktop mode and SteamVR gets stuck in the launching screen.

Here's the log: steam-739630.log

It yields the same error as shown above:

Error [GENERAL |  | OpenXR-Loader] : RuntimeManifestFile::FindManifestFiles - failed to determine active runtime file path for this environment

It worked previously but I last played in VR a long time ago. Did anyone get it to work since this was first reported?

@Patola
Copy link

Patola commented Jun 12, 2022

There has been a new patch on the game that supposedly makes voice recognition work by dropping the microsoft windows.speech API and using some server-side requests: https://steamcommunity.com/app/739630/eventcomments/3421060714389955228/ -- I guess Bernard Kölbl might be upset after so much effort put into this API. I think this latest patch also warrants some new tests on NVIDIA people. I've tested it today with a friend and the game worked correctly -- although the speech recognition didn't (and this seems to be happening to Windows users too, so in all likelihood it's a game bug still in progress).

I'll soon test it from my NVIDIA rig too. Last time it was not working.

@ZarathustraDK
Copy link

ZarathustraDK commented Jun 13, 2022

Replying to #4295 (comment)

I am experiencing the same thing. No matter which of the three launch options you pick, the game always opens in desktop mode.

@earldbjr
Copy link

earldbjr commented Jun 13, 2022

Replying to #4295 (comment)

The wife and I (Separate computers) are experiencing the same thing. It started with the switch to openxr.

RTX 2080TI w/ driver 510.73.05

@Patola
Copy link

Patola commented Jun 13, 2022

Tried again in my NVIDIA rig (RTX 3070 with driver version 515.48.07) . As before, the game starts in pancake mode, not VR. And again, in my AMD the game starts in VR mode correctly.

@ZarathustraDK
Copy link

I followed earlier advice and set launch parameter as WINEDEBUG=+openxr %command$ while also setting SteamVR as default OpenXR launcher under SteamVR settings -> Developer. This made it possible to launch the game in VR by first starting SteamVR and then either using the home-screen or Steam to start Phasmophobia in VR-mode.

@Patola
Copy link

Patola commented Jun 15, 2022

I followed earlier advice and set launch parameter as WINEDEBUG=+openxr %command$ while also setting SteamVR as default OpenXR launcher under SteamVR settings -> Developer. This made it possible to launch the game in VR by first starting SteamVR and then either using the home-screen or Steam to start Phasmophobia in VR-mode.

Were you able to change the default OpenXR launcher? AFAIK on Linux it's only SteamVR.
Also, setting WINEDEBUG=+openxr %command$ only allows for better debug information, should not interfere in whether the game works or not (unless there's some race condition, where slowing things down with logging could help -- but this is rare). Can you send the results of your steam-739630.log file since it started working now? What is your configuration -- more importantly, do you use an AMD or NVIDIA GPU?

@SeanRamey
Copy link

I have an issue with running Phasmophobia and Discord at the same time. If I do, as soon as you load into the level, or out of a level, the microphone stops working completely (system wide). If you don't run Discord, everything works fine.

@davispuh
Copy link
Contributor

For me it launched fine but once I tried to start playing it would crash when level loading almost completed (90%+)

[...]
ERROR (VoskAPI:Model():model.cc:122) Folder 'Z:/mnt/Games/Steam/steamapps/common/Phasmophobia/Phasmophobia_Data/StreamingAssets\LanguageModels/English' does not contain model files. Make sure you specified the model path properly in Model constructor. If you are not sure about relative path, use absolute path specification.
Crash!!!
Starting Vosk voice recognition for language: English
UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:Log(Object)
ੲ੬ੲੴ੭੧ੳ੭੯੨੫:MoveNext()
System.AsyncCallback:Invoke(IAsyncResult)
System.Threading.ExecutionContext:RunInternal(ExecutionContext, ContextCallback, Object, Boolean)
System.Runtime.CompilerServices.MoveNextRunner:Run()
System.Action:Invoke()
System.AsyncCallback:Invoke(IAsyncResult)
System.Threading.Tasks.AwaitTaskContinuation:RunCallback(ContextCallback, Object, Task&)
System.Threading.Tasks.SynchronizationContextAwaitTaskContinuation:Run(Task, Boolean)
System.Threading.Tasks.Task:FinishContinuations()
System.Threading.Tasks.Task`1:TrySetResult(TResult)
System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:SetResult(TResult)
Recognissimo.Components.੭੭ੴੰ੥੥ੰੳੲੲ੩:MoveNext()
System.AsyncCallback:Invoke(IAsyncResult)
System.Threading.ExecutionContext:RunInternal(ExecutionContext, ContextCallback, Object, Boolean)
System.Runtime.CompilerServices.MoveNextRunner:Run()
System.Action:Invoke()
System.AsyncCallback:Invoke(IAsyncResult)
UnityEngine.WorkRequest:Invoke()
UnityEngine.UnitySynchronizationContext:Exec()

Material TanglewoodMapRT doesn't have _Stencil property
UnityEngine.Logger:Log(LogType, Object, Object)
UnityEngine.Debug:LogWarning(Object, Object)
UnityEngine.UI.StencilMaterial:LogWarningWhenNotInBatchmode(String, Object)
UnityEngine.UI.StencilMaterial:Add(Material, Int32, StencilOp, CompareFunction, ColorWriteMask, Int32, Int32)
UnityEngine.UI.MaskableGraphic:GetModifiedMaterial(Material)
UnityEngine.UI.Graphic:get_materialForRendering()
UnityEngine.UI.Graphic:UpdateMaterial()
UnityEngine.UI.Image:UpdateMaterial()
UnityEngine.UI.Graphic:Rebuild(CanvasUpdate)
UnityEngine.UI.CanvasUpdateRegistry:PerformUpdate()
UnityEngine.AI.OnNavMeshPreUpdate:Invoke()
[...]
========== OUTPUTTING STACK TRACE ==================

0x000000017DBA5F30 (libvosk) _ZN5Model3RefEv // Model::Ref()
0x000000017DB9B1F9 (libvosk) _ZN15KaldiRecognizerC1EP5ModelfPKc // KaldiRecognizer::KaldiRecognizer(Model*, float, char const*)
0x000000017DBACC23 (libvosk) vosk_recognizer_new_grm
ERROR: SymGetSymFromAddr64, GetLastError: 'Invalid handle.' (Address: 0000000061E8965F)
0x0000000061E8965F (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 00000000640A2D80)
0x00000000640A2D80 (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 00000000615369B1)
0x00000000615369B1 (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 0000000062B7F9B2)
0x0000000062B7F9B2 (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 00000000615369B1)
0x00000000615369B1 (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 0000000061430934)
0x0000000061430934 (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 000000006189237B)
0x000000006189237B (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 0000000061892490)
0x0000000061892490 (gameassembly) (function-name not available)
ERROR: SymGetSymFromAddr64, GetLastError: 'Success.' (Address: 00000000615369B1)
0x00000000615369B1 (gameassembly) (function-name not available)
0x00000000610F7ADC (gameassembly) WriteZStream
0x00000000610B3B80 (gameassembly) UnityPalGetTimeZoneDataForID
0x0000000061091BC4 (gameassembly) UnityPalGetTimeZoneDataForID
0x000000006107ADA2 (gameassembly) il2cpp_value_box
0x000000006107BFB3 (gameassembly) il2cpp_value_box
0x000000007B62C9E9 (kernel32) BaseThreadInitThunk
0x000000017005F627 (ntdll) RtlUserThreadStart

========== END OF STACKTRACE ===========
[...]

I figured out that if I open winecfg and remove Z:\ driver letter and add game's path directly with like D:\ to be /mnt/Games/Steam/ then it loaded and started working fine.

@kisak-valve
Copy link
Member

Hello @davispuh, it might be interesting to test if setting the game's launch options to PROTON_SET_GAME_DRIVE=1 %command% has a similar effect to your workaround.

@davispuh
Copy link
Contributor

Hello @davispuh, it might be interesting to test if setting the game's launch options to PROTON_SET_GAME_DRIVE=1 %command% has a similar effect to your workaround.

Okay so just setting PROTON_SET_GAME_DRIVE=1 %command% is not enough because somehow Z:\ letter is still used. Need to remove it and start game once without it (from right drive letter), then if it's readded back it still works fine because it says with using steam's S:\ from previous time.

@earldbjr
Copy link

earldbjr commented Dec 30, 2022

Has been ~9 months since the update switching the game to openxr. Nothing I've tried in all this time (including even switching from kubuntu to manjaro!) has allowed me to start the game in vr mode again. Steamvr still crashes with error - 203.

Figured I'd give this a bump to see if any of the others suffering this problem found a solution.

Happy Holidays!

@UFeindschiff
Copy link

After some further testing, it appears to be a bug in Proton not exposing some GPU capabilities properly when using an nvidia GPU, causing the SteamVR OpenXR runtime to not work through Proton at all. Other titles like FOREWARNED are affected as well. This only happens with an nvidia GPU and works fine with an AMD one.

This can be seen in Phasmophobia's logs located at steamapps/compatdata/739630/pfx/drive_c/users/steamuser/AppData/LocalLow/Kinetic Games/Phasmophobia/Player.log where it fails to determine some capabilities on nvidia, but succeeds to do so on AMD

@kisak-valve
Copy link
Member

Phasmophobia no longer works on 8.0-2 and above as well as crashing on lower versions

Issue transferred from #6895.
@Veikrom posted on 2023-06-30T02:05:49:

Compatibility Report

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

System Information

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

When attempting to launch a game like Phasmophobia or I get the following error

Failed to initialize graphics. Make sure you have DirectX 11 installed, have up to date drivers for your graphics card and have not disabled 3D acceleration in display settings. InitializeEngineGraphics failed

Reproduction

Start the game

steam-739630.log

@kisak-valve
Copy link
Member

Hello @Veikrom, Proton 8.0 and newer requires that the video driver provide Vulkan 1.3. The NVIDIA 470 series video driver provides Vulkan 1.2, which is too old for continued support. Please update your video driver.

@ryannathans
Copy link

Game no longer runs on Proton 8 and above (tried experimental, GE proton 8-22, proton 8.0-4) but works fine on proton 7

Hangs after splash screen on launch before Kinetic Games logo but after phas logo

proton log:
steam-739630.log

system info: https://gist.github.com/ryannathans/6a789076e939b12d320b01a543af2c62
https://gist.github.com/ryannathans/831fd43e072034112bac66afb06453b7

Kernel 6.5.6
Mesa 23.2.1
AMD 6900XT

@ryannathans
Copy link

Crash only occurs when my joystick is plugged in (lol)

My joystick is a mad catz fly 5

Proton 8.0-4 works fine with this game when the joystick is unplugged

@kisak-valve kisak-valve added the Regression Confirmed working on an older version of Proton label Oct 31, 2023
@earldbjr
Copy link

Just leaving this here in case it helps anyone else. Tried every single thing I could think of, followed every scrap of help offered online, nothing helped. Upgraded my graphics card from a NVidia 2080TI to an AMD 7900XTX and phas just started working out of the box.

So no idea what the actual problem was, but at least for me it was specific to using a team green card.

@alasky17
Copy link
Collaborator

@ryannathans We've made some improvements to fix crashing when there are a lot of devices connected. Could you see if Proton Experimental/Proton 8.0-5rc (currently a beta on the 8.0 branch) fixes the crashing? If not, I suspect that you could be running into #7284. @ivyl wrote some instructions for gathering the information on your mad catz fly 5 controller that can confirm if you are running into the same bug - #7284 (comment) If you could attach that output information for your controller, it would be greatly appreciated :)

@UFeindschiff
Copy link

Hi, I am having the same issue that when I have my joystick (06a3:0464 Saitek PLC Cyborg Evo) connected, many Unity games (including Phasmophobia) completely fail to start on Proton 8 and Experimental and only show a black screen which lasts forever. This is a Proton regression as Proton 7.x is able to launch the game with the joystick plugged in. This is not an exclusive issue to Phasmophobia and also affects other games like Ghost Exorcism Inc or Lethal Company.

I have tried the Proton 8.0-5 beta branch yet the issue persists.

Should I open a seperate ticket for this as the issue is not exclusive to Phasmophobia or should this just stay tracked here as other players have already reported a similar problem?

@ryannathans
Copy link

ryannathans commented Dec 26, 2023

@alasky17 it looks like proton experimental indefinitely hangs on launch now if this joystick device is plugged in.

not sure if it matters but I also have the logitech unifying receiver that presents a HID tree of devices - that has caused similar issues before (but works fine now)

below you'll find debug info for the joystick, hope it helps
Bus 003 Device 007: ID 0738:1302 Mad Catz, Inc. Mad Catz F.L.Y.5 Stick
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0738 Mad Catz, Inc.
  idProduct          0x1302 
  bcdDevice            1.33
  iManufacturer           1 Mad Catz
  iProduct                2 Mad Catz F.L.Y.5 Stick
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0022
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     101
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
Device Status:     0x0000
  (Bus Powered)
[    5.224478] hid-generic 0003:0738:1302.0009: input,hidraw8: USB HID v1.11 Joystick [Mad Catz Mad Catz F.L.Y.5 Stick] on usb-0000:09:00.3-3/input0
ls -lah /dev/hidraw8      
crw------- 1 root root 236, 8 Dec 26 18:42 /dev/hidraw8
# device 0:0
# 0x05, 0x01,                    // Usage Page (Generic Desktop)        0
# 0x09, 0x04,                    // Usage (Joystick)                    2
# 0xa1, 0x01,                    // Collection (Application)            4
# 0x09, 0x01,                    //  Usage (Pointer)                    6
# 0xa1, 0x00,                    //  Collection (Physical)              8
# 0x05, 0x01,                    //   Usage Page (Generic Desktop)      10
# 0x09, 0x30,                    //   Usage (X)                         12
# 0x09, 0x31,                    //   Usage (Y)                         14
# 0x15, 0x00,                    //   Logical Minimum (0)               16
# 0x26, 0xff, 0x03,              //   Logical Maximum (1023)            18
# 0x75, 0x0a,                    //   Report Size (10)                  21
# 0x95, 0x02,                    //   Report Count (2)                  23
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              25
# 0x09, 0x35,                    //   Usage (Rz)                        27
# 0x15, 0x00,                    //   Logical Minimum (0)               29
# 0x26, 0xff, 0x00,              //   Logical Maximum (255)             31
# 0x75, 0x08,                    //   Report Size (8)                   34
# 0x95, 0x01,                    //   Report Count (1)                  36
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              38
# 0x09, 0x32,                    //   Usage (Z)                         40
# 0x09, 0x36,                    //   Usage (Slider)                    42
# 0x15, 0x00,                    //   Logical Minimum (0)               44
# 0x26, 0xff, 0x00,              //   Logical Maximum (255)             46
# 0x75, 0x08,                    //   Report Size (8)                   49
# 0x95, 0x02,                    //   Report Count (2)                  51
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              53
# 0x05, 0x09,                    //   Usage Page (Button)               55
# 0x19, 0x01,                    //   Usage Minimum (1)                 57
# 0x29, 0x0e,                    //   Usage Maximum (14)                59
# 0x15, 0x00,                    //   Logical Minimum (0)               61
# 0x25, 0x01,                    //   Logical Maximum (1)               63
# 0x75, 0x01,                    //   Report Size (1)                   65
# 0x95, 0x0e,                    //   Report Count (14)                 67
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              69
# 0x05, 0x01,                    //   Usage Page (Generic Desktop)      71
# 0x09, 0x39,                    //   Usage (Hat switch)                73
# 0x15, 0x01,                    //   Logical Minimum (1)               75
# 0x25, 0x08,                    //   Logical Maximum (8)               77
# 0x35, 0x00,                    //   Physical Minimum (0)              79
# 0x46, 0x3b, 0x01,              //   Physical Maximum (315)            81
# 0x66, 0x14, 0x00,              //   Unit (EnglishRotation: deg)       84
# 0x75, 0x04,                    //   Report Size (4)                   87
# 0x95, 0x01,                    //   Report Count (1)                  89
# 0x81, 0x42,                    //   Input (Data,Var,Abs,Null)         91
# 0x75, 0x02,                    //   Report Size (2)                   93
# 0x95, 0x01,                    //   Report Count (1)                  95
# 0x81, 0x01,                    //   Input (Cnst,Arr,Abs)              97
# 0xc0,                          //  End Collection                     99
# 0xc0,                          // End Collection                      100
# 
R: 101 05 01 09 04 a1 01 09 01 a1 00 05 01 09 30 09 31 15 00 26 ff 03 75 0a 95 02 81 02 09 35 15 00 26 ff 00 75 08 95 01 81 02 09 32 09 36 15 00 26 ff 00 75 08 95 02 81 02 05 09 19 01 29 0e 15 00 25 01 75 01 95 0e 81 02 05 01 09 39 15 01 25 08 35 00 46 3b 01 66 14 00 75 04 95 01 81 42 75 02 95 01 81 01 c0 c0
N: device 0:0
I: 3 0001 0001

@alasky17
Copy link
Collaborator

@ryannathans @UFeindschiff Could you please also grab logs of the crash on 8.0-x and the success on 7.0-x with extra logging channels by using PROTON_LOG=+setupapi,+hid,+dinput,+xinput,+wbemprox %command%

Unfortunately it is still hard to confirm from the info provided so far if either or both of you are running into #7284

@UFeindschiff
Copy link

@alasky17 Here you go.
phasmophobia-proton8.log
phasmophobia-proton7.log
Unfortunately the log for Proton7 exceeds the allowed filesize for github attachments, so it's an external link

@ryannathans
Copy link

steam-739630.zip

@alasky17 is this sufficient?

@ivyl
Copy link
Collaborator

ivyl commented Jan 3, 2024

@ryannathans can you try with PROTON_ENABLE_HIDRAW=0x0738/0x1302 ?

You also have to make the hidraw device accessible to your user (not the default). You have to locate which hidraw$NUMBER it is from the dmesg

You should see something like this for your device (example using my mouse):

$ sudo dmesg | grep hidraw
[    2.909573] hid-generic 0003:1532:0091.0001: input,hidraw0: USB HID v1.00 Mouse [Razer Razer Viper 8KHz] on usb-0000:0e:00.3-1/input0

Here my device is hidraw0.

Then you have to chmod 666 /dev/hidraw$NUMBER.

If this fixes your crash please attach logs with the flags suggested by @alasky17. This will help me compare what is the difference in the representation of the device we create from the input/event subsystems vs the hidraw.

@UFeindschiff can you do the same but for you device (PROTON_ENABLE_HIDRAW=0x06a3/0x0464)? Your crash looks a bit different but that may be a different section of the code crashing in a different way. The more data on more devices we have the better.

Thanks!

@UFeindschiff
Copy link

UFeindschiff commented Jan 3, 2024

@ivyl The PROTON_ENABLE_HIDRAW/rw-persmission on /dev/hidraw workaround works for me and the game starts up normally with the joystick plugged in.
Log as requested

This workaround also fixes the similar issues I had with some other unity games when using Proton8

@bjver86
Copy link

bjver86 commented Aug 16, 2024

@UFeindschiff @ivyl have you looked over the game since the update to this new vivox system? Only phas cannot hear my mic. Steam hears it fine. Any advice would be appreciated.

@UFeindschiff
Copy link

@bjver86 It's an issue quite a bunch of people are facing including seemingly all Linux players. The Phasmophobia devs are apparantly aware of the issue. Weirdly enough, occasionally your teammates can hear you once loaded into a map, but voice chat in the lobby is currently completely broken

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Game compatibility - Unofficial Games not expected to work without issues Regression Confirmed working on an older version of Proton
Projects
None yet
Development

No branches or pull requests