Jump to content
LaunchBox Community Forums

Recommended Posts

On 11/11/2021 at 8:15 PM, 51mm5 said:

Does the Steam launcher work with Rockstar Launcher games?  I have a steam controller so I rely on this wonderful plugin to have the Steam overlay work with my games so I can use the Steam controller.  I'm thinking of purchasing the newly released GTA Remastered Trilogy Auto Trilogy which is only available via the Rockstar launcher and not Steam but not sure if it will work well with Launch box and this plugin.

Yes, this is possible with any launcher (excluding Microsoft Store games) but you need to set up custom emulator entries for each Launcher. Just pm me (on Steam) for more info/files. My Scripts are working for me with any Epic Games/Ubisoft Connect/Rockstar Games/Amazon Games/Origin game utilizing this great plugin!

Roughly speaking my scripts kill the intended launcher if running and then immediatly launches it with the given game url and waits for the Launcher to appear and then remembers the first fullscreen window appearing on screen after some timeout. Then after the game window is closed after having played the script automatically kills the game's launcher after some timeout (to be able to upload save data) to save ram etc.. For Microsoft Store Games my ahk script also detects game closure and repositions the game window to make it borderless windowed without exclusive fullscreen for glosc to work seamlessly on top.

Edited by Benuno
  • Thanks 1
Link to comment
Share on other sites

On 11/14/2021 at 2:07 PM, Benuno said:

Yes, this is possible with any launcher (excluding Microsoft Store games) but you need to set up custom emulator entries for each Launcher. Just pm me (on Steam) for more info/files. My Scripts are working for me with any Epic Games/Ubisoft Connect/Rockstar Games/Amazon Games/Origin game utilizing this great plugin!

Roughly speaking my scripts kill the intended launcher if running and then immediatly launches it with the given game url and waits for the Launcher to appear and then remembers the first fullscreen window appearing on screen after some timeout. Then after the game window is closed after having played the script automatically kills the game's launcher after some timeout (to be able to upload save data) to save ram etc.. For Microsoft Store Games my ahk script also detects game closure and repositions the game window to make it borderless windowed without exclusive fullscreen for glosc to work seamlessly on top.

Thanks for this.  I've sent you a friend req on Steam

Link to comment
Share on other sites

Hey Everyone, just wanted to apologize for taking so long to get this update out. I've just been really overwhelmed with other stuff and I'm implementing a lot of really big changes in the next update.. Kind of stuck between a rock and a hard place now since I'm in the middle of implementing these big changes, which makes it really hard to put out a release until I'm finished implementing everything. However, I do have a perfectly working old build which I would be happy to share with anyone who sends me a msg on Steam. There are a lot of people using this build right now without any issues, so if you'd like to use it in the meantime until I'm able to release the update, I would be happy to share it with anyone. My Steam contact info is on the plugin download page. Thanks for bearing with me and having patience!

  • Like 8
Link to comment
Share on other sites

  • 2 weeks later...
On 11/26/2021 at 10:58 AM, 51mm5 said:

Hey @Lahma

Is there a possibility of getting your Launcher to work with Non-steam games?  @Benuno has some scripts that enable your launcher to work with various launchers.  It would be a great addition to have this feature integrated into your app.

Sorry @51mm5, I literally just saw that I had a msg here. I'm not sure I'm understanding what you're asking. Every game that my plugin launches is a "non-Steam" shortcut/game. Are you asking if my plugin can be used outside of LB?

Link to comment
Share on other sites

On 12/5/2021 at 3:54 PM, Lahma said:

Sorry @51mm5, I literally just saw that I had a msg here. I'm not sure I'm understanding what you're asking. Every game that my plugin launches is a "non-Steam" shortcut/game. Are you asking if my plugin can be used outside of LB?

Unless I'm mistaken or misusing your plugin, I cant use Steam overlay when launching via your plugin with say an Epic Store game or other stores who have their own launcher besides Steam bought games.

Edited by 51mm5
Link to comment
Share on other sites

  • 2 months later...

I don't believe I've updated anything, but it appears CemU has stopped working with SteamLauncher. Games launch appearing normal, but Steam stays in "Desktop Mode" and the Steam overlay doesn't come up when pressing the guide button. This is only with CemU and not any other emulator I tried.

CemU works fine if launching CemU directly from Steam (as a 3rd party program) but not an individual game launched from Launchbox with this plugin. Anyone have any idea what might be going on?

 

EDIT: The problem goes away if CemU uses OpenGL instead of Vulkan. But performance with OpenGL is no bueno.

