github Moehammered/switch-remote-play v1.0.0
Switch Remote Play v1.0.0 - Multiple Controllers, Monitor Selection, and More

2 years ago

Download the 7z or zip archive and follow the instructions to setup
https://github.com/Moehammered/switch-remote-play/wiki

If you're just updating, simply delete the old switch-remote-play folder on your Switch's SD card and delete the PC program on your computer.
Then replace them with the updated versions in this release and off you go! (Make sure to reconfigure the settings in the application)

Compatibility

Atmosphere CFW is the only officially supported firmware. SX OS is not officially supported.

This version is not compatible at all with previous releases. Please make sure you completely remove traces of the old version from your Switch and PC.

So much has changed... A lot of features added, and a lot of cleaning up in preparation for future development and features. With that said, let's dive in!

Switch Application Changes

Touch Configuration and Virtual Input support added #17

  • Added a new configuration menu screen for 'Touch Configuration'
  • 2 modes of virtual touch interfacing are available: Virtual Touch and Simulated Mouse
  • Virtual Touch
    • Makes the Switch touch screen behave like a touch monitor for the PC
  • Simulated Mouse
    • Makes the Switch touch screen behave like a mouse (similar to a laptop trackpad)
    • Includes support for absolute and trackpad behaviour
      • Absolute behaviour means the mouse will be under your finger
      • Trackpad behaviour means the mouse matches the movement of your finger (like a laptop trackpad)
    • Please be aware, as the name implies it is simulated behaviour, so I've had to mimic how a mouse would work. It won't be perfect, but it is there for compatibility purposes.
    • I've enjoyed using trackpad mode personally (didn't think I would) but whenever I use absolute mode, I always prefer to switch to the Virtual Touch. I recommend Virtual Touch whenever you can use it.
  • Tested using it with cemu and Virtual Touch mode worked without issue while playing Super Mario Maker

Monitor Selection Added in Encoder Configuration Screen #21

  • Added the ability to select the monitor for streaming
  • Number starts at 0 for primary monitor and increases for secondary monitors

Multiple Controllers, Guide Button, and JoyCon Support

  • Home(PS4)/Guide(X360) Button Configuration Added #24
    • Added the ability to bind the Home button hotkey in the Controller Menu
    • Added the ability to configure the Home button hotkey trigger time (how long to hold the home button hotkey to trigger it)
  • Multiple controller support added #22 (yay! :D)
    • Added the ability to configure how many virtual controllers are created and streamed to the PC
    • IMPORTANT: PS4 controller mode will not respect player number order (joycon 1 might not be DS4 controller 1 on the PC)
      • Xbox 360 mode seems fine and I haven't had issues with out of order player/controller ordering.
      • I cannot control how the driver assigns player numbers, so for now this is considered a minor inconvenience. If you need player ordering, configure it in the game, use Xbox 360 mode, or simply hand over the controller.
  • JoyCons can be separated and used as individual controllers!
    • You'll need to separate and pair the JoyCons individually in the Switch OS
    • The buttons always get remapped in horizontal orientation as follows:
    • Face buttons = ABXY
    • Analog stick = Left Analog Stick
    • SL/SR = L/R
    • Plus/Minus = Plus
    • There are no plans to make this configurable in the near future (but I will revisit it after the Linux port has been completed)

Mouse Configuration Screen Added #27

  • Mouse configuration options have been removed from the 'controller' menu and been promoted to their own menu screen
  • Mouse wheel (scrolling up/down and left/right) is now configurable and assignable to the left or right analog stick
  • Mouse/Controller mode toggle hotkey is now configurable and assignable
  • Mouse/Controller mode toggle time is now configurable

Keyboard Configuration Screen Added #38

  • PC Keyboard keys can now be simulated when the program is in 'Mouse mode'
  • Keyboard buttons can be configured and assigned to the Switch Buttons
  • This initially was just a request to implement arrow keys, but I couldn't help plan ahead in case of expansion of the feature. Enjoy :)

Software Keyboard User Configuration Input #40

  • The built in Switch software keyboard has now been used everywhere applicable
  • Number inputs have been replaced with keyboard input prompts
  • IP Address input in the network configuration screen is now done via the software keyboard

Network Configuration Menu Cleanup #41

  • Created a new configuration menu to allow users to configure all aspects of connecting to the PC
  • IP, Broadcast Address, Manual IP Toggle, and data ports can all be configured
  • The PC program also has a respective network configuration file to allow for configuring the data ports
    • Make sure the settings on the Switch match the settings in the PC's network config file

Project Refactor and Cleanup #43

  • Did some long overdue cleaning through the code base for the Switch and PC application
  • Removed redundant code
  • Replaced magic variables with constants
  • Streaming code moved into separate helper classes for both the Switch and PC application
  • Added the ability to configure logging. File logging and verbosity are configurable.
  • Refactored code to separate common code into a folder shared between the Windows and Switch project
    • This was done in preparation for starting the Linux host application version #32
  • For the end user, this shouldn't matter much

PC Application Changes

Mouse centering on selected monitor #21 #27

  • When the stream starts, the program will center the mouse to the middle of the screen

Added configuration options #41, #43

  • Can now control console window minimise/restore on stream connect/disconnect
  • Logging verbosity is controllable
  • Log files can be enabled (to help with issue reporting hopefully)
  • PC Audio mute behaviour can be configured
  • Network data ports can be configured
    • Please make sure they match the settings on the Switch app's network configuration

Virtual Interfaces for touch, mouse and keyboard created #17 #27 #38

  • Cleaned up mouse code to allow for configurable behaviour such as relative and absolute positioning
  • Added a touch interface that injects touch data messages to Windows allowing for touch inputs to be simulated and interpreted as real touch inputs in Windows
  • Added a keyboard interface that behaves similar to the mouse interface. Tries to behave similar to a regular keyboard

There are probably more changes I've missed or repeated myself with. So much work was done since the last release over a long period so it's been tough collating all the changes.
If I've forgotten anything, I'm sorry about that. I'll modify the release notes if it's brought to my attention or if I remember something.

I'll be reading through the wiki and making modifications to it to include the new features. It'll take a while, so I apologise if there is something outdated in there.

For my Linux friends, the good news is I only have 1 more feature to investigate for the Windows version and then Linux gets 100% priority for development. I can't give an ETA, but I would like to say thank you all for being patient. :)

Hope you all enjoy the new features and this release!

\(^.^)/

Don't miss a new switch-remote-play release

NewReleases is sending notifications on new releases.