Jump to content
LaunchBox Community Forums

Recommended Posts

On 7/18/2021 at 9:05 PM, fromlostdays said:

So I'm running into an interesting case and sorry if this has been addressed before. I have 3 Wii U games in Launchbox, one of them works fine with Steamlauncher enabled and the Overlay works as well. Two of them won't launch with it enabled, no pop ups or anything when attempting to launch. I set the logging to verbose and let me know if you need all of that, but the only thing I can see in that log that indicates a problem is the same thing that pops up if the logging is set to "error":

2021-07-18 20:47:40 [Error] [GameLaunchingPlugin] [OnAfterGameLaunched] - An error occurred while creating/launching the Steam shortcut: Object reference not set to an instance of an object

My first thought was that it must have something to do with the titles of the games in Launchbox because everything else is the same, but I can't figure it out.

AANNNNDD I'm a genius. 

This is going to get weird, but I was able to fix it. HOW I was able to fix it is a little hard to explain and WHY this fixes it makes no sense to me but here goes:

-The game that worked I imported a long time ago (I just wanted to test the system etc.)

-The two games that did not work, I imported today

-I should note here that I'm importing .rpx files. I noticed that all three games had the title of the .rpx file amended to the title of the game in launchbox. So the one that works looks like "Star Fox Zero carrot" where carrot was the name of the rpx file. However, it didn't show up in the Launchbox/Edit title of the game like that. Instead the "carrot" part was below the title under "version" in Launchbox. Remember that this game worked.

-The same exact situation was happening to the other two, but for some reason when I clicked/edited the games and removed the title of the .rpx from the "version" info in launchbox... joy.

-Again, to be clear, the older game still works with that version info in there, but for whatever reason now, if you import rpx, you may have to delete the version info for steamlauncher to launch the game. ?

 

Hey @fromlostdays, I am really sorry that I am only just now getting back to you. Despite reading your msg the day you posted it, it has been a very crazy week for me, and I just haven't had a chance to respond. I'm not really sure what to make of your issue as my plugin never even reads the game's 'Version' field so it doesn't know what is in this field or that it even exists. I have an extensive Wii U library and while most of my imported Wii U games have the string 'code' in the version field, some games have different strings in that field such as 'USA v1.20', '[APKE01] [USA] [Loadiine]', and '[ARME41] [USA] [Loadiine]'. All of those games work fine. I even tried modifying some of my games to have different content in the version field and experienced no issues (which is completely expected since the plugin literally has no knowledge that this field even exists.)

The only conclusion I can come to is that you were possibly experiencing a different issue that that you inadvertently and unknowingly fixed and erroneously attributed the fix to changing the data in the version field. If that is not the case, then I do not have any viable explanation as I have never had anyone else report a similar problem or experienced it myself... and again, I wouldn't even know how to explain it if it did actually happen since the plugin never reads or has any concept of what LB game version field is. If you can provide a concrete explanation on how to reproduce the issue then I would be happy to look into it further but otherwise, I'm kind of at a loss. Sounds like you at least got things working now though so hopefully you're not having any other issues. Sorry I couldn't be of more help.

  • Thanks 1
Link to comment
Share on other sites

You absolutely don't have to apologize! I was so happy I figured out what I perceived as a bug! You do this on your own time and it's appreciated. And yes I'm all setup loving BOTW on PC for so many reasons, but the main one is being able to map the what I consider horribly wonky native controls onto my Xbox elite. 

 

Having said that the issue is 100 percent reproducible on my end. Every game I imported, I had to delete the version info to get them to launch with steamlauncher on, and again the game I already had imported in that system still works with the version info in there so if I had to guess it has something to do with a LB update that happened in the interim.

The issue is so niche its probably not even worth looking into but if anyone else runs into it at least we have record of the fix.