Edited by Corgana
Link to comment
Share on other sites

46 minutes ago, Corgana said:

I don't believe I've updated anything, but it appears CemU has stopped working with SteamLauncher. Games launch appearing normal, but Steam stays in "Desktop Mode" and the Steam overlay doesn't come up when pressing the guide button. This is only with CemU and not any other emulator I tried.

CemU works fine if launching CemU directly from Steam (as a 3rd party program) but not an individual game launched from Launchbox with this plugin. Anyone have any idea what might be going on?

 

EDIT: The problem goes away if CemU uses OpenGL instead of Vulkan. But performance with OpenGL is no bueno.

Try setting all the .exes like steam/steamlauncher/cemu to start with admin rights (i saw this comment randomly, so idk if this might help you)

Link to comment
Share on other sites

  • 2 weeks later...

This plugin unfortunately doesn't work with other launchers. EDIT: However, if the game launches via double clicking the .exe, you can import the exe into launchbox (rather than having launchbox auto import it) and this plugin should then work for the game through LB.

The author of the plugin is aware of this, but there is some kind of technical barrier that may be insurmountable. More information on that available in this thread.

You can still use the Steam Overlay for games that you can't launch via exe (an example of this might be an EPIC store game that the exe only redirects you to the launcher and doesn't launch the game)  But it won't work through launchbox, at least not without having to go through the launcher anyway.

You just import the Launcher exe into steam as a Non-Steam Game, launch the launcher through Steam and then your game through the launcher and the overlay will work. You CAN probably import the launcher.exe into launchbox, launch that, then launch the game through the launcher and it will probably work... haha. I haven't tried this because I don't use this method much, but let me know if it works!

P.S I loved the FF7 Remake but HATED the controls so I hope this helps someone.

Edited by fromlostdays
  • Like 1
Link to comment
Share on other sites

I am experiencing a recurrence of an issue I had a few years ago and documented in this post. The proxy opens when I try to launch a game, but either Steam immediately crashed and I have to force close LaunchBox because it stops responding, or LaunchBox immediately crashes. I only use LB, not BB.

I've tried deleting the plugin completely and redownloading, but I still get the same behavior. I'm not sure what setting I have that might be causing this.

Does it matter if my Steam installation is on a different drive than LaunchBox?

The only entries in the debug log say: [Warning] [Config] [LoadConfigOrDefaults] - The config file was not found. Loading defaults.

Thank you.

Edited by bryantjs6
Link to comment
Share on other sites

5 hours ago, bryantjs6 said:

I am experiencing a recurrence of an issue I had a few years ago and documented in this post. The proxy opens when I try to launch a game, but either Steam immediately crashed and I have to force close LaunchBox because it stops responding, or LaunchBox immediately crashes. I only use LB, not BB.

I've tried deleting the plugin completely and redownloading, but I still get the same behavior. I'm not sure what setting I have that might be causing this.

Does it matter if my Steam installation is on a different drive than LaunchBox?

The only entries in the debug log say: [Warning] [Config] [LoadConfigOrDefaults] - The config file was not found. Loading defaults.

Thank you.

The version of the plugin that was available on the plugin download page was simply broken and wasn't working. I've been very busy lately and simply hadn't gotten around to uploading a new, working build. I've been privately sharing a working build of the plugin with scores of people for quite a while now but just hadn't posted it publicly. However, that is no longer the case now. Just a few minutes ago, I went ahead and uploaded a new, working build of the plugin on the plugin download page (v0.9.7.7). For anyone who has gotten the working build from me privately, the build I uploaded to the plugin download page is no different and there is no reason to download it. For everyone else though, just download the new version and replace all your old files with the new ones, and everything should work perfectly fine. My suggested way of upgrading is to do as follows:

  • Extract all the files in the package, overwriting any old/existing files in "LaunchBox\Plugins\SteamLauncher"
  • Run LaunchBox and leave it running for 30-60 sec but do not launch any games
  • Exit LaunchBox and after it has fully exited, start LaunchBox again

