protonscr

Guardians VR

protonopen appid 1481440Game compatibility - Unofficial
ValveSoftware/Proton#4946 · opened 2021-07-05 by Patola · updated 2021-07-19 · 7 comments · github · game page · search this game
PPatola 2021-07-05 github

Compatibility Report

  • Name of the game with compatibility issues: Guardians VR
  • Steam AppID of the game: 1481440

System Information

I confirm:

  • [X] 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.

Symptoms

I don't understand at all what's happening when I start the game. I see in my front the menus and a "cursor" that is more or less in the horizontal center of my view but very very low in the vertical axis so I have to raise my head to make it select any option. And sometimes when I try and hover an option it just dashes forward making me fall off the platform so I have to climb up the stairs again.

Also, when I press the [A] button on the valve knuckles (left or right hand) a menu appears but it's right out of my field of view, either too much to the left or too much to the right.

And a red translucent beam appears in the front of my vision.

I managed to start a single-player game -- the teleport tutorial but then it seems the weapon appears right in the middle of my view, like if it were in my face like a big nose. If I close my left eye I can clear see its side on the right of the screen, and if I close my right eye I can see its side on the left of the screen.

However looking down at my body it seems to be in the right place.

So it seems like some kind of weird confusion between the hand positions and headset position. I am not using vive trackers nor have I used them for a week, it's just the regular configuration of one headset, two controllers and two bases (plus one extra base but it should not influence anything).

Reproduction

Just start the game and try playing it.

Two screenshots can show that the red translucent beam and weapon "emanate" from the middle of the headset instead of the arms. And I get the impression that the two menus that appear at the sides (not shown there) should appear on the hands instead of the headset.

20210705203433_1
20210705203624_1

steam-1481440.log

PPatola 2021-07-08 github

I've made some tries and in one of them, my right controller briefly appeared as the left hand; it was at this time that I've noticed that the game has a body with inverse kinematics. So, in the current situation, my player appears having no arms (or maybe they are inward to the body), which might explain a little of the controls.

I have noticed that the game pastes Player.log and savelog.txt, both with lots of errors like:
<b>[SteamVR]</b> GetOriginTrackedDeviceInfo error (/actions/VRInteraction/in/Pose): InvalidParam handle: 1153417577624502862 activeOrigin: 2306339082231349729 active: True (Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 35)
and
{ "condition": "<b>[SteamVR]</b> GetOriginTrackedDeviceInfo error (/actions/VRInteraction/in/Pose): InvalidParam handle: 1153417577624502862 activeOrigin: 2306339082231349590 active: True", "stackTrace": "", "type": 0, "dateTime": "2021-07-08T03:16:29+02:00" },
So I'm attaching these files... Maybe they help with something?

savelog.txt
Player.log

PPatola 2021-07-08 github

Other things I tried:

  • unplugging my steam controller before steam even starts;
  • turning off my third base before steam even starts;
  • starting the game with the controllers off and only turning them on after the height calibration at start.
  • turning the controllers on one at a time after the game starts
  • turning them off and on during the game
Ggofman 2021-07-12 github

@Patola Thanks for reporting.

I've debugged the game and could reproduce the issues you are describing, as well as fix or hack around most critical ones (while some remaining unfortunately). Just in case you want to try, here is the build (with a couple of VR patches on top of current Experimental):

https://www.dropbox.com/s/lfnhf7466owwjr3/experimental-6.3-MR15-554-20210712-p1e0b6d-w0c53d20-ded3aac.tar.gz?dl=0

I played tutorial and one PVP match with these fixes and it looked playable to me.

Here are a few genuine issues mostly arising from the fact that the game is 32 bit, while this is not that common for VR and is probably not very well tested both with Proton vrclient and SteamVR.

  1. Things like menus, teleport beam and weapon emanating from the head instead of the controller is a Proton vrclient bug specific to 32 bit, that should be fixed in this build.

  2. "And sometimes when I try and hover an option it just dashes forward making me fall off the platform so I have to climb up the stairs again." - this is actually an emanation of the bug exhibiting itself as the controller buttons acting as stuck pressed in the game after you press it once. So once you press the teleport it is always on. There are weird teleport points outside the platform in the game (on Windows as well), and when you approach the menu with the teleport button effectively pressed you end up teleported almost always when you try to point the blue beam to menu option.

  3. The controllers always vibrate when gripped.

  4. There is a "Loading..." overlay message at player's feet which never goes away.

