Jump to content
LaunchBox Community Forums

Lahma

Members
  • Posts

    403
  • Joined

  • Last visited

  • Days Won

    8

Posts posted by Lahma

  1. 3 hours ago, fromlostdays said:

    WOWWWWWWWWWWWWW. 

    I've tried like every permutation of every setting of every version of every imaginary number physics equation to get this to work. haha. EXCEPT, switching from Vulkan to OpenGL... which I just tried and Steamlauncher worked perfectly. So do the various nonsteam games I have for cemu and zelda now. I'm quoting Corgana below so they get a notification in case this fixes it for them. Its not totally ideal because you can't do async shaders in OpenGL as far as I know, but it's good enough for me. Thanks as always Lahma. The weird part is... aren't you using Vulkan? What could cause Steam to freak out over a renderer like that?

    Let me go ahead and answer all your questions just in case its a compounding issue:

    1: Works in OpenGL, not in Vulkan

    2: I have Xbox Game Bar, Discord and GeForce experience, but AFAIK none of them are actively running... maybe they got a background process going I'm not aware of? 

    3: I tried every permutation of having Steam and or Cemu running as ADMIN, none works, so I set them all back to not running as admin. 

     

    As above, try checking to see if you're using the Vulkan renderer in cemu and switching to OpenGL.

    Huh... that is an interesting outcome... I am an indeed using Vulkan in Cemu and the overlay is working just fine. It seems pretty clear to me that there is common component shared by both you and @Corgana which is causing the issue. Again, I'm pretty sure the Cemu version has nothing to do with the problem @Corgana. My guess would be that there is some conflicting software or driver that is causing the problem, specifically in relation to the Vulkan renderer. I will be interested to hear from @Corgana if the overlay starts working for him as well whenever he switches to the OpenGL renderer in Cemu. If so, I would guess that you are both likely running the same problematic software/driver. If not, it may be a more generalized issue related to an OS setting or shared component used in many different software packages.

    My recommendation for both of you would be to try to do a 'Diagnostic Startup' or a 'Selective Startup' (with both 'Load system services' and 'Load startup items' unchecked) and then try to launch Cemu via Steam (without starting any other software or services) and see what the result is. You can find this option by opening your start menu and typing 'msconfig'. On the 'General' tab, you will see the options I mentioned:

    image.thumb.png.f2e18a6f03a2d2c831336356bbf87658.png

    Are both of you using Nvidia GPU's? If not, what is your GPU vendor? If the issue is related to the GPU driver, it is unlikely that a 'Selective Startup' will remedy the problem. If the 'Selective Startup' doesn't help narrow down the issue, as a last resort, I would attempt to use DDU (along with exactly following its instructions for how to use it) to uninstall your GPU driver. Following that, you can then load the latest version of your GPU driver and try again.

    Hopefully we can figure out how to resolve the issue, and identify exactly what the problematic component is, because I suspect there will be others encountering the same issue if there are already 2 of you having the same problem in our relatively small group of users. Remind me again, are both of you using Windows 10 or Windows 11?

    • Thanks 1
  2. On 6/17/2022 at 6:13 PM, fromlostdays said:

    Throwing this out there, but the issue isn't directly related to the Steamlauncher Plugin:

    Is anyone else having trouble specifically with Cemu 1.26.2f (latest version) where the overlay refuses to pop up? This seems to be a problem specifically with the emulator (or at least my setup) and Steam. I know its not the plugin because I've used multiple methods to import the emulator (and the games) directly into Steam and the overlay still doesn't work, plus Lahma himself tried to help me troubleshoot it for a while and he's just as stumped. I'm hoping this is just a problem with this Cemu version as it worked in the past for me.

    Also, I have tried a full fresh install of Cemu to the same results. I'm tired of messing with it atm but tomorrow I'll see if I can't install an older version of cemu to test. 

    Thanks peeps!

    Hey @fromlostdays, just to be sure, I checked all my software versions and it looks like the issue likely has nothing to do with that. I too am using the lastest Cemu 1.26.2 (product version 1.26.2f), the latest LaunchBox 12.11, and the latest version of Steam. The overlay is working fine for me. Remind me again.. You said that when you manually add Cemu as a non-Steam shortcut to Steam that the overlay still doesn't work (even after you load a game in Cemu), right? Do me a favor and check these Steam settings and tell me if you have them set the same as me:

    image.thumb.png.62b0a8ff6d0e6e0cece2775412d43b7f.png

    Let me ask you a few more questions to see if we can't figure out this issue of yours.

    • Are you using Vulkan or OpenGL in Cemu?
    • Do you have any other software installed/running which might be trying to inject its own overlay (MSI Afterburner/Riva Tuner, Xbox Game Bar, Nvidia GeForce Experience, Discord, SpecialK, etc)?
    • ***BIG ONE*** Are you trying to run Cemu as administrator ('Run this program as administrator' checked in the 'Compatibility' tab in the cemu.exe file properties dialog) when Steam and/or LaunchBox are NOT running as administrator? (This will absolutely cause the overlay not to work as Steam can't inject its overlay into a process running with higher privileges than itself.)

    When you respond back with this info (and if none of this fixed your issue), I will see what else I can suggest that might be helpful in troubleshooting the issue. If worst comes to worst, I'd be happy to remote into your machine for a few min to see if I can resolve the issue (Teamviewer, Windows Remote Desktop, or whatever). Just let me know!

    • Game On 1
  3. On 6/7/2022 at 5:43 AM, Qbertzelious said:

    Thank you Lahma!

    Ok, so I have a game pointing to the exe but still doesn't work. What do you need from me to figure out what the problem could be?

    The game is Prodeus on GOG.

    Have a great day!

    Hey @Qbertzelious! While the vast majority of games work without any issues, there are always a plethora of exceptions that can be caused by a variety of issues. In almost every single case, this is not going to be a result of any limitation with the plugin or its capabilities but instead, it is likely going to be an issue with Steam being able to hook the game properly and inject its overlay. One way you can test any game exe to be sure that there isn't a problem with SteamLauncher itself is by opening Steam and manually adding that game EXE to Steam's library via the "Add non-Steam game" feature. If you add the game exe to Steam that way and try to manually launch the game through Steam and the overlay doesn't work, then you know that the problem is related to Steam not being able to hook the game and injects its overlay.

    With that being said, there are often many ways you can work around the issue of Steam not being able to inject its overlay. Without knowing the exact issue you're facing though, its hard for me to suggest any workarounds to try. From what little info I could find online, it sounds like Prodeus is a Unity game. If you'd like me to try to help you troubleshoot the issue, do a few things for me:

    • Tell me what the path is to the game exe
    • Tell me what other executables you see in that same path (I'm trying to figure out if the game has a launcher exe or not).. Might be easier to just post a screenshot of the game's folder in file explorer
    • Create a non-Steam shortcut pointing to the game exe in Steam and then open up that non-Steam game's properties window and copy paste the following into the "Launch Options" field without the quotes: "-show-screen-selector"
    • Now try to launch that non-Steam shortcut.. because of the "-show-screen-selector" command line argument, you will likely see a pop-up window prior to the game launching that allows you to change some graphics options and such.. just choose whatever (or change nothing) and run the game and check if the Steam overlay works (press SHIFT+TAB or the menu button if you're using a controller)

    Once I've got that info from you, hopefully we can figure out what the issue is. I assume you've got the plugin working with other games/emulators/roms within LaunchBox, right? It is just this game that you are having an issue with, correct?

    • Like 1
  4. 12 minutes ago, JedExodus said:

    Have done a bit of testing on latest update. In particular the filter by source option. All smooth sailing.

    Love the added functionality. Makes my collection zero maintenance when streaming to my living room TV. 

    Many thanks as always! 

    I'm glad everything is working out well for you @JedExodus! Please let me know if you come across any issues or have any ideas for improvements or new features.

    On 5/29/2022 at 1:38 AM, Cheslin said:

    Love this plugin! How do you get the big picture overlay to work with non steam games like you have in the image of super mario world attached to file download page? All I can seem to get is the ability to shift tab to the steam overlay.

    Sorry @Cheslin, somehow I missed your message. Was the recommendation from @fromlostdays able to fix your issue? If not, could you please provide a bit more detail as to what you are trying to accomplish or what issue you are having?

  5. Hey @Qbertzelious! If you used the LaunchBox importer tool to import your GOG games and you open up the properties of those titles and they point to a custom URL (such as gog://launch/XXXXX or something similar), then they cannot work with SteamLauncher simply because it is impossible to intercept and redirect the game launch process. If the game properties however point to the game EXE or a shortcut file (.lnk) that points to the game exe, then it should work fine with SteamLauncher. If the game does use a custom URL, you can simply modify it to point the game executable instead and it should work fine then. If you find that your GOG imported games are pointing to the game exe or a shortcut that points to the game exe and they still aren't working, let me know, and I can look into the issue further and figure out what is going on. I hope that was a sufficient explanation. If not, let me know, and I will try to articulate further. Thanks!

  6. 7 minutes ago, Corgana said:

    Here's a minor thing- the dropdown text on the "selective use" tab is white-on-white, so it can't be read unless hovered over.

    Ya, I did notice that actually. The problem is related to the dark WPF theme I'm using for the UI. I messed with it briefly but the theme consists of a PILE of XAML code I have to sort through to fix the issue, so I ultimately decided it wasn't big enough of an issue compared to getting the update out as quickly as possible. I will definitely fix it though and release another minor update as quickly as possible. I appreciate the report @Corgana.

    • Like 1
  7. Just posted the new update. Thanks to everyone who reported bugs and thanks to @JedExodus for requesting the addition of the 'Status' filter type to the 'Selective Use' feature.

    v0.9.8.1 (May 24, 2022)

    • Fixed a bug which crashed the plugin if the user did not already have 'config.xml' and 'vtables.xml' files in their SteamLauncher directory.
    • Added a 'Status' filter type to the 'Selective Use' feature which should help filter based on where games were imported from (Xbox Game Pass, GOG, etc).

     

    • Like 1
    • Thanks 3
  8. 27 minutes ago, Razor112 said:

    The new version of plugin crashes the launchbox on startup. It hangs on loading plugins... then crashes. I use windows 11 Pro.

    Here is the crash log from event viewer

      Reveal hidden contents

    Faulting application name: LaunchBox.exe, version: 12.11.0.0, time stamp: 0x6215dcc3
    Faulting module name: coreclr.dll, version: 4.700.21.56803, time stamp: 0x6196f4f7
    Exception code: 0xc00000fd
    Fault offset: 0x0000000000049bd8
    Faulting process id: 0x3294
    Faulting application start time: 0x01d86f46a673085a
    Faulting application path: J:\LaunchBox\Core\LaunchBox.exe
    Faulting module path: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.22\coreclr.dll
    Report Id: aeac69f1-dc5e-40de-a90e-af467d67921c
    Faulting package full name: 
    Faulting package-relative application ID: 

    I also installed fresh windows 11 in a vm and behavior is the same.

    Here is the event viewer log from fresh windows 11 vm. There have pretty much the same error.

      Reveal hidden contents

    Faulting application name: LaunchBox.exe, version: 12.11.0.0, time stamp: 0x6215dcc3
    Faulting module name: coreclr.dll, version: 4.700.20.26901, time stamp: 0x5ec48a29
    Exception code: 0xc00000fd
    Fault offset: 0x0000000000049c18
    Faulting process id: 0x1348
    Faulting application start time: 0x01d86fa2bd667ccc
    Faulting application path: C:\Users\Test-VM\LaunchBox\Core\LaunchBox.exe
    Faulting module path: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.6\coreclr.dll
    Report Id: 8e563f9c-92b9-4c5e-926b-04f097575e63
    Faulting package full name: 
    Faulting package-relative application ID: 

    I also checked the SteamLauncher plugin location but there was no log file so plugin itself didn't produce any.

    I did some research about exception code: 0xc00000fd and it is a StackOverFlowException. So there must be some recursion in the plugin somewhere.

    Its gotta be something with your setup @Razor112 because yours is the 1st report I've gotten of this issue. There are many other people having absolutely no issue with the new update. If you msg me on Steam, I would be happy to help you troubleshoot the issue.

  9. 2 minutes ago, rfj831@gmail.com said:

    New update is working great so far. Thanks so much, everyone appreciates the effort you put into this stuff.  Makes things so much easier to manage for retro games and different control schemes on PC.

    No problem! Sorry it took so long to get the update out. Hopefully all the time I spent rewriting a large portion of the code ends up making future updates much quicker and easier to perform. Manual updates of the actual plugin DLL should now only need to be done for actual feature updates and bug fixes and such. Any breaking changes made to the Steam client library should now be fixable with a quick and easy update to the online definitions database.

    I look forward to hearing about your (or anyone else's) experience with the 'Selective Use' feature (if that is something you are even interested in). I need to look back through the support thread and see specifically who it was that was requesting that feature (I know there was at least a few of you).

    • Like 1
    • Unusual Gem 2
  10. The new update, v0.9.8.0, has been posted to the plugin download page. Please note, I have not done extensive testing on this prior to release. If you have any issues or find any bugs, please report them here in the support thread and I will attempt to fix them as quickly as possible. Also, please let me know how the new 'Selective Use' (or 'Filtering') feature works for all of you. I'm curious to know if many of you find it helpful or not. Thanks!

    v0.9.8.0 (May 23, 2022)

    • Overhauled a large portion of the codebase, changing nearly all functionality related to Steam internals into dynamic code that can be updated from an online database. Now, regardless of whether vtable offsets are modified or the number/order/type of parameters are changed, I can fix any broken functionality by simply updating an online definitions database. This should make future updates much quicker and more seamless.
    • Added a much requested feature: the ability to selectively use the plugin based on a list of filters. This new feature can be found in the settings menu under the tab labeled 'Selective Use'. I won't go into a lot of detail here as I believe it is pretty self-explanatory but I will describe one thing that might not be totally clear by the description in the settings menu. In LaunchBox, if you open any game's properties window and navigate to the 'Custom Fields' tab, you can add a new entry and set the key to 'SLEnabled' (without the quotes). If you then set the value to '0', this game will ALWAYS be ignored by SteamLauncher, regardless of any user-supplied filters. Alternatively, you can set the value to '1' and this game will ALWAYS have its launch intercepted (and run via Steam) by SteamLauncher, regardless of any user-supplied filters. If you have any additional questions, just leave a message on the support thread and I would be happy to explain things further.

     

    • Thanks 6
  11. Just wanted to let y'all know I'm very close to having things finished up. Obviously it has taken a bit longer than expected (what's new, right?) but considering I've completely rewritten about 30% of the code base from scratch and have spent about 25 hours coding in just the last few days, the update has been delayed for lack of trying. Give me just 1 or 2 more days and I'll have the update ready. The update will also include the new filtering or "conditional usage" functionality many of you have been requesting. You can view the link below for more info on how it will work:

     

    • Like 1
    • Thanks 8
    • Game On 1
  12. On 5/13/2022 at 6:12 AM, JedExodus said:

    Sad to report to you @Lahma that this issue now seems to have been rolled into the main Steam release as of today :(

    Just wanted to let y'all know that I'm aware that the latest Steam update broke the plugin. I'm coding away as quickly as possible to get the fix pushed out. I'm trying to get the fix pushed out in the next day if I can. The release might prove to be a bit buggy since it will include month's of other major changes I've made to the code base but I can fix any bugs that are found quickly. I'll post back here when I push out the update.

    • Thanks 5
  13. There is no problem with the plugin on Windows 11. I develop and run the plugin on Windows 11. The only current issue is if you're running the Steam beta which I will push out an update for soon. You won't have to actually manually update the plugin though. As long as you have internet access, the plugin will automatically update its vtable offset list online which should fix the issue with the Steam beta. I'm trying to push out the update as quickly as possible but as usual, I'm just a bit swamped with work stuff at the moment. Hopefully I should be able to get the updated offset list pushed out in the next few days though. Sorry about the delay.

    If you want to msg me on Steam @The_Keeper86, I can remotely connect to your machine over TeamViewer and see what the problem is. I can assure you that the problem isn't directly related to Windows 11 though. Regardless, I would be happy to help you out. Just let me know.

    • Thanks 4
  14. Oh joy... Appears Valve has likely made some major changes to the Steam Client Shortcuts interface again... Likely some of the vtable offsets have changed. I will look into this as quickly as possible so that those of you who wish to use the beta version of Steam may continue to do so.

    Note: I have not actually verified that the beta version of Steam is broken with the plugin.. I am only assuming so based on several of your posts concerning issues while using the beta version of Steam.

    • Like 1
    • Thanks 3
  15. On 3/17/2022 at 5:42 PM, The_Keeper86 said:

    Hey guys, I've been having some stuttering issues with Flycast core in Windows 11 (not related to SteamLauncher) so I made an image backup and decided to go back to Windows 10. I decided to try the 2021 LTSC  build for testing and for whatever reason SteamLauncher doesn't work. It just loads the Steam Proxy window and does nothing. Anyone else have this problem? If it's an issue with the LTSC build I can go back to the normal 10 Pro edition.

    Just leaving a note here that I talked with @The_Keeper86 directly on Steam about the issues he was having.

    • Thanks 1
  16.   

    On 3/17/2022 at 4:53 PM, fromlostdays said:

    Thanks for following up. I got mad with it and put it down for a bit. Just tried again.

    Does it work, yes and no.

    Things I did:

    • Set LB/BB Steam and SteamOverlayUI to all launch as admin.
    • Turned off LB Gamestart screens because after seeing it so many times I got mad with it haha
    • Tried importing genshinimpact.exe to launchbox 
    • Tried importing launcher into LB instead of genshin exe
    • Turned off that windows nag notification (but I'm not happy about having to do that, still can't figure out why it comes up every time I launch).

    Nothing made it work through launchbox with Steamlauncher. However something in the above did make the overlay work when launching through steam proper, which is good enough for me. I setup all my steam games in LB, but the truth is I don't open launchbox just to then launch a steam game so I'm good to dive into this game I've heard so much about this evening.

    I just specifically tested the setup that I suggested (run Steam as admin, run LB as admin, launch Genshin from LB with SteamLauncher enabled) and everything works fine including the Steam overlay. Just to be sure, in LB, your Genshin Impact game entry is pointed to "GenshinImpact.exe", right (as opposed to trying to launch a Steam URL or the Genshin Impact Launcher or something else)? While you can certainly open up the file properties and configure an exe to run as admin if you want to, when I'm saying to run something as admin, I'm simply referring to right clicking the exe (or a shortcut to it) and clicking "Run as administrator". Btw, you don't need to set "SteamOverlayUI" to run as admin... It is launched by Steam so it will run with whatever permissions Steam is run with.

    Let me expound on that a bit more actually... The only reason Steam would have to be run as admin for its overlay to work is if a particular game has a flag set that requires it to be run as admin (which unfortunately is common these days because of lazy devs and terrible programming practices.. in 99% of cases you can actually force these games to run without admin permissions by using a special command). The reason this is so is because if a game is running as admin and Steam is not, Steam won't have the appropriate permissions to inject its overlay into the game process (because low/medium privilege processes can't inject code into high privilege processes). Furthermore, if you're seeing a UAC ("Do you want to allow this app to make changes to your device?") dialog when you run a game from a launcher (whether that be LB, Steam, or whatever), then that means that the launcher is NOT running as admin. Any process that is running as admin will NOT show a UAC dialog whenever it launches another process with admin privileges (by default, a process launches other processes with the same privileges it has.. so if it is running as admin, it will launch other processes as admin and won't show a UAC dialog)... so if you're seeing a UAC dialog when you try to launch Genshin from LB/Steam/etc, then you can be sure that for whatever reason your launcher is not actually running as admin.

    I guess I'm unfamiliar with the windows nag notification you're talking about... Unless you're talking about UAC? If you're referring to UAC, then you absolutely should NOT turn it off. You're making a huge sacrifice in security doing so. You're welcome to take my advice or leave it but being that my occupation is in reverse code engineering (computer security), I can confidently tell you from an educated perspective that disabling UAC is a terrible idea unless you have a good reason for doing so and know what you're doing.

    On 3/17/2022 at 4:53 PM, fromlostdays said:

    I do have one question: Is there any reason for me to not want to run all of these things as admin? Or should I just leave them like that from now on?

    Thanks peeps!

    You really should not run anything as admin that you don't have to... If there is a bug in a piece of software that can be exploited by an attacker and that software is running as admin, the attacker will have complete, unmitigated access on your system and can do anything they please. You're of course always going to be playing a balancing game between convenience and security and only you can decide how much security you're willing to trade for convenience. My suggestion would be to only run Steam/LB as admin whenever absolutely necessary (such as when playing Genshin). In an ideal world, for normal, every-day tasks, users wouldn't even log into Windows with an administrator account.. However, due to a wide variety of issues, this isn't realistic for most people and that is exactly the reason that UAC exists. It helps to keep certain processes from running with unlimited, admin-level rights and warns you whenever a process tries to obtain admin privileges.

    • Like 1
    • Thanks 1
  17. On 3/14/2022 at 7:59 PM, fromlostdays said:

    More of a general question but has anyone been able to get the Steam overlay working on Genshin Impact?
    [...]
    Any advice appreciated!

    Just wanted to followup with you and see if you were able to get the overlay working with my previous advice. Let me know if it works out for you.

    Edit: Just thought I would also note that if you put the text '-show-screen-selector' (without the quotes) under 'Launch Options' in your non-Steam shortcut (or as a launch argument in LB), this will force the Unity screen selector dialog to be shown prior to Genshin launching which will allow you to set custom resolution and graphics options prior to the game launching (including being able to force windowed mode).

  18. 14 hours ago, fromlostdays said:

    More of a general question but has anyone been able to get the Steam overlay working on Genshin Impact? 

    Things I've tried:

    • Importing GI exe into launchbox and launching with Steamlauncher enabled
    • Importing GI exe into Steam as a non-steam game and launching.
    • The above two methods while running Steam as an Administrator

    The overlay just stubbornly refuses to show up.

    Relevant details:

    • I'm running in 4k windowed mode as GI doesn't let me run full screen.
    • I downloaded the game from the website, not EPIC
    • Every time I run the game I get that annoying Windows warning "Do you want to let this app make changes to this device?" (Can't make it stop, and wondering if this is somehow interfering with the overlay.)

    Any advice appreciated!

    Steam has to be running as admin and if you want to launch it through LB using SteamLauncher, you'll have to run LaunchBox as admin too. The reason for this is Genshin's stupid anti-cheat driver which is implemented very poorly. It requires Genshin to be running as admin in order for it to communicate with the kernel driver.

    • Thanks 1
  19. 18 hours ago, Benuno said:

    No Problem! @Lahma the only important request I have currently is excluding any emulator/game entry from SteamLauncher.

    I'm working on it. Got it mostly implemented already actually. Just need to do a bit more testing and then implement a tab in the GUI for managing the feature. You can refer to this previous post of mine to see the concept for how the feature will function:

     

    • Like 2
    • Unusual Gem 1
  20. On 2/24/2022 at 3:41 AM, Benuno said:

    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

    Thanks for sharing your work @Benuno. I will take a look at it as soon as I get a chance. Hopefully there are other SteamLauncher users who will find it useful as well.

    • The Cake is a Lie 1
  21. 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
×
×
  • Create New...