The reason I suggest you do things this way is that it gives SteamLauncher a chance to update its vtables.xml file online in case a Steam update has made any breaking changes with its vtable offsets.. After it updates, LaunchBox has to be restarted for the updated offsets to be used. Anyways, please give the newly posted build a try @bryantjs6 and report back here if you have any issues (you shouldn't.. there are a pile of people using this build without any issues).

 

  • Like 3
Link to comment
Share on other sites

7 hours ago, fromlostdays said:

Just a heads up, 

This plugin unfortunately doesn't work with other launchers. I'm not totally sure why but the author is aware of it, but as I understand there is some kind of technical barrier that may be insurmountable.

You can still use the Steam overlay for Epic Store games, for instance, just not through launchbox. Its not ideal, but it is simple. You just import the Epic Launcher exe into steam as a Non-Steam Game, launch the launcher through Steam and then your game through the launcher and the overlay will work.

I loved the FF7 Remake but HATED the controls so I hope this helps someone.

On 12/11/2021 at 5:17 AM, 51mm5 said:

Unless I'm mistaken or misusing your plugin, I cant use Steam overlay when launching via your plugin with say an Epic Store game or other stores who have their own launcher besides Steam bought games.

I've gone into very in-depth explanations of why imported games for other launchers don't "just work" a countless numbers of times in this thread and in private conversations with people who've messaged me. I really don't have the time, energy, or willpower to go over it all yet again.. The long and short of it is that any games that LaunchBox imports and launches using custom URL handlers (i.e. com.epicgames.launcher://XXXXXXXX) are impossible for my plugin to intercept and proxy through Steam. It isn't a "feature" that I can add and it isn't something I can "fix". The way you can easily assess this is by trying to manually add a non-Steam shortcut to Steam and launch your game using one of these URLs (instead of pointing to the game exe). If formatted correctly (start "" "com.epicgames.launcher://XXXXXXXX"), you'll be able to get Steam to launch the game but no matter how hard you try, you won't ever get a working Steam overlay because it is literally impossible for Steam to know what executable it is supposed to inject its overlay into. Steam has no way of correlating between some custom URL handler that is has no understanding of and an actual game executable.. And since at the end of the day, my plugin relies on normal non-Steam shortcuts (that are added in a very roundabout way with lots of workarounds and tricks since Steam doesn't expose these features in their public API and because LaunchBox has no built in means for plugins to intercept and modify a game's parameters mid-launch) and has absolutely no influence over the way Steam injects its overlay into external processes, there is nothing I can do to change the way this functions.

You as a user however, can fix the way your games are stored in LB and make the vast majority of your games work just fine with SteamLauncher... You just need to change the game's properties such that instead of launching the game via an abstract URL it is instead pointing to the game's EXE on your machine. It takes maybe 15-20 sec to change.. Give it a shot.

Edited by Lahma
  • Like 2
Link to comment
Share on other sites

7 hours ago, Lahma said:

 If formatted correctly (start "" "com.epicgames.launcher://XXXXXXXX"), you'll be able to get Steam to launch the game but no matter how hard you try, you won't ever get a working Steam overlay because it is literally impossible for Steam to know what executable it is supposed to inject its overlay into.

This can be fixed - see @51mm5  as evidence. Just kill the launcher .exes (no need for install paths as names are enough) before executing those urls via start command with admin rights and you always get steam overlay inside epic,origin,uplay,amazon store games. Steam cant inject the overlay if any launcher software is already running as it injects during .exe start.

Then the overlay is injected into the launcher windows and game window. (Will upload files when I am home for everyone). I for example have issues with exe paths just not having the steam overlay depending on the launcher/game.

Edited by Benuno
  • Like 1
Link to comment
Share on other sites

20 hours ago, Lahma said:

I've gone into very in-depth explanations of why imported games for other launchers don't "just work" a countless numbers of times in this thread and in private conversations with people who've messaged me. I really don't have the time, energy, or willpower to go over it all yet again.. 

I'm one of those people who messages you haha and I know. That's kind of why I stepped in to let them know it was impossible. I may have read the explanation countless times myself, and one more time in this most recent post, but that doesn't mean I understand it. 🤣

20 hours ago, Lahma said:

You as a user however, can fix the way your games are stored in LB and make the vast majority of your games work just fine with SteamLauncher... You just need to change the game's properties such that instead of launching the game via an abstract URL it is instead pointing to the game's EXE on your machine. It takes maybe 15-20 sec to change.. Give it a shot.

I should have been more clear. This method you described will work for any game that you can launch via exe. But, EPIC for instance (and I have no earthly idea why) doesn't let you launch (some, all?) games from the exe. If you click the exe it literally gives you instructions to go to the Launcher and doesn't launch, so as you can surmise you can't import the exe into launchbox and launch the game that way. The FF7 Remake is an example of this. I honestly have no idea how prevalent this is in EPIC or any other launcher as I get most of my games through Steam. Anyway, to circumvent this, you can import the launcher into Steam as a Non-Steam game to get those juicy rebinds.

As always, thanks for your work and this plugin. It is invaluable.

 

 

Link to comment
Share on other sites

Here are the files for everyone (including a simple readme.txt file for instructions). Set those .exe as emulator launchers for each game of that particular pc store source. Then you should always have the Steam Overlay in-game with any of those launcher urls. Only for xbox apps you need to install glosc, as the batch does a game launch via glosc.

https://drive.google.com/drive/folders/1LQgrmWuwUxB3rWyXKZw8Kxxa6HbRYlve

Edited by Benuno
  • Like 2
Link to comment
Share on other sites

5 hours ago, fromlostdays said:

I'm one of those people who messages you haha and I know. That's kind of why I stepped in to let them know it was impossible. I may have read the explanation countless times myself, and one more time in this most recent post, but that doesn't mean I understand it. 🤣

I should have been more clear. This method you described will work for any game that you can launch via exe. But, EPIC for instance (and I have no earthly idea why) doesn't let you launch (some, all?) games from the exe. If you click the exe it literally gives you instructions to go to the Launcher and doesn't launch, so as you can surmise you can't import the exe into launchbox and launch the game that way. The FF7 Remake is an example of this. I honestly have no idea how prevalent this is in EPIC or any other launcher as I get most of my games through Steam. Anyway, to circumvent this, you can import the launcher into Steam as a Non-Steam game to get those juicy rebinds.

As always, thanks for your work and this plugin. It is invaluable.

Hey @fromlostdays! You are absolutely right. There are many games that won't run unless they are launched via the game store launcher they were purchased from.. Just depends if the game dev configured the game to require this or not. The reason many of these games won't run without the parent launcher is the result of licensing checks which require communication via an API between the game and the platform launcher. These licensing checks (and therefore the requirement for the game to be launched via the game launcher) can often be bypassed by replacing a DLL (steam_api.dll/steam_api64.dll [Steam], EOSSDK-Win64-Shipping.dll [Epic], uplay_r1.dll/uplay_r164.dll [Uplay], etc) in the game's directory (or subdirectory) with one of a number of launcher/platform emulators that have been designed by talented scene programmers. These emulators are often created and designed to do a wide variety of different things (allow games to be run without game store launcher being installed, piracy, emulation of online/multiplayer services so non-official servers can be used, unlocking of DLC, etc) but one of the things that they can enable is bypassing all of the checks that the game performs on startup that verifies that the game store launcher is installed and running. While I'm certainly not endorsing the use of any of these emulators (nor am I saying you shouldn't use them.. if you bought the game, do whatever YOU want to do with it as long as it isn't hurting others and their experience of the game), especially for the purposes of piracy, I just thought it would be worthwhile to mention them in the course of explaining why many of these games can't be launched without their parent game store launcher being installed and running. As for importing other game's launchers into Steam and running them that way, I'll address that in response to @Benuno below.

20 hours ago, Benuno said:

This can be fixed - see @51mm5  as evidence. Just kill the launcher .exes (no need for install paths as names are enough) before executing those urls via start command with admin rights and you always get steam overlay inside epic,origin,uplay,amazon store games. Steam cant inject the overlay if any launcher software is already running as it injects during .exe start.

Then the overlay is injected into the launcher windows and game window. (Will upload files when I am home for everyone). I for example have issues with exe paths just not having the steam overlay depending on the launcher/game.

I don't think I followed everything you were trying to say @Benuno, but if you're just talking about using Steam to launch another launcher (such as Epic) so that whenever Epic launches a game Steam is able to inject its overlay, then yes, this is possible in a lot of instances... I never stated or suggested that this wasn't possible in my post. The point of my post was to make the point that I cannot add in launcher-specific support for every game launcher, their custom URL handlers, and perform process management on the game and their launchers. Again, I'm not going to go down the rabbit hole again of giving a long-winded explanation of why all of this isn't feasible (search this thread for my previous posts and you'll find lot of discussions about it) but the TLDR is that there is a LOT more going on behind the scenes with this plugin than I'm sure any sane person or programmer would imagine... Most of the reason for this complexity is due to the fact that LaunchBox/BigBox don't have a built in way for plugins to intercept/hijack a game's launch process and parameters (as I mentioned previously).

To highlight just one of the issues that would come up if I tried to implement support for game store launchers by launching the game's launcher which then subsequently launches the game: Whenever you launch a game with LB/BB, it messes with window focus/priority to ensure that the game process ends up with focus and after a game exits, it tries to ensure that focus is given back to LB/BB. Furthermore, with LB startup/shutdown screens, this adds even more complexity as LB/BB is also managing these windows' focus/priority over an extended period of time. Now, understand that with the way SteamLauncher works, the exe which LB/BB thinks is the actual game exe, is no longer the actual game exe (it is a proxy exe which doesn't even have a real window).. so whenever LB/BB tries to switch window focus to ensure that the game or startup/shutdown screen becomes the active window, this isn't actually possible because LB/BB believes that the proxy exe is the game which doesn't even have a real window.. SteamLauncher has to fight against LB/BB to ensure that all of these window focus/order issues are ultimately resolved such that whenever Steam launches the game, the game actually ends up as the topmost active window, while also dealing with the startup/shutdown screens and ensuring that they get window focus when necessary... Now imagine adding another game store launcher into this mix... can you see where I'm going with this? And this is just ONE of many, many things the plugin is doing silently in the background to ensure that things just appear to "work".

If one wanted to, they could make a wrapper exe/launcher which handles:

  • ensuring the game store launcher isn't running
  • launches the appropriate game store launcher exe with the appropriate game URL parameter to start the game
  • after the game exits, kills the game store launcher process

and then use that within LB/BB, which would work fine with my plugin... Hell, I've even added features into the plugin that make this process much easier to do ("Launcher to EXE Relationships").. But as I'm sure you can see, this isn't something that is just "easy" to do or something I can implement willy-nilly to make sure my plugin works with all of these game store launchers. Furthermore, creating a wrapper/launcher exe to do this would STILL require you to edit the game properties within LB such that it points to your launcher/wrapper exe instead of the original game URL as it was originally imported.... which kind of defeats the point of doing it in the 1st place (well.. I guess not for the games that require the game store launcher to be running to launch the game... but I think you see what I'm saying.) So while I appreciate you pointing out that someone has seemingly solved this problem, I can assure you that it unfortunately is not as simple as you may think. Trust me, I wish more than anyone else there was an easy-to-implement, universal solution to this problem.

At the end of the day, could I add a feature into my plugin that would allow Epic game URLs in LB/BB to be ultimately translated into the action of Steam launching the game launcher which then launches the game? Yes.. it could probably be done... with hundreds of hours more programming and an ENDLESS number of more bugs/problems/issues... and it could all ultimately stop working when Epic changes a single thing in their launcher... Not to mention, this wouldn't do anything to solve the problem with custom game URLs for Origin, GOG, Uplay, Battle.net, etc and so on... They would all have to be implemented via custom logic too so that the launcher process for each could be appropriately started/killed (and to ensure their window doesn't mess up the window order priority, etc and so on).. which would all have to be maintained individually as well. I created and maintain this plugin by myself with zero financial support and even if I quit my career and dedicated myself full time to the plugin, there still wouldn't be enough hours in the day for me to implement and maintain all this functionality.