Issues 2, 3 are actually SteamVR bugs, also specific to 32 bit. I could make a simple reproducer on top of SDK sample, which shows both problems in a 32 bit build and not on 64 bit build (p. 2. is about Changed digital action data field being not reported correctly). I am going to report it to SteamVR developers but not sure if a 32 bit vrclient bug will get any priority, I doubt there is any native Linux 32 bit usage for OpenVR. I worked around issue 2 with a hack in Proton's vrclient, so the game looks playable, but the controllers are still trembling and I am afraid I can't workaround that on Proton side.

Regarding issue 4, I think it is about the game setting compressed textures as overlay which are not displayed at all with Windows SteamVR d3d11 backend (there is an error in the log) but are displayed on Linux Vulkan backend (despite the error in the log is there as well about unsupported formats). De facto support for those unsupported formats makes the game look both better and worse in Proton than on Windows. Better because I see the skybox with nice planets when the game is loading in Proton (but not on Windows), worse because there is always a leftover "Loading..." overlay at the feet. I am not sure yet if I find a good way to fix this part, I don't think it deserves some ugly hack as generally this extra message is not visiable unless you look at your feet.

PPatola 2021-07-12 github

Wow. That was blazingly fast. And thank you for the explanation. Is the SteamVR bug report going to be public? Maybe by subscribing to it we can get some attention. I talked to the developers of the game and they said a 64 bits version is not likely.

I used your build of proton with the fixes and indeed, the game is playable now. Just a couple of issues remained:

1 - the "always vibrating" controllers. They vibrate so strongly that in the VR space they tremble visibly. And they continue vibrating/trembling even with "haptics" turned off in the game. This is issue (3) from your listing.

2 - the controllers positions sometime drift away by 1 or 2 meters, not instantly but with some speed. The right controller drifts to the right and the left controller drifts down. It usually lasts 1 to 2 seconds but this still can be quite detrimental to the gameplay.

On the other hand, I could not experience issue (4). Looked everywhere and saw no "Loading..." overlay message -- yes, looked at my VR feet first.

Ggofman 2021-07-13 github

Wow. That was blazingly fast. And thank you for the explanation. Is the SteamVR bug report going to be public?
I sent an e-mail but didn't create an issue yet. I will link the issue here if I create it.

I used your build of proton with the fixes and indeed, the game is playable now. Just a couple of issues remained:

1 - the "always vibrating" controllers. They vibrate so strongly that in the VR space they tremble visibly. And they continue vibrating/trembling even with "haptics" turned off in the game.

Yes, turning off haptics won't help, it is not the game triggering it. The only way to get rid of it from GUI is to redefine controller bindings so the grip is not bound, but then the grip won't do anything at all and the pickup / drop action should be bound to something else, which is probably even more inconvinient. Maybe there is some way to disable vibration completely somewhere in SteamVR config, but I didn't find one (frankly didn't try hard).

2 - the controllers positions sometime drift away by 1 or 2 meters, not instantly but with some speed. The right controller drifts to the right and the left controller drifts down. It usually lasts 1 to 2 seconds but this still can be quite detrimental to the gameplay.

I think I saw that a couple of times during debugging, but very rarely. Does it happen often for you?

PPatola 2021-07-13 github

It seems that was something transient in my controllers / SteamVR at the time, @gofman. After a reboot I started SteamVR again and the controllers were fine, no drifting/sliding, and the vibration in the game was visibly less intense and only when I pressed the grips. So it's almost perfectly playable now. The vibration is a little annoying but not much, specially because you don't have to hold the grip the whole time.

Ggofman 2021-07-19 github

Those changes were included in the latest Experimental update.

Nothing extracted yet.