Difference between revisions of "PCLauncher"

From RocketLauncher Wiki
Jump to navigation Jump to search
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
[[Category:Modules]]
 
[[Category:Modules]]
  
For now this page info can be found [https://sites.google.com/site/hyperlaunch2/additional-features/pclauncher here]
+
= Description =
 +
 
 +
 
 +
PCLauncher gives you the ability to launch any PC Application via your favorite Frontend. It differs from the other modules that RocketLauncher treats it slightly differently in some internal checks:
 +
 
 +
 
 +
:*You do not need a Rom_Path defined
 +
:*You do not need Rom_Extensions defined
 +
:*You do not need an Emu_Path defined
 +
 
 +
 
 +
= Features =
 +
 
 +
 
 +
All of the following can be defined per-game:
 +
 
 +
 
 +
:*Can launch separate Pre-Launch (before application runs), Post-Launch (right after application launches), and Post-Exit (right after application exits) scripts or executables
 +
:*Virtual Drive support for mounting disc images. Useful when a game has protection, like a CD-check.  Can run executables from the root of a mounted image.Add parameters to the CLI of your application
 +
:*DXWnd support for forcing your primary application into a window
 +
:*Use a window title and/or ahk_class of your application to hold up the module for correcly timed Fade support
 +
:*Adjustable ExitMethod by using either a hard exit (Process, Close) or a friendly exit (WinClose)
 +
:*Steam support for launching games solely based on their SteamID
 +
:*Steam Browser Protocol support
 +
:*Origin support!
 +
:*URL launching support
 +
:*Adjustable "working folder", useful for GoG games that need a different folder when the application exists somewhere else
 +
:*Console (*.bat) hiding
 +
:*Relative paths supported for all path-related keys
 +
 
 +
= INI Keys =
 +
 
 +
 
 +
First create a '''[Section]''' for each game, named after your database name.
 +
{| class="wikitable"
 +
!style="width: 140px;" | Key
 +
!style="width: 1800px;" | Description
 +
|-
 +
|Application
 +
|'''REQUIRED''' <font size="-3">(when not a steam game)</font> The directory (path) and executable, batch, or shortcut (lnk file) to your application.
 +
 
 +
*This must end with the applications 3-letter extension.
 +
*If an exe on an image is defined here, the image defined below will be mounted with Daemon Tools first then this exe will be ran.
 +
*If no exact path to the exe is defined (only a filename), it will assume it is found on the root folder of the mounted image if you define a DiscImage.
 +
*PCLauncher will wait for the Process ID of this application to exist before exiting FadeIn unless a FadeTitle is defined.
 +
*PCLauncher will wait for the Process ID of this application to end before assuming the the application ended unless an AppWaitExe is defined.
 +
*Can also be a URL or Steam Browser Protocol.
 +
|-
 +
|AppWaitExe
 +
|This will be the exe, if different then the Application, that you want the script to wait to close.
 +
 
 +
*This would be needed if launching a bat file, which in turn launches another exe, where the exe is the game.
 +
*Leave this blank if the module works fine with the exe from the Application key.
 +
*Sometimes some games will just not work with only the Process ID waiting to close. If you notice your Frontend regaining focus shortly after your Application has launched w/o you exiting it, set this to the name of the executable as it appears in Task Manager.
 +
|-
 +
|DiscImage
 +
|Path to a disc image (ccd,cdi,cue,iso,isz,nrg) if required by a game, usually for a cd check. Only fill this key if a cd/dvd image is required by your game.
 +
 
 +
*Not meant to run games straight from the disc, but it might be possible if Application points to the drive and executable on the mounted disc.
 +
*Unmounts image on exit
 +
|-
 +
|DXWndGame
 +
|Set this to true if this game should be launched with DXWnd to force it to run in windowed mode.
 +
 
 +
*It is your responsibility to make sure this game is already configured in DXWnd software (in the module Extensions folder if using the included DXWnd).
 +
*You also need to make sure the game works with DXWnd first as not all games will like being forced into a window.
 +
|-
 +
|DXWndMaximizeWindow
 +
|Set your preferred method when DXWndGame is enabled.
 +
 
 +
*Keep Aspect Ratio: Window will be maximized to fill the screen while retaining original aspect ratio.
 +
*Stretch Window: Window will be maximized and stretched to fill the screen.
 +
*False: Default and will not touch window size.
 +
|-
 +
|ExitMethod
 +
|Define an alternative way to close your launched primary application, if desired, to exit your Application in case it doesn't close with your RocketLauncher exit keys.
 +
 
 +
*WinClose Application: Closes the window of the application.
 +
*WinClose AppWaitExe: Closes the window of the window of the AppWaitExe if defined.
 +
*Process Close Application: Force closes the application executable. This may prevent save data from being saved and should be used as a last resort.
 +
*Process Close AppWaitExe: Like above, but force closes the AppWaitExe if defined.
 +
*Send Alt+F4: Simulates an Alt+F4 key sequence which some applications require when WinClose does not work.
 +
*InGame: Disables any RocketLauncher exit keys for this application. You will be required to close the application by it's internal methods. This is recommended for most PC Games so all data is saved on exit and no accidental terminations occur.
 +
*'''WARNING''', if fading is enabled on exit, make sure you test your ExitMethod choice works, otherwise you might get a blank screen while game never closed.
 +
|-
 +
|FadeTitle
 +
|This is the Window Title & Class of your application.
 +
 
 +
*To find the Title/Class you can use the AutoIt3 Window Spy utility installed with AutoHotKey or my utility @ [https://www.rlauncher.com/forum/index.php?resources/active-window-logger.8/ Active Window Logger]
 +
*If you set this, PCLauncher will wait for this title/class to no longer exist before assuming the Application ended
 +
|-
 +
|FadeInExitSleep
 +
|Adds a sleep right before Fade exists (1000=1 second).
 +
 
 +
*This is needed for some applications that may start, but not appear, ending FadeInExit prematurely. It keeps the fade screen up for the defined length.
 +
|-
 +
|HideConsole
 +
|Set to true if you want to hide the DOS console window when launching bat files. This will only be applicable if your Application is pointing to a file with a .bat extension.
 +
|-
 +
|OriginGame
 +
|Set to true if this is a game using the Origin Service. If true, it will allow automatic logging into Origin so you do not get stuck at a login prompt while loading.
 +
|-
 +
|Parameters
 +
|This can be any number of parameters that you want to supply to your application.
 +
|-
 +
|PreLaunch
 +
|This can be used to run another application before launching the Primary Application. This will usually be blank.
 +
 
 +
*Can be a relative or absolute path.
 +
*Can also be a URL or Steam Browser Protocol.
 +
|-
 +
|PreLaunchParameters
 +
|This can be any number of parameters that you want to supply to your PreLaunch application.
 +
|-
 +
|PreLaunchSleep
 +
|If you need the script to wait after launching your PreLaunch app for a set amount of time, put that here (1000=1 second).\
 +
|-
 +
|PostLaunch
 +
|This can be used to run another application after the Primary Application has launched, but before the module waits for the Application to close. This will usually be blank.
 +
 
 +
*Can be a relative or absolute path.
 +
*Can also be a URL or Steam Browser Protocol.
 +
*This is very useful for games that have some type of a launcher or GUi that pops up that you may need a small script to select one of the actions. HOTD2 and some steam games need this.
 +
|-
 +
|PostLaunchParameters
 +
|This can be any number of parameters that you want to supply to your PostLaunch application.
 +
|-
 +
|PostLaunchSleep
 +
|If you need the script to wait after launching your PostLaunch app for a set amount of time, put that here (1000=1 second).
 +
|-
 +
|PostExit
 +
|This can be used to run another application after the Primary Application has closed. This will usually be blank.
 +
 
 +
*Can be a relative or absolute path.
 +
*Can also be a URL or Steam Browser Protocol.
 +
|-
 +
|PostExitParameters
 +
|This can be any number of parameters that you want to supply to your PostLaunch application.
 +
|-
 +
|PostExitSleep
 +
|If you need the script to wait after launching your PostLaunch app for a set amount of time, put that here (1000=1 second).
 +
|-
 +
|SteamID
 +
|If you are launching a Steam game, provide the ID of the game here. Example: SteamID=105600
 +
 
 +
*This will turn on Steam mode if not blank. Do not set this if not a Steam game.
 +
*Steam only understands AppIDs for games, not rom names.
 +
*To find the SteamID, from your Steam Library, right click a game and make a shortcut to it on your desktop, then right click the shortcut and goto its properties. The ID will *appear at the end or the Target.
 +
*See here for more info on finding a Steam ID for your game: https://steamdb.info/
 +
*If you set your Steam User/PW in the separate EncryptPasswords script, it will auto login for you if the login prompt appears, without any intervention.
 +
:*This script stores your credentials as an ecrypted key in the registry
 +
|-
 +
|WorkingFolder
 +
|Mostly for GoG games, allows you to set a different working directory then the default directory (the one Application exists in)
 +
|}

Latest revision as of 14:15, 11 January 2022


Description

PCLauncher gives you the ability to launch any PC Application via your favorite Frontend. It differs from the other modules that RocketLauncher treats it slightly differently in some internal checks:


  • You do not need a Rom_Path defined
  • You do not need Rom_Extensions defined
  • You do not need an Emu_Path defined


Features

All of the following can be defined per-game:


  • Can launch separate Pre-Launch (before application runs), Post-Launch (right after application launches), and Post-Exit (right after application exits) scripts or executables
  • Virtual Drive support for mounting disc images. Useful when a game has protection, like a CD-check. Can run executables from the root of a mounted image.Add parameters to the CLI of your application
  • DXWnd support for forcing your primary application into a window
  • Use a window title and/or ahk_class of your application to hold up the module for correcly timed Fade support
  • Adjustable ExitMethod by using either a hard exit (Process, Close) or a friendly exit (WinClose)
  • Steam support for launching games solely based on their SteamID
  • Steam Browser Protocol support
  • Origin support!
  • URL launching support
  • Adjustable "working folder", useful for GoG games that need a different folder when the application exists somewhere else
  • Console (*.bat) hiding
  • Relative paths supported for all path-related keys

INI Keys

First create a [Section] for each game, named after your database name.

Key Description
Application REQUIRED (when not a steam game) The directory (path) and executable, batch, or shortcut (lnk file) to your application.
  • This must end with the applications 3-letter extension.
  • If an exe on an image is defined here, the image defined below will be mounted with Daemon Tools first then this exe will be ran.
  • If no exact path to the exe is defined (only a filename), it will assume it is found on the root folder of the mounted image if you define a DiscImage.
  • PCLauncher will wait for the Process ID of this application to exist before exiting FadeIn unless a FadeTitle is defined.
  • PCLauncher will wait for the Process ID of this application to end before assuming the the application ended unless an AppWaitExe is defined.
  • Can also be a URL or Steam Browser Protocol.
AppWaitExe This will be the exe, if different then the Application, that you want the script to wait to close.
  • This would be needed if launching a bat file, which in turn launches another exe, where the exe is the game.
  • Leave this blank if the module works fine with the exe from the Application key.
  • Sometimes some games will just not work with only the Process ID waiting to close. If you notice your Frontend regaining focus shortly after your Application has launched w/o you exiting it, set this to the name of the executable as it appears in Task Manager.
DiscImage Path to a disc image (ccd,cdi,cue,iso,isz,nrg) if required by a game, usually for a cd check. Only fill this key if a cd/dvd image is required by your game.
  • Not meant to run games straight from the disc, but it might be possible if Application points to the drive and executable on the mounted disc.
  • Unmounts image on exit
DXWndGame Set this to true if this game should be launched with DXWnd to force it to run in windowed mode.
  • It is your responsibility to make sure this game is already configured in DXWnd software (in the module Extensions folder if using the included DXWnd).
  • You also need to make sure the game works with DXWnd first as not all games will like being forced into a window.
DXWndMaximizeWindow Set your preferred method when DXWndGame is enabled.
  • Keep Aspect Ratio: Window will be maximized to fill the screen while retaining original aspect ratio.
  • Stretch Window: Window will be maximized and stretched to fill the screen.
  • False: Default and will not touch window size.
ExitMethod Define an alternative way to close your launched primary application, if desired, to exit your Application in case it doesn't close with your RocketLauncher exit keys.
  • WinClose Application: Closes the window of the application.
  • WinClose AppWaitExe: Closes the window of the window of the AppWaitExe if defined.
  • Process Close Application: Force closes the application executable. This may prevent save data from being saved and should be used as a last resort.
  • Process Close AppWaitExe: Like above, but force closes the AppWaitExe if defined.
  • Send Alt+F4: Simulates an Alt+F4 key sequence which some applications require when WinClose does not work.
  • InGame: Disables any RocketLauncher exit keys for this application. You will be required to close the application by it's internal methods. This is recommended for most PC Games so all data is saved on exit and no accidental terminations occur.
  • WARNING, if fading is enabled on exit, make sure you test your ExitMethod choice works, otherwise you might get a blank screen while game never closed.
FadeTitle This is the Window Title & Class of your application.
  • To find the Title/Class you can use the AutoIt3 Window Spy utility installed with AutoHotKey or my utility @ Active Window Logger
  • If you set this, PCLauncher will wait for this title/class to no longer exist before assuming the Application ended
FadeInExitSleep Adds a sleep right before Fade exists (1000=1 second).
  • This is needed for some applications that may start, but not appear, ending FadeInExit prematurely. It keeps the fade screen up for the defined length.
HideConsole Set to true if you want to hide the DOS console window when launching bat files. This will only be applicable if your Application is pointing to a file with a .bat extension.
OriginGame Set to true if this is a game using the Origin Service. If true, it will allow automatic logging into Origin so you do not get stuck at a login prompt while loading.
Parameters This can be any number of parameters that you want to supply to your application.
PreLaunch This can be used to run another application before launching the Primary Application. This will usually be blank.
  • Can be a relative or absolute path.
  • Can also be a URL or Steam Browser Protocol.
PreLaunchParameters This can be any number of parameters that you want to supply to your PreLaunch application.
PreLaunchSleep If you need the script to wait after launching your PreLaunch app for a set amount of time, put that here (1000=1 second).\
PostLaunch This can be used to run another application after the Primary Application has launched, but before the module waits for the Application to close. This will usually be blank.
  • Can be a relative or absolute path.
  • Can also be a URL or Steam Browser Protocol.
  • This is very useful for games that have some type of a launcher or GUi that pops up that you may need a small script to select one of the actions. HOTD2 and some steam games need this.
PostLaunchParameters This can be any number of parameters that you want to supply to your PostLaunch application.
PostLaunchSleep If you need the script to wait after launching your PostLaunch app for a set amount of time, put that here (1000=1 second).
PostExit This can be used to run another application after the Primary Application has closed. This will usually be blank.
  • Can be a relative or absolute path.
  • Can also be a URL or Steam Browser Protocol.
PostExitParameters This can be any number of parameters that you want to supply to your PostLaunch application.
PostExitSleep If you need the script to wait after launching your PostLaunch app for a set amount of time, put that here (1000=1 second).
SteamID If you are launching a Steam game, provide the ID of the game here. Example: SteamID=105600
  • This will turn on Steam mode if not blank. Do not set this if not a Steam game.
  • Steam only understands AppIDs for games, not rom names.
  • To find the SteamID, from your Steam Library, right click a game and make a shortcut to it on your desktop, then right click the shortcut and goto its properties. The ID will *appear at the end or the Target.
  • See here for more info on finding a Steam ID for your game: https://steamdb.info/
  • If you set your Steam User/PW in the separate EncryptPasswords script, it will auto login for you if the login prompt appears, without any intervention.
  • This script stores your credentials as an ecrypted key in the registry
WorkingFolder Mostly for GoG games, allows you to set a different working directory then the default directory (the one Application exists in)