Steam for Linux

Steam for Linux

shavit 26 Feb, 2022 @ 11:42am
Letting a Windows game run through Proton
Hi. I have a game that runs on WINE just fine but if I want to add it as a non-Steam game and let it run through Proton, it fails because the executable is a launcher app, the launcher ends up running another process, so Steam never loads its in-game overlay and I assume this breaks some other compatibility patches provided by Proton.
As a developer, what can I do to allow Steam to recognize the sub-process? So far it's just a WinAPI call to CreateProcessA with certain arguments being passed to the command line of the sub-process.
< >
Showing 1-6 of 6 comments
Zyro 27 Feb, 2022 @ 10:40am 
Sounds like a very usual situation to me...
Here's some Linux game programming forum, maybe they can help you:
https://www.gamingonlinux.com/forum/programming/
shavit 27 Feb, 2022 @ 5:16pm 
Originally posted by Zyro:
Sounds like a very usual situation to me...
Here's some Linux game programming forum, maybe they can help you:
https://www.gamingonlinux.com/forum/programming/
I don't need help getting my game working on Linux - it already works perfectly fine under WINE.
The issue is that Steam doesn't acknowledge the game itself running but only its launcher (which only runs for a short period of time). Therefore I asked on the Steam forums, rather than a third-party website.
jason 27 Feb, 2022 @ 7:47pm 
The overlay is separate from Proton, is has no effect on compatibility (aside from rare occasions where it makes things worse).

In my world "fails" means the game is not running. Also in my world "doesn't acknowledge the game itself running" and "never loads its in-game overlay" means the game is running.

Overlay not working and running status not being tracked by Steam for games with a launcher is not new and nothing to do with being a non-steam game.

Assuming you are actually having a problem you want to solve I'll make an educated guess:

In Wine you installed the launcher and the game to C: within the Wine prefix.
You add the launcher as a non-Steam game, Proton runs the launcher from Z:,
Launcher is dumb and isn't using a relative path so can't find the game on C:

Solution, either:
Install the game to Z: in Wine so the launcher knows where to look.
Or, copy installed game files from the Wine prefix to the correct Proton prefix.

If you want more than a random guess at a solution you need to provide more details.
shavit 27 Feb, 2022 @ 8:45pm 
Originally posted by jason:
The overlay is separate from Proton, is has no effect on compatibility (aside from rare occasions where it makes things worse).

In my world "fails" means the game is not running. Also in my world "doesn't acknowledge the game itself running" and "never loads its in-game overlay" means the game is running.

Overlay not working and running status not being tracked by Steam for games with a launcher is not new and nothing to do with being a non-steam game.

Assuming you are actually having a problem you want to solve I'll make an educated guess:

In Wine you installed the launcher and the game to C: within the Wine prefix.
You add the launcher as a non-Steam game, Proton runs the launcher from Z:,
Launcher is dumb and isn't using a relative path so can't find the game on C:

Solution, either:
Install the game to Z: in Wine so the launcher knows where to look.
Or, copy installed game files from the Wine prefix to the correct Proton prefix.

If you want more than a random guess at a solution you need to provide more details.
I must have been misleading with my post then. I develop a game but am not interested in refactoring a lot of it for native Linux support so I did whatever I could to make it run on WINE.
What I'm wondering is what I can do as a developer to allow Steam to track the game as "running" after its launcher is closed and the game itself starts running.
My launcher is a DirectX app (which again, Proton runs fine) and the Steam overlay works on there.

Any other details you think I'm missing?
Last edited by shavit; 27 Feb, 2022 @ 8:45pm
Zyro 28 Feb, 2022 @ 12:10am 
Originally posted by shavit:
Originally posted by Zyro:
Sounds like a very usual situation to me...
Here's some Linux game programming forum, maybe they can help you:
https://www.gamingonlinux.com/forum/programming/
I don't need help getting my game working on Linux - it already works perfectly fine under WINE.
The issue is that Steam doesn't acknowledge the game itself running but only its launcher (which only runs for a short period of time). Therefore I asked on the Steam forums, rather than a third-party website.

I did understand what you've written. The site is very proton friendly, and there's some game developers over there. Most people here are gamers. There probably are even better sites to ask, but this here might not turn out optimal either.

BTW, did you take a look into the docs? Cause there's a forum mentioned (only accessible to devs probably):
https://partner.steamgames.com/doc/steamdeck/proton
Last edited by Zyro; 28 Feb, 2022 @ 12:28am
jason 28 Feb, 2022 @ 4:11am 
Does doing the same in Windows Steam not produce the same result? This is expected as far as I have seen from many other games.

Keep the launcher running in the background until the game it launched is closed will solve at least one of those issues.
< >
Showing 1-6 of 6 comments
Per page: 1530 50