Allow integration with launchers#11
Open
keton wants to merge 6 commits into
Open
Conversation
praydog
requested changes
Jan 23, 2024
| return null; | ||
| } | ||
|
|
||
| private void RemoveVRPlugins(string? pluginsPath) { |
Owner
There was a problem hiding this comment.
Maybe not delete them outright. Add a _bak to the original folder names or something along these lines so the user doesn't have to verify game integrity to get a clean install back.
`--launch=` option accepts both executable paths and URIs for launcher compatibility. Some games like Sackboy or Telltale Expanse Series on Epic will fail to launch correctly if .exe path is used directly. Instead they require proper launcher URI. This change will allow UEVR fronted to act as a launcher for games. Example. Creating shortcut to: ``` UEVRInjector.exe "--launch=com.epicgames.launcher://apps/da36711940d4460da57d8d6ad67236a4%3Aa1afcdb1d2344232954be97d4b86b9a8%3Acfbbc006f3ee4ba0bfff3ffa46942f90?action=launch&silent=true" --attach=CosmicShake-Win64-Shipping ``` Will allow to automatically launch and inject Sponge Bob: Cosmic Shake on EGS
Some games don't respond well to be injected directly on boot. Intro movies, menus, loading screens can appear broken or as a black screen. This commit augments `--attach` mode with `--delay` parameter allowing UEVR injector to wait upon detecting target application. This gives user time to get into the game without needing to go back to the injector UI and pressing inject manually. Example: `UEVRInjector.exe --attach=CosmicShake-Win64-Shipping --delay=30` will wait for SpongeBob Cosmic Shake process to spawn, then wait 30s on top and inject.
Some launchers, notably GOG Galaxy don't support launching game via URI. They require command line option `Galaxy.exe /run:gameId`. This commit adds command line parameter `--launch-args=` thant can accept space separated argument list as as single string.
This commit allows option to automatically rename unwanted VR plugins to 'plugin_name_bak'. All user needs to do is to click 'yes'. Additionally game is checked before launch for being UE title and warning is issued if it's not. This requires `--attach=` parameter to be full path to game executable. If only process name is passed old behavior is used instead.
Adds 'autostart game' toggle. User can turn it off and `--launch=` will be ignored. When `--launch=` option is passed explanation dialog will appear with option to launch game or not and hide the dialog on subsequent runs. This allows launchers like Rai Pal to always pass `--launch=` along with `--attach=`.
Otherwise the warning can get burried under autostart config dialog and game window.
5b05203 to
84b7eb0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Goals
New command line options
--launch=<game.exe or launcher URI>to specify game to launch--launch_args=<space separated list of game.exe arguments>optional, mainly for Gog Galaxy integration--delay=<number of seconds>to wait before injection for games that have problems with injecting right awayChanged behavior
--attach=now can accept full path to game executable and use it to find and delete VR plugins before the game is launched.UI
There's a new UI flow. First time

--launch=is used there will be dialog asking is auto starting game allowed:This way launcher can always pass
--launch=with--attachleaving decision what to do to UEVRInjector. This should also help clear the confusion that launcher is the same thing as UEVR (see Raicuparta's comments in linked Rai Pal discussion).on top of that user can toggle auto start at any time using new checkbox:
