RemotePlayDetached
RemotePlayDetached copied to clipboard
Remote Play Detached
Remote Play Detached (RPD)
Disclaimer
Don't open issues if you did not read the README below, especially the troubleshooting section. If you're trying to do something like letting your friend play PS Remote/watch a movie stream or anything similar, do not ask for help.
About
A simple launcher that is able to launch any external game or application with Steam Remote Play Together Support (Steam Overlay works as soon as the Fullscreen is available).
I used Fyne for the GUI.
Features
- Enable Remote Play Together for non-Steam applications
- Enable Remote Play Together for Steam applications that normally don't support (e.g. added later via mod, thanks to AkiraJkr for pointing that out)
- Basic File Explorer for binary selection
- CLI Support for integrations in other applications (e.g. Playnite, thanks to darklinkpower for suggesting it)
- Importing/Editing your applications in a list with the option to append launch arguments
I created this Launcher to be able to easily start different non-Steam applications and use the Remote Play Together feature without copying files around all the time. Works pretty well with applications like Redream and RetroArch. Besides it seems that RPD also enables that feature for other Steam games if they are started with it. An example for this is Devil May Cry 4 with the DDMK
Download
You can find prebuilt binaries for Windows and Linux here on GitHub.
For Arch Linux or any other distro that is built upon Arch users, you can find the package in the aur. You can skip the Installation process. Note that when you link the executable as described in Linux only you have to point to /usr/bin/remoteplaydetached, because the executable is being installed there. You could also create a link wherever you like it to be. The aur package is not being maintained by the original author, but by @alx365 (discord: !LegendOfMiracles#1719)/
Installation
- Download a donor game for Remote Play on Steam (search on YouTube if you need help). Choose a game which has Remote Play Together enabled.
- Delete or move the files in the folder of that game (you can just create a subfolder so you can still launch that game from RPD), but remember the original name of the main binary (file extension included!).
- Copy the RPD binary into the folder and rename it to the name of the original binary.
Note: A donor game
is a game installed via Steam of which the binaries are replaced. It "donates" its Steam privileges for RPD.
Linux only
- Instead of doing the installation as stated above you can use the launch options to point directly to the RPD binary
- To do this add
/path/to/RPD_binary # %command%
Remember to set execute permissions on Linux! Now just launch the original game in Steam and enjoy.
Usage
- Start your donor game over Steam.
- Click
Import
. - Fill the form. Path must include executable (and extension on Windows). You can select an executable via the
File Explorer
(since v0.4). - Click
Run
.
You can edit entries and also have arguments applied.
Note: In the File Explorer
you need to click on a file to select it (the selected file is registerd and can be seen in the window bottom next to Selected:
) and finish your selection by clicking the Confirm
button. Also directories are marked with /
(Linux) or \
(Windows) and you can change your drive(Windows) or root directory(Linux) from a dropdown by clicking Drive or Root Directory
in the window top.
Command Line Support
Command Line Support was added in v0.2
Arguments
-
-s
or-silence
to disable the GUI (cannot be used alone) -
-a
or-app
to run an app from your list by its name -
-as
or-appsilent
to run an app from your list without GUI -
-r
or-run
to run an app from the given path -
-rs
or-runsilent
to run an app from the given path without GUI -
-h
or-help
to list all possible arguments
Start an app completely via Command Line
- Windows
- To launch an app via CMD execute
start "" /d "Drive:\Path\to\SteamFolder" Steam.exe -applaunch <app-id of donor Game> -arg <App or Path>
- To launch an app via CMD execute
- Linux (Workaround)
- To launch an app via Terminal execute
steam steam://run/<appID>//"-arg <App or Path>"/
- Unfortunately there is a warning that needs confirmation pops up because of the argument
- To launch an app via Terminal execute
Playnite
To start an app directly via Playnite do the following:
- Click on the Controller icon in the upper left corner.
- Click
Add Game
->Manually...
. - Fill in the Name in the
General
Tab. - In the
Actions
Tab clickAdd Action
and fill out the Path to Steam and put this in Arguments-applaunch <app-id of donor Game> -arg <App or Path>
. - Click
Save
and you're ready to go.
Windows Apps/Xbox Games
To use Windows Apps or Xbox games with RPD requires the use of UWPHook
.
- Follow the instructions to add your games to
Steam
with UWPHook. - Right click the game in
Steam
and clickProperties
. - Take note of the the
UWPHook
file path and launch arguments. - Run RPD as normal and click
Import
. - Enter the exe location of
UWPHook
as thefile path
. - Provide the launch arguments given on the
Properties
page. - Run the game through
RPD
.
- Example:
Name: Streets of Rage 4 Path: C:\Program Files (x86)\Briano\UWPHook\UWPHook.exe Args: DotEmu.StreetsofRage4_map6zyh9ym1xy!App
Warning: Users reported that UWPHook does not work for many games with RPD
AppID
You can find the AppID of your donor game on SteamDB.
Building
Linux
- Install Go on your System.
- Clone this git repo outside of your GOPATH or pull via go get with
go get -v github.com/smaTc/RemotePlayDetached.git
. - Navigate to that directory and execute
go mod download
if you pulled via git orgo get .
if you pulled viago get
and let it pull the dependencies. - Run
go run main.go
to check if everything works. - Execute
go build -o YourPreferredName.DesiredExtension main.go
.
For Cross Compiling you can use Fyne-Cross and execute the build.sh
File. (Linux only probably)
Status
Tested on Windows and Linux. Working so far.
Toubleshooting
- If you have problems with Streaming you should check the Steam Settings first. If there are still any problems join the Discord or open an issue here on GitHub
- If you encounter the error
Steam Error: application load error V:xxxxxxxxx
it means Steam is blocking the execution of that game if it is initiated by another Steam game - Please beware if you have some games running and others don't it probably means that this is a game related issue. Many games just don't work because other launchers (through framework integration or similar) or the game itself block the correct execution via RPD and this is something that cannot be fixed.
My friend can only see the RemotePlayDetached process and not the game
- Make sure if you can open the Steam Overlay in the game you started via RDP.
- If this is not the case, your SteamService might not be working correctly. To fix this do the following (for Windows, Linux users need to adapt it for their platform):
- Close Steam completely (right-click the tray icon and choose "exit")
- Press WIN + R
- type
"PATH\TO\STEAM_Folder\bin\SteamService.exe" /repair
- Restart Steam
Feedback, suggestions and contribution
Feedback, suggestions and contributions are welcome. If you have improvements just open a pull request and I will have a look at your proposal. If there are any questions, feedback or suggestions open an issue or leave me a message.