Jump to content
LaunchBox Community Forums

CosmicDan

Members
  • Posts

    3
  • Joined

  • Last visited

Posts posted by CosmicDan

  1. 1 hour ago, Lahma said:

    Hey CosmicDan, 

    Sorry it has taken me so long to respond.. I've just been really busy lately. You're absolutely right, I never posted the source to GitHub, and there is really no excuse for that. If I had any indication that anyone actually wanted to look at and/or use the source code, I definitely would not have procrastinated so long. Since it seems that you are indeed interested though, I will go ahead and get it done. I will try to have it posted by the end of the day today or tomorrow (April 8th or April 9th). I tend to get a little nitpicky about cleaning up the code before posting it publicly, so the process never goes as quickly as I would like ;) 

    Now, on to your other comments/questions... Where to start? The thing you are describing (with the standalone stub EXE) is exactly what this project was created to do away with. I'm not sure if you've heard of "GameLaunchProxy", but it is essentially exactly what you're describing. It was originally created by another user on these forms, Nielk1. However, when I came upon it, it was no longer functioning due to changes in the Steam API, and Nielk1 was no longer updating the project. I took it upon myself to fork his code and update it so that it would function again with current Steam versions. You can find my fork here: 
    https://github.com/lahma69/GameLaunchProxy

    I haven't used it recently, and I can't recall at this moment if any major changes have been made to the Steam API since I last updated it that would cause it to no longer function, but if it isn't working, it would be very easy for me to fix the problem... So, if its something you are interested in using, give it a shot, and let me know if you have any problems and I can push out a quick update for you. Wrapping your head around how it works is initially might be a little bit difficult, but it shouldn't be too hard to figure out.

    To be perfectly honest though, the entire project got very little attention, and seemed to have very few, if any, users. I think the difficulty required to set it up and use it properly (which is an inherent problem to any generalized approach that can work with basically any launcher) is probably what kept it from being widely utilized. That is exactly why I created this LaunchBox plugin. Its intent was to greatly simplify things and essentially make the entire process a zero configuration, 1-click affair. 

    The last point I'll address is about making "Launch via Steam" the default launch option. While this would be extremely valuable, and has been requested by other users besides you, it is unfortunately not possible using the built-in LaunchBox plugin API. Unfortunately the API is extremely limited. I won't go too far into the details, as if you're interested, you can take a look at the API yourself to get an idea of what I'm talking about. There is actually much more versatility I would have liked to have added into the plugin, but the API at this point just isn't versatile enough to do much else. 

    This isn't to say that adding such features through other means such as code injection would be totally impossible, but due to LaunchBox using the .NET Framework, practices such as code injection are actually not at all straightforward or simple. I've actually done a lot of experimentation as far as adding additional features that fall outside of the plugin API's supported abilities, but at this point, the only success I've really had is with deobfuscation and modification of LaunchBox EXE/DLL files themselves. I'm pretty sure Jason, the author of LaunchBox, would not be a happy camper if someone starts releasing modified versions of his code without his permission however, so unfortunately that path is a no-go for public release. Hopefully Jason will make extensibility updates to the plugin API a priority sometime in the near future though, and maybe at that point I can add some of the additional functionality people have been requesting. 

    Anyways, thanks for the kind words CosmicDan. Its always nice to know that someone is enjoying the result of all the time put into creating such a project (and keeping it updated and functioning with all of Valve's erratic constant changes to the Steam API). If I failed to answer any of your questions or if you have anything else you'd like to discuss, feel free to post a response, and I will try to respond a bit quicker this time! Thanks again.

    Cheers mate. I sent you a PM since my response is not really specific to LaunchBox nor SteamLauncher per se but the code behind it.

    Thanks for the detailed reply :)

  2. Very nice, five stars from me!

    I noticed you never uploaded sourcecode to GitHub, which is concerning :( I do have a suggestion and could even take a crack at it myself if you didn't have time.

    It would be fantastic is if it had an accompanying standalone/stub EXE - this way it could be set as an emulator EXE which would:

    • Launch via Steam proxy when you use the default game launch (e.g. double click)
    • Allow for variants to be used with it too

    You would have to pass additional commandline arguments to it, though I hope this is reasonable. It could also make it compatible with other front-ends or anything really; much more universal!

    Maybe the Launchbox-specific plugin could be it's own "shim" dll, and the EXE as a similar small entrypoint - the bulk of the "plugin" (i.e. the non-specific launchbox stuff - Steam interfacing and launching and whatnot) could be another linked DLL?

×
×
  • Create New...