I only recently got a PS4, after having gotten very used to using gyroscopic aiming on my PC for games like Tomb Raider (2013). I was completely unable to play Horizon Zero Dawn using only the sticks, so after much searching of Reddit and YouTube (and a fair bit of experimentation) I have figured out how to use it on my PS4 as well, with the help of my PC running steam and other software.
This guide will show you what I do to get it to work. In the process, you will also see how this process can be tweaked to unlock many options for PS4 control, including using the Xbox Elite controller, Nintendo Switch Pro controller, or Steam controller with your ps4.
Note: This technique is not free - it will cost you a minimum of 12 British Pounds (about $14 right now) for the software.
The header image at the top of article demonstrates the basic idea - it seems complicated, but in practice it works great
- A Windows 10 PC, ideally in the same room as the PS4 (an old laptop will work fine)
- Steam installed on the windows 10 PC
- Long enough USB cord to reach said PC (Bluetooth works too, but may have more lag)
- Either Repl4y (16 British pounds) OR Rem4p (12 British pounds) from TMACDev (see below for more information)
- PS4 Remote Play app (if using Rem4p; not required if using Repl4y)
Repl4y is a fully functional PS4 Remote Streaming application that has a few advantages over the official (free) PS4 remote streaming app. The most important additional feature for the purpose of this guide is the robust controller configuration, which allows you to use mouse, keyboard, or any steam, ps4, or Xinput controller to generate PS4 inputs for the stream. It has other features too, that might be helpful for you, so check it out.
Rem4p is a standalone utility that contains the controller configuration ONLY. It supports the official PS4 Remote App, though it might also work for other PS4-enabled games (I have not tested that myself).
The biggest advantages of using repl4y over rem4p is the ease of only needing one app. Otherwise, assuming the PS4 remote play app works for you, rem4p is fine, and is a bit cheaper, so pick your poison. This guide will describe the steps for both.
Plug in your controller to the PC (or pair it using Bluetooth) and launch Steam’s controller configuration. Make sure Configuration Support is enabled for your controller and your controller is detected. You’ll need a Steam controller, Switch Pro controller, or Dualshock 4 for gyro support.
If you are going to use Repl4y to do your streaming, follow the QuickStart instructions on the Repl4y Guide to get streaming working with default controls. Make sure it (mostly) works. Note: even though the video will be streaming to your PC, you can still PLAY on the TV if you want. Close the stream window once it is working.
If you are going to use Rem4p, launch PS4 remote play, log in, and make sure it works. Then close it. I personally set the video settings to the lowest possible when using this method, since my actual playing will be on the TV.
Launch either rem4p or repl4y if they are closed and click the gear icon to open settings. Go to the Steam tab and click the “Install Steam Shortcut” button.
Close Rem4p / Repl4y, as we will need to launch it again from steam.
Navigate in your steam library to the landing page for Rem4p / Repl4y and choose “Controller Configuration” underneath the title
By default, the configuration should be in “Gamepad”, one of the templates. This template essentially generates emulates an Xbox controller, and will work fine out of the box with repl4y/rem4p with three exceptions:
- The gyro does nothing (pretty normal for PS4 games sadly)
- The touchpad just duplicates share/options when clicked and doesn’t do anything when only touched.
- There is no way to go home, because the Playstation button will pull up the steam overlay instead of passing through.
Lets fix these one at a time!
On the controller config, click the gyroscope icon.
In the next screen, choose “Mouse Joystick”.
The default settings tend to work pretty well, but depending on the game you PROBABLY want to set up a “Gyro Enable Button”, since you likely don’t want the gyro to emulate the right joystick at all times. In most games, you probably only want gyro aiming when a certain button is pressed - in Horizon Zero Dawn and the Tomb Raider games, this is the left trigger.
You can also enable a button or keyboard combination that toggles it on and off if that makes more sense for this game.
Exit back to the main config screen.
For this guide, I’m assuming that the game you play, like most PS4 games, doesn’t do as much with the touchpad as it could. For my games, I need to be able to detect simple touches (to enable the HUD in Horizon Zero Dawn) and clicks (to open the map) but nothing more than that.
I configure the entire touchpad as one big button in “Single Button” mode. The Trackpad Click is set to F4, and the Trackpad Touch is set to F7.
I use F4 because that’s the default value in Rem4p / Repl4y for the touchpad click. The touch we’ll have to configure ourselves within rem4p.
Note: If you are using another controller and you need some form of touchpad support, you’ll probably need to figure out your own button combinations to create the click and touch behaviors as needed.
Because the Home button is automatically hijacked by Steam you cannot configure it to work exactly is it does on the PS4 directly. Instead, I create a key combination - I use Options + Touchpad click - to do the same thing.
Still in the touchpad setting, click the “Mode Shifting” option, and choose “Start Button” as the mode shifting trigger. Set “Trackpad Click” to F1 (the default PS button in Rem4p). This will let you run the PS button by pressing Options + Trackpad click.
We are now done with the Steam half of configuration!
Save the controller configuration and click the “Play” button to launch repl4y / rem4p through steam.
Click the joystick button to open the controller config.
This tool is incredibly cool and powerful, especially if you want to set up, for example, keyboard + mouse control of your game. In our case it mostly duplicates the work of the Steam config, and the defaults will mostly work fine. The only exception is the touchpad and PS button we just configured.
First we need to change two settings. Click the “Settings” tab and DISABLE “Dualshock 4 USB Input” and set “Input System Settings” to “Mixed”. This will give the Steam controller config full power to be detected by Rem4p/Repl4y.
Click the “Touchpad” tab, then click “Detect Input”. Touch the touchpad on your PS (or whatevery key combo you were using) and “keyboard 0 : button F7" will appear in the box (you can also just press F7 on your keyboard if that’s easier).
Then set the “Start X”, “Start Y”, “End X”, and “End Y” buttons all to 500, and the “Duration” to 5 ms, and press Add.
This will make it so that touching the trackpad simulates, well, a simple touch in the middle of the trackpad.
Close controller config and either connect to your PS4 (if using Repl4y) or launch PS4 Remote Play.
Once the game launches, press Alt-C on your keyboard to enable keyboard control within the app - don’t miss this step or the keyboard-based commands won’t work.
If everything is configured as I did it, you’ll be able to play the game with gyro aiming and pretty much normal touchpad behavior.
Now that you have these tools installed, feel free to explore - the forums at TMACDev are excellent, especially if you’re interested in exploring mouse + keyboard controls for PS4 games.
I hope this helps some people out!