Just in case you do it get curious and want to try to reproduce it, this is how I import:

  • Drag rpx file from folder drop into launchbox
  • System Nintendo Wii U
  • Emulator: Cemu
  • Match to LB Database
  • Download all Media from LB and Emumovies (Remove roughly match checked)
  • Launch game from current location (which fyi all my roms are on a different drive than the emulator)
  • Custom Options "Look for PDF" and "Combine Roms with Matching titles" both checked (from use with other systems, didn't bother to uncheck)
  • Manually change title from rpx title to game title
  • Finish import

Just in case it matters steamlauncher would have been turned on during all my imports

Problem: try to launch game nothing happens

Fix: right click edit game delete any characters under version field

Joy.

Thanks again for this awesome plug-in! 

EDIT: Haha you're not going to believe this but the mystery deepens. I just went ahead and did another import, this time I imported Windwaker, follow the exact steps listed above. Sure enough, after import wouldn't launch. I went in and edited the version info, but this time I didn't delete it and save, I deleted it and added literally the words "something else" in the version box and the game launched after that. Absolutely bizarre.

Edit Edit: And for the final mind f***. I tested one more import, and this one was Shovel Knight. I picked this one because the rpx file was named close enough to the game title that LB would pick it up without me having to edit the title on import. Imported fine, matched to the database caught all the art. Go to launch, nothing. Now, because the rpx didn't need to be renamed, the version info was EMPTY already. So I ADDED "something else" to the version info, and then it launched fine. ? 

Edited by fromlostdays
Link to comment
Share on other sites

10 hours ago, Nokiaman said:

Not sure if you can do something about it, but games launched from the new tray icon option don't work with SteamLauncher.

Tray icon? Obviously I'm not up to date on this new feature. Care to explain how it works? Also... why would you want to launch a game via LB through a tray icon? Surely I must be missing something...

Link to comment
Share on other sites

In the newest LB there's a feature to minimize LB to the system tray. From there you can right click it and there's exit, reopen options as well as a populated list of your most recent games that you can launch right from that context menu, fyi. No idea how it works. 

Link to comment
Share on other sites

23 minutes ago, fromlostdays said:

In the newest LB there's a feature to minimize LB to the system tray. From there you can right click it and there's exit, reopen options as well as a populated list of your most recent games that you can launch right from that context menu, fyi. No idea how it works. 

Ah ok.. I understand now. Unfortunately, if the plugin isn't working when you click the system tray option to launch one of your recently played games, I doubt there is going to be anything I can do about that. My plugin hooked into LB's  'PlayGame' (can't remember exactly what its called off the top of my head) so if that function and its related callbacks aren't being called by LB, there probably isn't anything I can do about it. I can't conceive of any reason why launching a game through the tray icon wouldn't call the same exact function as double clicking a title in LB itself or why doing so wouldn't invoke the plugin API callbacks but it sounds like that is likely the issue. I will check it out to be sure and if it is indeed the case, I will shoot a msg to the devs and see if we can't get it fixed. Thanks for letting me know about the new feature (and the problem with it) @Nokiaman.

@fromlostdays, I will try to reproduce the issue according the instructions you supplied. Thanks for the info.

  • Thanks 1
Link to comment
Share on other sites

2 minutes ago, Lahma said:

@fromlostdays, I will try to reproduce the issue according the instructions you supplied. Thanks for the info.

Again, don't feel compelled. Its all up and working. But, I was testing for my own edification and if you do want to test yourself, I added more details and two new test cases to the post above. Thanks again!

Link to comment
Share on other sites

1 hour ago, fromlostdays said:

You absolutely don't have to apologize! I was so happy I figured out what I perceived as a bug! You do this on your own time and it's appreciated. And yes I'm all setup loving BOTW on PC for so many reasons, but the main one is being able to map the what I consider horribly wonky native controls onto my Xbox elite. 

 

Having said that the issue is 100 percent reproducible on my end. Every game I imported, I had to delete the version info to get them to launch with steamlauncher on, and again the game I already had imported in that system still works with the version info in there so if I had to guess it has something to do with a LB update that happened in the interim.

The issue is so niche its probably not even worth looking into but if anyone else runs into it at least we have record of the fix.

Just in case you do it get curious and want to try to reproduce it, this is how I import:

  • Drag rpx file from folder drop into launchbox
  • System Nintendo Wii U
  • Emulator: Cemu
  • Match to LB Database
  • Download all Media from LB and Emumovies (Remove roughly match checked)
  • Launch game from current location (which fyi all my roms are on a different drive than the emulator)
  • Custom Options "Look for PDF" and "Combine Roms with Matching titles" both checked (from use with other systems, didn't bother to uncheck)
  • Manually change title from rpx title to game title
  • Finish import

Just in case it matters steamlauncher would have been turned on during all my imports

Problem: try to launch game nothing happens

Fix: right click edit game delete any characters under version field

Joy.

Thanks again for this awesome plug-in! 

EDIT: Haha you're not going to believe this but the mystery deepens. I just went ahead and did another import, this time I imported Windwaker, follow the exact steps listed above. Sure enough, after import wouldn't launch. I went in and edited the version info, but this time I didn't delete it and save, I deleted it and added literally the words "something else" in the version box and the game launched after that. Absolutely bizarre.

Edit Edit: And for the final mind f***. I tested one more import, and this one was Shovel Knight. I picked this one because the rpx file was named close enough to the game title that LB would pick it up without me having to edit the title on import. Imported fine, matched to the database caught all the art. Go to launch, nothing. Now, because the rpx didn't need to be renamed, the version info was EMPTY already. So I ADDED "something else" to the version info, and then it launched fine. ? 

Possibly unrelated but thought I'd mention. 

Last night I was messing with my PSX collection. I changed the core over (was playing Um Jammer Lammy and the latency on PCSX-Rearmed was killing me) Changed to Beetle and it wouldn't launch at all. No Retroarch launching, Steamlauncher opened then closed on timeout (the core wasn't set up right however) I went to change back to PCSX and it still wouldn't launch untill I rebooted Steam and Launchbox.

Probably unrelated mind

Link to comment
Share on other sites

2 minutes ago, JedExodus said:

Possibly unrelated but thought I'd mention. 

Last night I was messing with my PSX collection. I changed the core over (was playing Um Jammer Lammy and the latency on PCSX-Rearmed was killing me) Changed to Beetle and it wouldn't launch at all. No Retroarch launching, Steamlauncher opened then closed on timeout (the core wasn't set up right however) I went to change back to PCSX and it still wouldn't launch untill I rebooted Steam and Launchbox.

Probably unrelated mind

Hmm... I can think of a possible cause for this.. Let me take a look at the code and I'll get back to you.

  • Thanks 1
Link to comment
Share on other sites

5 hours ago, Lahma said:

I can't conceive of any reason why launching a game through the tray icon wouldn't call the same exact function as double clicking a title in LB itself or why doing so wouldn't invoke the plugin API callbacks but it sounds like that is likely the issue.

The functionality uses the exact same function call as when a user double clicks a game or right clicks in LaunchBox and presses play.

Link to comment
Share on other sites

Looking for some help/advice here.  I love steam launcher because I have a GPD Win Max so the plugin makes it easy for me to transition seamlessly between the built in controller and any of the external controllers I like to use when plugged into a monitor.  The only part that annoys me is the Duckstation core in Retroarch. Whenever I start a PS1 game up from Big Box the emulator pauses itself shortly after start up.  I then have to click on the mouse to get the game to resume and play as normal.  I figured out this is because of Steam Launcher taking the focus of Retroarch at startup, causing it to pause itself. I the went into the Retroarch settings and made it so taking focus off Retroarch doesn't pause the program. However the problem is that none of the inputs works until I click the mouse to bring the focus back to Retroarch so it doesn't really solve my problem. This only happens with Duckstation core. Every other Retroarch core I use pauses itself also, but the difference is that it also resumes itself instantly without me need to click the mouse.  I understand this a very specific problem, but it is annoying so I'm curious if anyone has encountered a similar problem and knows of a solution.  I don't want to switch to another PS1 core either, Duckstation is perfect for all of my PS1 needs. Thanks for any ideas/solutions you guys might have.

Link to comment
Share on other sites

4 hours ago, rfj831@gmail.com said:

Looking for some help/advice here.  I love steam launcher because I have a GPD Win Max so the plugin makes it easy for me to transition seamlessly between the built in controller and any of the external controllers I like to use when plugged into a monitor.  The only part that annoys me is the Duckstation core in Retroarch. Whenever I start a PS1 game up from Big Box the emulator pauses itself shortly after start up.  I then have to click on the mouse to get the game to resume and play as normal.  I figured out this is because of Steam Launcher taking the focus of Retroarch at startup, causing it to pause itself. I the went into the Retroarch settings and made it so taking focus off Retroarch doesn't pause the program. However the problem is that none of the inputs works until I click the mouse to bring the focus back to Retroarch so it doesn't really solve my problem. This only happens with Duckstation core. Every other Retroarch core I use pauses itself also, but the difference is that it also resumes itself instantly without me need to click the mouse.  I understand this a very specific problem, but it is annoying so I'm curious if anyone has encountered a similar problem and knows of a solution.  I don't want to switch to another PS1 core either, Duckstation is perfect for all of my PS1 needs. Thanks for any ideas/solutions you guys might have.

Hey there @rfj831@gmail.com, the problem you're experiencing isn't unheard of. No joke, I've probably spent over 40-50 hours working on/tweaking the code for handling window focus. The core of the issue is that I am fighting against LB/BB which is also trying to manage which window is active/focused for both its startup/shutdown windows and the actual game/emulator window. Currently, there is no way to deal with this type of issue in the LB plugin API so I am having to work with/around LB doing its own thing. For the most part, the code as it currently is deals with most situations pretty well but there are certainly edge cases as you've found.

One thing that would be really helpful for you to try in order to give me a little more info is trying Retroarch with that same core but without using SteamLauncher. When you do this, is the window focus being handled correctly? I've come across a few instances where LB won't focus the game/emulator window after it starts running and if this happens, it is even less likely that it will work correctly with SteamLauncher. The win32 API for handling window focus/active/z-order is a mess and it can do strange things and work in ways that are simply baffling.

If the window focus is working correctly when not using SteamLauncher, I will download the Retroarch core and see if I can fix the issue for you. Just out of curiosity, in Retroarch, are you using windowed mode, windowed fullscreen mode, or fullscreen mode? Also, do you know what video driver you are using?

Link to comment
Share on other sites

On 7/27/2021 at 6:20 AM, C-Beats said:

The functionality uses the exact same function call as when a user double clicks a game or right clicks in LaunchBox and presses play.

Thanks for the confirmation on that @C-Beats. I couldn't imagine any scenario where that would not be the case. Now that we know that, I can't imagine why the tray icon launch game feature wouldn't be working with the plugin as there should literally be no difference. Guess I'll have to check it out and see what is going on...

Link to comment
Share on other sites

1 hour ago, Lahma said:

Hey there @rfj831@gmail.com, the problem you're experiencing isn't unheard of. No joke, I've probably spent over 40-50 hours working on/tweaking the code for handling window focus. The core of the issue is that I am fighting against LB/BB which is also trying to manage which window is active/focused for both its startup/shutdown windows and the actual game/emulator window. Currently, there is no way to deal with this type of issue in the LB plugin API so I am having to work with/around LB doing its own thing. For the most part, the code as it currently is deals with most situations pretty well but there are certainly edge cases as you've found.

One thing that would be really helpful for you to try in order to give me a little more info is trying Retroarch with that same core but without using SteamLauncher. When you do this, is the window focus being handled correctly? I've come across a few instances where LB won't focus the game/emulator window after it starts running and if this happens, it is even less likely that it will work correctly with SteamLauncher. The win32 API for handling window focus/active/z-order is a mess and it can do strange things and work in ways that are simply baffling.

If the window focus is working correctly when not using SteamLauncher, I will download the Retroarch core and see if I can fix the issue for you. Just out of curiosity, in Retroarch, are you using windowed mode, windowed fullscreen mode, or fullscreen mode? Also, do you know what video driver you are using?

So first of all, yes, when I disable steam launcher the emulator runs without issue. That's why I guessed steam launcher is causing it. Secondly, I have tried duckstation with Steam launcher enabled in both windowed Fullscreen and Fullscreen mode. It made no difference, either way the emulator would pause itself. It may just be a setting within the core itself but looking through the core settings I couldn't identify anything that could cause the issue.

Link to comment
Share on other sites

On 8/1/2021 at 10:18 PM, rfj831@gmail.com said:

So first of all, yes, when I disable steam launcher the emulator runs without issue. That's why I guessed steam launcher is causing it. Secondly, I have tried duckstation with Steam launcher enabled in both windowed Fullscreen and Fullscreen mode. It made no difference, either way the emulator would pause itself. It may just be a setting within the core itself but looking through the core settings I couldn't identify anything that could cause the issue.

Hey @rfj831@gmail.com, just wanted to let you know I haven't forgotten about you. I'm going to download that core and try to implement a solution for you just as soon as I get a chance. I'm incredibly busy with work stuff at the moment but I will get to it just as soon as I can.

  • Like 1
Link to comment
Share on other sites

On 8/5/2021 at 5:00 PM, Lahma said:

Hey @rfj831@gmail.com, just wanted to let you know I haven't forgotten about you. I'm going to download that core and try to implement a solution for you just as soon as I get a chance. I'm incredibly busy with work stuff at the moment but I will get to it just as soon as I can.

No sweat man. Lord knows I got plenty of other stuff to play. Whatever you can do is appreciated.

Link to comment
Share on other sites

Have just stumbled upon another wee issue. It seems if a game title has a special character like an accent (or a as I would call it a fada) SteamLauncher is unable to load the game up. SteamLauncher loads and times out.

In my case it was Pokémon (don't laugh) Renaming to "Pokemon" and the game launched grand. Was repeatable across different emulators (initially thought it was a Retroarch thing)

Link to comment
Share on other sites

On 8/15/2021 at 3:52 PM, JedExodus said:

Have just stumbled upon another wee issue. It seems if a game title has a special character like an accent (or a as I would call it a fada) SteamLauncher is unable to load the game up. SteamLauncher loads and times out.

In my case it was Pokémon (don't laugh) Renaming to "Pokemon" and the game launched grand. Was repeatable across different emulators (initially thought it was a Retroarch thing)

Really!? Damn... I already addressed that issue once in the past and it was a total bitch. The reason it was so problematic to fix was because of a bug in Steam's handling of unicode characters. Essentially, Steam would mishandle its interpretation of Windows paths from UTF-16 (which WIndows paths use) to UTF-8 (which Steam uses). As a result, I had to intentionally mangle the path data into an incorrect value so that Steam would then interpret it correctly. Perhaps Steam has finally fixed their bug (after a couple of decades) when they made all of the significant changes to the Steam library and UI. I've moved this issue to the top of my 'to-fix' list along with the issue reported by @rfj831@gmail.com about the Duckstation Retroarch core.

Btw @JedExodus, did you ever get the issue resolved that you reported concerning changing your Retroarch core to Beetle? If not, can you give me some additional details? Does changing the core back to the previous core make it start working again? How about trying a different core? I assume you tried restarting LB and Steam and you double checked your emulator and rom paths? Any additional info you can give me that would make it easier to look into would be appreciated.

Link to comment
Share on other sites

Posted (edited)

Hey @rfj831@gmail.com, I tested out Retroarch with the Duckstation core and I'm not having any issues with the Retroarch window losing focus. It is really hard for me to say what it could be without doing some further investigating some of which will require some info from you. For one, do you have "Prevent Steam Focus Stealing" enabled in the SteamLauncher options? Also, are you using Startup, Shutdown, and/or Pause screens in LB? I do all of my testing without Startup/Shutdown screens enabled. When you try other cores in Retroarch, you said you don't experience this same issue, right? You can try enabling debug logging, then run a game with the Duckstation core, then close Retroarch, close LB, and then upload the debug.log file to pastebin and send me the link. Honestly, I'm not sure how much help that will be but it is worth a try.

Additionally, if anyone else watching this thread could maybe try out the Duckstation core on Retroarch and let us know if you are or are not having issues with the Retroarch window losing focus, that would be super helpful. Maybe @JedExodus might offer to try it out? Thanks!

Edited by Lahma
Link to comment
Share on other sites

On 8/25/2021 at 2:52 PM, Lahma said:

Hey @rfj831@gmail.com, I tested out Retroarch with the Duckstation core and I'm not having any issues with the Retroarch window losing focus. It is really hard for me to say what it could be without doing some further investigating some of which will require some info from you. For one, do you have "Prevent Steam Focus Stealing" enabled in the SteamLauncher options? Also, are you using Startup, Shutdown, and/or Pause screens in LB? I do all of my testing without Startup/Shutdown screens enabled. When you try other cores in Retroarch, you said you don't experience this same issue, right? You can try enabling debug logging, then run a game with the Duckstation core, then close Retroarch, close LB, and then upload the debug.log file to pastebin and send me the link. Honestly, I'm not sure how much help that will be but it is worth a try.

Additionally, if anyone else watching this thread could maybe try out the Duckstation core on Retroarch and let us know if you are or are not having issues with the Retroarch window losing focus, that would be super helpful. Maybe @JedExodus might offer to try it out? Thanks!

Hey @rfj831@gmail.com I gave it a go as well but was unable to replicate the issue. My thought is that maybe the GDP (they look so cool btw) has some inbuilt software that could be messing with the focus?

On a sidenote BigBox does not work for me on the latest LB release, reverting back to the previous release it works grand. Wondering what other peoples experiences with this are?

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
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...