Difference between revisions of "PCLauncher"

From RocketLauncher Wiki
Jump to navigation Jump to search
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 HyperLaunch 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
 +
:*Daemon Tools Lite 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
 +
:*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 coming soon!
 +
:*URL launching support
 +
:*Adjustable "working folder", useful for GoG games that need a different folder when the application exists somewhere else
 +
:*Cursor 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
 +
|-
 +
|Parameters
 +
|This can be any number of parameters that you want to supply to your application.
 +
|-
 +
|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://support.steampowered.com/kb_article.php?ref=3729-WFJZ-4175
 +
*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
 +
|-
 +
|OriginGame
 +
|'''(NOT IMPLEMENTED YET)''' 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.
 +
|-
 +
|WorkingFolder
 +
|Mostly for GoG games, allows you to set a different working directory then the default directory (the one Application exists in)
 +
|-
 +
|PreLaunch
 +
|This can be used to run another application before launching the 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 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 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).
 +
|-
 +
|ExitMethod
 +
|Define a quick way, if desired, to exit your Application in case it doesn't close with your Hyperspin exit keys.
 +
 
 +
*Choices are Process or WinClose.
 +
*'''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 @ http://www.hyperspin-fe.com/forum/showthread.php?15014-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.
 +
|-
 +
|HideCursor
 +
|True or False - hides the mouse cursor and restores it on exit.
 +
 
 +
*Same as the HyperLaunch setting, but allows for per-game use.
 +
|}

Revision as of 16:39, 11 June 2015


Description

PCLauncher gives you the ability to launch any PC Application via your favorite Frontend. It differs from the other modules that HyperLaunch 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
  • Daemon Tools Lite 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
  • 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 coming soon!
  • URL launching support
  • Adjustable "working folder", useful for GoG games that need a different folder when the application exists somewhere else
  • Cursor 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
Parameters This can be any number of parameters that you want to supply to your application.
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://support.steampowered.com/kb_article.php?ref=3729-WFJZ-4175
  • 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
OriginGame (NOT IMPLEMENTED YET) 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.
WorkingFolder Mostly for GoG games, allows you to set a different working directory then the default directory (the one Application exists in)
PreLaunch This can be used to run another application before launching the 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 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 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).
ExitMethod Define a quick way, if desired, to exit your Application in case it doesn't close with your Hyperspin exit keys.
  • Choices are Process or WinClose.
  • 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.
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.
HideCursor True or False - hides the mouse cursor and restores it on exit.
  • Same as the HyperLaunch setting, but allows for per-game use.