See what I did now? I said I wasn't going to go into a long-winded explanation again... and what did I do? Exactly that... typed out a long winded explanation that accomplished very little in actually explaining the many, many hurdles and technicalities of why implementing support for such features is not just impractical but totally infeasible.. I can't tell you the number of people who contact me or msg me on Steam telling me how easy it would be for me to implement support for these types of things when they have absolutely no clue how the plugin actually works.. And I'm not even mad nor do I blame them.. From the outside looking in, there is no way to understand all the complicated intricacies and nuances that go into making this plugin work... I think most people just assume that the plugin is just some simple wrapper script or something that just magically makes any LB/BB game launch via Steam with a few hundred lines of simple code... I really, really, really wish it was that easy.. I would have several thousand hours of my life returned to me if that was the case...

I really hope this post isn't coming off as me looking like I'm trying to sound like I'm some elite programmer who accomplished voodoo magic or something... While I wish that was true, unfortunately it isn't.. No.. instead the plugin has a large, complicated code base simply because the plugin is trying to do something which, for a whole lot of reasons, is just a messy problem to solve with no real elegant solutions. I just happened to be the idiot that decided to take on such a thing and waste inordinate amounts of my time doing so. Ugh... now I feel like I wasted way too much time writing this post and still didn't confer what I was trying to... Oh well.. Let me know if y'all have any more questions or experience any problems with the latest release. I'm always happy to help however I can!

  • Like 3
  • Thanks 2
  • Game On 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...