Jump to content
LaunchBox Community Forums

JoeViking245

Moderators
  • Posts

    4,956
  • Joined

  • Last visited

  • Days Won

    36

Posts posted by JoeViking245

  1. On 10/9/2022 at 7:22 PM, BabyBillyFreeman said:

    a steam game called Door Kickers

    With a Steam game, what's happening is as I described above.  When you launch the via "steam://rungameid/248610", it opens steam THEN opens DoorKickers.exe.

    Also, what's happening with your script is it's ran BEFORE the main application (which is what you want) and the 1st thing it does is wait for DoorKickers to get closed (exited).  Since at this point DoorKickers isn't even running, the script "is done waiting" and goes to the next line.  Which is to shutdown/exit joytokey.  

    You say "it doesn't seem to have any effect".  Is it not even closing joytokey?  Do you have a 2nd additional app (also set to run BEFORE) that's starting joy2key?  I suppose you'd kind of have to.  So, these 2 scripts [at this point] are butting heads.  Easy fix, combine the 2 scripts.

    You'll want to (NEED to) add in a WinWait to wait for DoorKickers.exe to actually be running. THEN you can wait for it to close.

    Run, "D:\Utilities\JoyToKey\JoyToKey.exe"
    WinWait, ahk_exe DoorKickers.exe
    WinWaitClose
    ;WinClose, ahk_exe JoyToKey.exe  **DOES NOT WORK WITH JoyToKey.exe**
    Process, Close, JoyToKey.exe

    The issue doing it this way is you need to create a different script for each game.  Replacing DoorKickers.exe with the 'new' games [actual] executable.  Which, beyond being tedious, isn't that big of a deal.

    EDIT:  I am told (I've never used it myself) JoyToKey.exe is one of the few programs that require "extra force" when closing.  WinClose will not work.  You need to use:

    Process, Close, JoyToKey.exe

    Codes has been edited to reflect this change.

    Another option is to create a new "emulator" which is actually an AutoHotkey script used to launch your Steam games.  It's a onetime setup and will work for all your Steam games that are launched via "steam://rungameid/xxxxxx".

    The script would look something like this:

    Run, "D:\Utilities\JoyToKey\JoyToKey.exe"                       ;**** Verify Path ****
    Run, "C:\Program Files (x86)\Steam\Steam.exe" -applaunch %1%    ;**** Verify Path ****
    
    isRunning := "0"
    While (isRunning = "0") ; Wait until the game is launched
        RegRead, isRunning, HKCU\Software\Valve\Steam\Apps\%1%, Running
        Sleep, 500
    
    While (isRunning = "1") ; Wait until the game is closed
        RegRead, isRunning, HKCU\Software\Valve\Steam\Apps\%1%, Running
        Sleep, 500
    
    Process, Close, JoyToKey.exe

     

    In LaunchBox add a new emulator.  Use (Browse.. to) AutoHotkey.exe that comes with LaunchBox as your Application Path, so you don't have to install it. (LaunchBox will convert it to a Relative Path, as shown.)  Point to the script as your Default Command Line. ("Put this path in quotes.)  Check BOTH boxes. Save. 

    image.thumb.png.cafd0f68d5ddd676bbb64f1511ed5649.png

     

    Set the Steam games you want to use JoyToKey with to use this emulator.

    image.thumb.png.e7a0aab2c4ab54c2de0eab4d302bc10b.png

     

    If you want all your Steam games to use JoyToKey, when creating the "emulator", go to the Associated Platforms section, select "Windows" (or whatever you've named the Platform, default is "Windows") under Associated Platforms and check the box Default Emulator.  Skip the above Edit Game all together.

  2. The screen positions you show with the marquee on the right, and lined up on the top, is how you want them set in Windows.  So that part's good.

    For troubleshooting, if you go to Options in BigBox and set marquee to None, does everything look as it should?  As in, the TV is showing BigBox and the marquee shows nothing?  I ask because in BB you have your Primary Screen set to "1" and in Windows, your TV is "2".  I know what Windows "says" isn't always as we see it, hence the test.

    (Assuming that's all good...) Someone on Discord said they fixed their marquee issue by shutting down Windows, powering off and physically disconnecting the marquee from the computer, restarting the computer, and then reconnecting the marquee after Windows is all booted and turn it on. 

    This might change "2" and "1" to "1" and "2" and you may need to move the marquee so it's positioned like you image above.

     

  3. Thanks for the suggestions.

    1 hour ago, Vanei said:

    Have the option to import other information such as developer and release date.

    This would be a duplicate effort of LaucnhBox's Update Metadata and Media tool option.  You'll be using that tool anyway to at least get the games Notes, at which time will also add developer, release date and a whole lot more.

     

    1 hour ago, Vanei said:

    An option to choose which console is equivalent in Launchbox

    You're talking about setting the platforms Scrape As value.  This would be wonderful!  Unfortunately, LaunchBox's default scrape-as values are not available through the API (unless I missed it somewhere).  As in, there isn't an available list automatically generated to select from.  To make this work, I would need to manually create a list of the currently 190+/- existing possibilities.  Me (or someone) creating the list is not the problem.  Updating the plugin every time new ones are added, is.

     

    1 hour ago, Vanei said:

    An option to, when importing clones as separate games, create a custom Launchbox attribute "cloneof" containing the name of the original game

    I had thought about this early on in the project.  But I was also trying to somewhat mirror what the built-in MAME Import Wizard does.  As soon as I saw the Wizard didn't deal with clones [beyond the option of adding as Additional Apps to the Parent], I abandoned the thought. :) 

    The option to add a Custom Field "Clone of" is not an unreasonable one.  But this will only work when selecting Import clones separately.  Additional Apps (when selecting Import clones as additional apps) don't have the option of Custom Field.

    Not sure if this helps any, release v4.05 puts any information found in ( parenthesis ) in the games Title into that games "Version" metadata.  Generally indicating that game is a clone.  However, it doesn't indicate what it's a clone of.  If you wanted to make a playlist of parents only or clones only, you could filter it off of "Version" being empty or not.  Unless of course the games Title has something in parenthesis that is actually part of the name and has nothing to do with versioning. 😊

    Maybe if I had a real-life example(s) of how you'd use "Clone of" to create a Playlist, we can come up with something that would be practical to implement.

     

    3 hours ago, Vanei said:

    An option to automatically mark as broken when importing games that are not supported

    Version 1.32 (March 4, 2020)

    - New Feature: If a newly imported game is tagged as not supported by MAME, it will be marked as "Broken".
        Will also check existing games in the Platform being imported to (in case MAME updated its' status)
        (Not applicable to clones when imported as additional apps)

    :D

  4. 1 hour ago, Vanei said:

    Wonderful tool!!!

    Do you plan to add new features? I have some ideas. If needed, I can help implement new features.

    Thank you!  After 3 years, I have no plans of adding new features.  But that's only because I haven't thought about it, and no one's suggested any recently. ;) The original intent of the plugin was to simply provide a means of getting MAME's softlists into LaunchBox using their proper game titles and pointing LB to the ROMs.  It has expanded beyond that to working with CHDs, accommodating ROM updating and even auditing your currently imports set.  Maybe even some other stuff I've forgotten about. lol

    As with all my plugins, I am ALWAYS open to suggestions and ideas.  I would like to hear what you have. :) 

  5. 5 hours ago, Garosath said:

    This worked perfectly! Well almost; I somehow end up with a comically large pointer on my PC monitor after I exit Big Box when it switches back to my PC profile

    Glad it [almost] worked.  I've never had the comical mouse pointer thing happen.  Do you by chance have your connected TV's "Scale and layout" in the Windows Display Settings set to something ither than 100%?

  6. 3 hours ago, C-Beats said:
    3 hours ago, faeran said:

    Fixed: Some changes made by plugins weren't being saved correctly

    @JoeViking245 Can you confirm you're seeing this update corrects the issues you brought up related to your plugin and data saving?

    Works perfectly!  Thank you.

  7. 9 hours ago, Garosath said:

    I'm also still interested in trying this out, as on rare occasions BB and RetroArch will boot up on the wrong monitor for me, so it would make everything consistent and fluid. Would you be able to share the batch file?

    So you know, I'm the only one that I know of here on the forums that uses "Monitor Profile Switcher" for this purpose.  It's a small simple program that does only what is needed and works perfectly.  A lot of people like using Display Fusion.  Probably because it has a lot of other "bells & whistles", it's frequently updated, and (just guessing) "if you have to pay for it, it must be good".  The views and opinions expressed here are those solely if the author and in no way reflect those of management.

     

    1st thing you'll need to do is to download Monitor Profile Switcher and then create/save the profiles for you monitor configurations.  Their Wiki page also describes how to do this.

    • Download the zip file, right click it and select Properties, check Unblock and click OK.
    • Extract the files to somewhere convenient.  i.e. F:\MonitorSwitcher\
    • Start MonitorSwitcherGUI.exe. This will show an icon on your task bar. image.png.c93e4db5527e7d824985f36ddbd7d3f9.png
    • Setup your monitors via Windows Display Settings with your PC as the Primary Monitor (I assume it's that way now).
    • Click the icon and select Save ProfileNew Profile, and name it something you'll remember.  i.e. PC_Primary.
    • Now in Display Setting, set your monitors so that the TV is the Primary Monitor (and any other adjustments you may need to make).
    • Click the icon and select Save ProfileNew Profile, and name it something you'll remember.  i.e. TV_Primary.
      • The 2 profiles you just created will be saved in C:\Users\YourUserName\AppData\Roaming\MonitorSwitcher\Profiles\
    • Now that you monitor settings are all screwed up for working from the PC, click the icon and select PC_Primary. You monitor settings will now be back to your "normal" settings.
    • Click the MonitorSwitcherGUI icon and select Exit.
    • Copy (or move) the 2 'profile' files ("PC_Primary.xml" and "TV_Primary.xml") from where they were saved to where you extracted the files above (F:\MonitorSwitcher\)

    2nd thing, create a batch file.

    • In your MonitorSwitcher folder, create a new batch file and name it something you'll remember.  ("BigBoxOnTV.bat")
    • The batch file will something like this:
    start /w "" "MonitorSwitcher.exe" -load:TV_Primary.xml
    start /w "" "F:\LaunchBox\Core\BigBox.exe"
    start "" "MonitorSwitcher.exe" -load:PC_Primary.xml

    On lines 1 and 3, change the file name (right after "-load:") to whatever you called them (if different than my example names).

    On line 2, change the path to where your LaunchBox is installed ("F:\LaunchBox").  But leave it pointing to "BigBox.exe" that is in the "Core" subfolder.  If you have it point to BigBox.exe that's in LaunchBox's root folder ("F:\LaunchBox\BigBox.exe"), this batch file won't work as intended.

    Double click on "BigBoxOnTV.bat" and if all goes well, watch magic happen. :) 

     

    Once this is all working as expected, to make the Command Prompt Window not show a 'popup' when you start the batch file, create a shortcut to batch file (in the same folder or somewhere else).  Right click the shortcut and select Properties.  Next to Run:, change it to Minimized and click OK.  Now use the shortcut to start the batch file.

  8. At least for keyboard inputs...

    Even though (for some reason) MAME shows P1 and P2 in the Input Assignments, it's still an alternating controller game.  Whereas Gauntlet can actually be played with 2-4 concurrent players.

    Your DK work around is to double up the P1 input assignments.  The problem with that is, while P1 is playing, P2 [controller] can mess with P1. ;) 

    At least that's what my testing came up with... couldn't get P2 to have its own key assignments.

    I don't know if it's different using actual controllers (like Xbox controllers).  Didn't test it.

  9. 9 hours ago, Garosath said:

    it seems more like a band-aid than a solution here

    Never said it was elegant. Just simple. And it is a solution. ;) 

     

    What you're needing to do is wait for a new instance of rpcs3.exe to open and then move that window.  I don't have that game to test with, so now really sure what all it's doing. Window-wise.   You may need to tweak it a little depending on what rpcs3 is actually doing with its windows for your game.

    WinWaitActive, ahk_exe rpcs3.exe
    WinGet, var, PID, A
    Send #+{Left}
    WinMaximize
    
    Loop
    {
       IfWinActive ahk_exe rpcs3.exe
       WinGet, var2, PID, A
       if var = var2
          Sleep 500
       Else
       {	
          Sleep, 2000      ;give it a sec or two to actually appear (may not be necessary?)
          Send #+{Left}
          WinMaximize, ahk_exe rpcs3.exe
          Break
       }
    }
    
    $Esc::Send !{F4}

    Depending on how many instances it opens to finally get to the actual game, you may need to add one or more loops to get and compare PID's.

    If the "exclusive features" opens yet another instance of rpcs3 windows (as does the game), that'll really screw things up (using the above example script).  But if you go straight to one of the games, you should be OK.  I don't know what the exclusive features actually are, but for me, if I'm putting a game on "the Big Screen", I'm just wanting to play the game. :D

     

    If you plan to pop in and out of exclusive features before actually starting a game, that could get messy.  Each instance of rpcs3 you start, you'll need to win+shift+left and maximize.  Between new windows opening up, you need to capture which window instances you've moved/maximized or nest more loops.

     

    I think the most straight forward solution might be to set the TV as the primary monitor before starting LaunchBox/BigBox when you want play games on it.  I use a program called Monitor Profile Switcher and created 2 different profiles. One where the arcade cabinet is the Primary monitor and another where the TV is the Primary monitor.  I then created a batch file that will: load the profile for the TV as primary, start BigBox, then when BB exits, loads the cab as primary profile.  No fuss. No muss. No Win+Shift+Left. Ever.

  10. If I'm reading this correctly, the simplest fix might be to set up a new ("2nd") RPCS3 emulator in LaunchBox, pointing to your same rpcs3.exe but with a different Running Script.  In the new script, add a Sleep timer right after the WinMaximize line.  Set it to however long you think it takes to select one of the 3 games have it start running. Then add another Send and WinMaximize lines after the sleep.  Then set "The Sky Collection to use this new emulator.

    WinWaitActive, ahk_exe rpcs3.exe
    Send #+{Left}    ;Send Win+Shift+Left
    WinMaximize, ahk_exe rpcs3.exe
    Sleep, 10000	 ;10 seconds
    Send #+{Left}    ;Send Win+Shift+Left
    WinMaximize, ahk_exe rpcs3.exe
    
    $Esc::
    {
       ;Process, Close, {{{StartupEXE}}}
       WinClose, {{{StartupEXE}}}    ;better method to exit a program
       ;WinClose, ahk_exe rpcs3.exe  ;alternate, direct method to exit a program
    }

    Adjust the Sleep timer accordingly.

  11. Try this:

    • Create a text file that contains the following, save it, and rename it to a .ahk file extension.  Something like "ClosePhoenixEmu.ahk"  Be sure it doesn't get saved with a .txt on the end. Like "ClosePhoenixEmu.ahk.txt"
    $Esc::
    WinClose, ahk_exe PhoenixEmuProject.exe
    ExitApp
    • Edit one of your games, go to Additional Apps and click Add Application
    • For the Application Path, Browse to ..LaunchBox\ThirdParty\AutoHotkey\ and select AutoHotkey.exe
    • In the Application Command-Line Parameters field, enter the full path to where you saved the file you created, in "quotes".
    • Check the box Automatically Run Before Main Application.
    • Click OK
    • Play the game and see if it works.

    image.thumb.png.485b10f97bc0e762241e4cec92eb77aa.png

     

    • Thanks 1
  12. 8 minutes ago, maxforwardspeed said:

    I actually did not use the MAME.xml, only the dat download option and used that exclusively to rebuild the set in Clrnamepro. By creating the mame.xml would I just create a profile from that instead of using the dat? Or am I going about this all wrong and need to use both?

    Sorry. I don't clrmamepro that often.  Yes, you're right.  Use the dat file.  You can open and search it the same way with a text editor to verify against your ROM.

    image.png.934e43a66c32049e4936c529ad04cabd.png

  13. 3 hours ago, musarezeq said:

    But the strange thing the command that I use, actually work on other games but that one is not , although it can still be closed by pressing the Alt+F4 on keyboard!!

    Since it's a Windows game and you're not using an emulator, how exactly are you setting up the command?  I assume an AutoHotkey script launched via an Additional App.  What does your script look like?  Are you trying to set it to a key on the keyboard (i.e. ESC)?  Or a button on a controller?  Both?

  14. 5 hours ago, musarezeq said:

    Hi,

    I tried most of these scripts to close most of the games. They were working flawlessly with the most but with some are not.

    let me more specific, Most of "Outright Games" like, PawPatrol Adventure City Calls.

    when I press physically Alt+F4 on my keyboard, the game close with no problem but not with the script !!

    any help is really appreciated.

    If you have the Steam version and are using the Steam ID# to launch the game, it's not going to work this way.  If you use the Steam game.exe to launch it, it may work.  But either way, you really should be exiting it through the games' menu (for Steam games).

    If you have a console version, which emulator are you using for your game?

  15. There are Mega Drive versions available.

    What you might try doing is in your Sega Mega Drive platform, select all the games then click Edit (or press Ctrl+E) to open the Bulk Edit Wizard.  Then when it asks which Field you want to change, select Region. For the Value, select Europe.  

    Once that's completed, when you download/update metadata and media for those games, I believe it should grab the "(Europe)" versions of the images.

    image.thumb.png.70373af5b52042caa561b9915dae394c.png

  16. 6 hours ago, maxforwardspeed said:

    Well, I tried starting from scratch and named my platform "Sega Naomi" and imported all of the games from the individual categories into one but I still didn't get the platform media and data to load. No big deal I suppose. I'll just have to look for the Naomi platform info manually.

    To be honest, I'm not sure how I got the System metadata in there for Sega Naomi 2.  (It was done quite a while ago) 

    I tried to reproduce it and the only way I could get it to work was to import the ROMs directly in LaunchBox into a new platform and setting the Scrape As value there.

    The plugin was set to assign the Scrape As value to Arcade for all 9 systems.  I have updated the plugin (v1.01) so it will now set the Scrape As value according to the system.  I figured this way it'll get the appropriate System metadata in there.  Then if later, anyone wanted to change to Arcade it'd be a lot easier as Arcade doesn't really have any metadata.   It goes something like this:

    System                     Scrape As
    ---------------------       -----------------
    Atomiswave            Sammy Atomiswave
    Cave3rd                   Arcade
    Gaelco PVR2           Arcade
    Hikaru                     Sega Hikaru
    Naomi Cart             Sega Naomi
    Naomi GDROM      Sega Naomi
    System SP               Sega Naomi
    Naomi Cart 2          Sega Naomi 2
    Naomi GDROM 2   Sega Naomi 2

    • Like 1
  17. 55 minutes ago, catalaman said:

    SHOULD YOU KNOW THAT ROM WORKS FINE ON MAME 0.222 , and dont work on mame 0.236 .

    in general normally the update facilitates and corrects the errors, why the update of the mame becomes more and more complicated with the old roms .

     

    As MAME (mame.exe version 0.xxx) updates, they've updated ROM dumps as well.   Not every ROM gets updated with every MAME update.  This is why if you update MAME and not the ROMs, most of the games will still work. In your case, Thunder Hoop is not one of them.

    The rule of thumb is you always want to have a ROM set (version) that matches you MAME version.  

    The reason your Thunder Hoop works in v0.222 is because you ROM (zip file) is from version 0.225 or earlier (i.e., 0.222).  If you look inside thook.zip, you will see that it only has 7 files.

    c09
    c10
    c11
    c12
    sound
    th18dea1.040
    th161eb4.020

     

    When the ROM was updated along with MAME version 0.226, it now has 11 files.  Those previous 7, plus

    thunderhoop_gal16v8.f2
    thunderhoop_gal16v8.j16
    thunderhoop_gal20v8.d21
    thunderhoop_gal20v8.h11

    (see the resemblance of the 4 yours says is missing?)  So, MAME versions 0.226 and later (i.e., 0.236) are looking for all 11 files.

     

    Sometimes you will get "lucky" when you update MAME but not the ROMs, and the ROMs will still work.  But it is NOT advisable to it that way "hoping for the best".

    • Thanks 1
×
×
  • Create New...