• Stars
    star
    188
  • Rank 205,563 (Top 5 %)
  • Language
    C++
  • License
    The Unlicense
  • Created over 4 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

DualShock4 emulation for Xbox controllers or keyboard and mouse / Эмуляция DualShock4 для Xbox контроллеров или клавиатуры и мыши

EN RU FR – Other languages

DualShock4 emulator

Simple application to emulate the Sony DualShock 4 gamepad using an Xbox controller or keyboard and mouse. This method is necessary for the fully work of the service Sony Playstation Plus or Playstation Remote Play. Works based on the driver ViGEm.

Setup

  1. Install ViGEmBus.
  2. Install Microsoft Visual C++ Redistributable 2017 or newer.
  3. Unpack and launch "DualShock4 emulator" (Attention! It is important to run DS4 emulator before starting PS Plus, if you are using an Xbox controller, so that PS Plus gives priority to the DualShock controller).
  4. Launch "PlayStation Plus", "PS Remote Play", "xCloud", or another application. Read the FAQ to set up xCloud.
  5. If necessary, you can invert the axis, change the InvertX and InvertY parameters to 1 in the "Config.ini" configuration file.
  6. You can also check how the DualShock 4 controller emulation works in the VSCView program. To emulate from the keyboard and mouse, you also need to change the ActivateInAnyWindow parameter to 1 and restart the program.

FAQ

• The program crashes after launch
"Antivirus" blocks the dynamic loading of the Xbox gamepad library, so the program crashes. You can close it for the duration of use.

• Touchpad press don't work
It is possible that the "PS Plus" or "PS Remote Play" apps have given priority to the Xbox controller, so restart the "PS Plus" or "PS Remote Play" apps and the emulated DualShock 4 should take precedence over the Xbox controller.

• When playing in xCloud, in the browser, the context menu is called up on the right mouse button, how can I remove it in the browser?
First change the name of the window in the configuration file or change the ActivateInAnyWindow parameter to 1, restarting the program. Next, go to the xCloud website, press "F12", select the console and paste this code there, press run and the context menu will no longer be shown.

The game sees 2 controllers at the same time (DualSense / DualShock 4 / Nintendo Pro controller or JoyCons and Xbox)
You can hide your gamepad using the HidHide program.

Xbox controller

The "Back/View/Select" button (the first button to the right of the left stick) on the Xbox controller emulating pressing the touchpad on a Sony DualShock 4.

The "Share" button is binded to the simultaneous pressing of the "Back/View/Select" and "Start/Menu" buttons or to the "F12" key.

The "PS" button is binded to the "Xbox" button, but to use it, you need to disable the use of this button in the "Xbox Game Bar" settings. Also, the "PS" button is tied to the simultaneous pressing of the "Back/View/Select" and "LB" buttons (left bumper) or the "F2" key.

You can shake (gyro) the controller by pressing Back/View/Select and RB (right bumper).

You can rotate the gamepad (gyroscope) by pressing Back and the DPAD ←↑↓→ (you can change the combinations in the configuration file).

If necessary, you can swap bumpers and triggers, as well as the Share button and pressing the touchpad, to do this change the SwapTriggersShoulders or SwapShareTouchPad parameter to 1 in the "Config.ini" configuration file.

Changing the dead zone of sticks for drifting sticks is supported. Press ALT + F9 to get the values, paste them into the "Config.ini" configuration file, into the DeadZone parameters and restart the program.

Touchpad

Game Action
Uncharted 3: Drake’s Deception (2011) The Share button (F12) duplicates pressing the left side of the touchpad.
The Last Of Us Part II (2020) Options -> Accessibility -> "Strumming Settings" instead of vertical and horizontal, put buttons.

On the Xbox gamepad, you need to press the Back/View/Select button (touchpad) and move the stick to the sides for swipes. By default, pressing the touchpad during swipes is disabled, it can be enabled in the configuration file by changing the TouchPadPressedWhenSwiping parameter to 1.

You can use swipes for the keyboard, the button codes are described below.

Gyroscope

  1. Check Windows Firewall to see if incoming connections are allowed on your network type (private) and allow if disabled.
  2. Install FreePieIMU on your Android phone by taking the latest version in the OpenTrack archive or in the releases, enter the IP address of your computer, select "Send raw data", if not selected, select the data rate "Fastest" or "Fast".
  3. Reduce the general sensitivity if necessary (the Sens parameter, in the Motion section, where 100 is 100% sensitivity) in configuration file.
  4. Reduce individual sensor sensitivity if necessary (the AccelSens and GyroSense, in the Motion section, where 100 is 100% sensitivity) in configuration file.
  5. Invert the axes if necessary (the parameters InverseX, InverseY and InverseZ, in the Motion section, where 1 is turning on the inversion, and 0 is turning off).
  6. Change phone orientation (the parameter Orientation, in the Motion section. where 1 is landscape and 0 is portrait).

If you just need to shake (gyro) the gamepad in the game, then there is no need to install Android applications, just press the "shake" button of the gamepad.

Keyboard and mouse

By default, the mouse and keyboard only work in the windows "PlayStation Plus" and "PS4 Remote Play" (change the ActivateOnlyInWindow2 parameter to your regional application title). To work only in any other applications or emulators, change the parameters ActivateOnlyInWindow and ActivateOnlyInWindow2 to the headers of these applications You can enable the work in all windows (change the ActivateInAnyWindow parameter to 1, in the "Config.ini" configuration file) or change the name of the window (the ActivateOnlyInWindow parameter) in which the actions are captured. This is necessary so that the cursor is centered only in one window and no buttons are pressed when the window is minimized.

To disable cursor centering, hold down the "C" button (can change it in the config - StopСenteringKey).

To hide the cursor after startup, change HideCursorAfterStart to 1, to restore the cursor, close the program by pressing "ALT" + "ESCAPE" or "~".

For full-screen Playstation Plus use the keys "ALT" + "F10", the upper black bar, as well as the taskbar will be hidden. To return to the normal window, press these keys again. You can disable hiding the taskbar in the configuration file by changing the HideTaskBarInFullScreen parameter to 0. If the Playstation Plus window changes once, you can change the default top offset, the FullScreenTopOffset parameter.

DualShock 4 Keyboard and mouse
L1 Alt
R1 Control
L2 Right mouse button
R2 Left mouse button
SHARE F12
TOUCHPAD (pressing) Enter
OPTIONS Tab
DPAD UP 1
DPAD LEFT 2
DPAD RIGHT 3
DPAD DOWN 4
TRIANGLE E
SQUARE R
CIRCLE Q
CROSS Space
L3 (pressing the stick) Shift
R3 (pressing the stick) Middle mouse button
Touchpad swipe up, down, left, right 7, 8, 9, 0
Touchpad up, center, left, right, down U, J, H, K, N
Shake the gamepad T
Rotate gamepad forward, backward, right, left (gyroscope) Numpad 8, 2, 4, 6
PS F2

In the profile configuration file, in the "Profiles" folder, you can change the button bindings or create a new one based on Default.ini. Button names can be found here. You can choose from standard profiles. Send more convenient bindings for a variety of games.

The sensitivity parameters SensX, SensY for the mouse can also be found in the configuration file "Config.ini", in the section "Mouse". If there is no stick movement, you can try increasing the "SleepTimeOut" parameter to 2, 4, 8, 10.

You can also enable emulation of analog triggers (L2, R2), change the EmulateAnalogTriggers parameter to 1, and increase step AnalogTriggerStep (from 0.1 to 255).

Download

Version for Windows 10.

Download

Feedback

r57zone[at]gmail.com

More Repositories

1

Half-Life-Alyx-novr

SteamVR driver for Half-Life-Alyx for playing without VR / драйвер для игры без VR
C++
407
star
2

OpenVR-OpenTrack

OpenVR driver with OpenTrack support / OpenVR драйвер, с поддержкой OpenTrack
C++
178
star
3

OpenVR-driver-for-DIY

OpenVR driver for DIY
C++
128
star
4

DSAdvance

Advanced Xbox controller emulation for DualSense, DualShock 4, Pro Controller, Joy-Cons / Продвинутая эмуляция Xbox геймпада для DualSense, DualShock 4, Pro контроллера, Джойконов
C++
77
star
5

FirewallEasy

Application allows to block Internet access to other applications / Приложение позволяет заблокировать доступ в интернет другим приложения
Pascal
66
star
6

Harry-Potter-Settings

Application for setup of Harry Potter 1, 2, 3 PC / Приложение для настройки Гарри Поттера 1, 2, 3 ПК
Pascal
51
star
7

EasyNotes

Apps notes for Windows, iOS and Android with P2P sync / Приложения заметок для Windows, iOS и Android, с P2P синхронизацией
Pascal
45
star
8

X360Advance

External Arduino gyroscope & pedals for any Xbox compatible gamepads / Внешний Arduino гироскоп и педали для Xbox совместимых геймпадов
C++
42
star
9

OpenVR-ArduinoHMD

OpenVR driver for Arduino DIY HMD / OpenVR самодельного Arduino шлема
C++
23
star
10

XInput

Emulation XInput to any devices / Эмуляция XInput для любых устройств
Pascal
17
star
11

HomeLibrary

Catalog for movies, tv shows, games and books / Каталог для фильмов, сериалов, игр и книг
Pascal
15
star
12

EchoBackuper

Application for backup / Приложение для создания резервных копий
Pascal
15
star
13

NotificationCenter

Alternative notification center for Windows / Альтернативный центр уведомлений для Windows
Pascal
14
star
14

Borderless-Gaming-Tool

Gaming in window without borders / Игры в окне без рамки
Pascal
11
star
15

UPnP

Application for ports forwarding on router / Приложение для перенаправления портов на маршрутизаторе
Pascal
11
star
16

Notifications

Notifications in the style of Windows 10 / Уведомления в стиле Windows 10
Pascal
10
star
17

Harry-Potter-PC-Xbox-gamepad

Xbox gamepad support / Поддержка Xbox gamepad
10
star
18

ShareFiles

Application for sharing files in lan / Приложение для обмена файлами в локальной сети
Pascal
9
star
19

XInputInjectDLL

XInput inject DLL
C
9
star
20

PodcastEasy

Application for downloading podcasts / Приложение для загрузки подкастов
Pascal
9
star
21

Snapshots-for-Windows

Application for make and upload screenshots / Приложение для создания и загрузки скриншотов
Pascal
9
star
22

Home-Search

Simple local file finder / Простой локальный поисковик файлов
Pascal
8
star
23

VR-Display

Дисплей для виртуальной реальности / Display for virtual reality
7
star
24

Instagram-Windows-client

Instagram client for Windows / Instagram клиент для Windows
Pascal
6
star
25

Zapper-Light-Gun-PC

Zapper Light Gun for PC Emulators of NES / Световой пистолет для ПК эмуляторов Денди
C++
5
star
26

Numpad-Plus

Launching apps and changing the volume on Numpad / Запуск приложений и изменение громкости на Numpad
Pascal
5
star
27

PSMoveService-receive-position

PSMoveService receive position / получение позиционирования
5
star
28

LuizaAIAssistant

Personal AI assistant Luiza / Персональный AI помощник Луиза
Python
5
star
29

Thoughts-on-Communism

Мысли о коммунизме / Thoughts on Communism
4
star
30

Arduino-Light-gun-and-games

Arduino Light gun Zapper NES for PC and game for him / Световой пистолет на Arduino от денди для ПК и игра для него
Pascal
4
star
31

PSMoveService-Motion-capture

Motion capture with PS Moves, PS Eyes and PSMoveService
C++
4
star
32

VR-tracking-apps

Приложения для отслеживания головы в VR / VR tracking apps
C++
4
star
33

iOS-Sync

iOS file manager for Windows / Файловый менеджер iOS для Windows
Pascal
4
star
34

Steering-wheel-for-PC-with-OpenTrack-and-Android

Руль для ПК, с использованием OpenTrack и Android смартфона / Steering wheel for PC with OpenTrack and Android smartphone
C++
4
star
35

MiyooMiniPythonApp

Sample app for Miyoo Mini in Python / Пример приложения для Miyoo Mini на Python
3
star
36

ProtonShell

Shell for websites, simple web apps / Оболочка для веб-сайтов, простых веб-приложений
Pascal
3
star
37

lostfilm-rss-feed-for-utorrent

Обход блокировки RSS ленты сайта LostFilm.tv для автоматических загрузок в uTorrent
PHP
3
star
38

LogitechWingmanGamepad

Xbox gamepad emulator for Logitech Wingman with Xbox external pedals / Эмулятор Xbox геймпада для руля, с внешними Arduino педалями
C++
2
star
39

Standard-viewer-Windows-10

Средство просмотра фотографий Windows для Windows 10 / Windows Photo Viewer for Windows 10
Pascal
2
star
40

Skin-for-robots

Датчик чувствительности для роботов / Sensitivity sensor for robots
2
star
41

OpenTrack-UDP-receive

OpenTrack UDP receive data / получение данных
C++
2
star
42

Gamepad-PS-P02

PS-P02 controller research / Исследования контроллера PS-P02
C
2
star
43

RSS-checker

Check RSS feed on new events / Проверка RSS лент на новые события
Pascal
2
star
44

PodcastEasyForPython

Приложение для загрузки подкастов / Application for downloading podcasts
Python
2
star
45

Dota2-Invoker-NumPad

Автокликер скилов Инвокера в Dota 2 / Autoclicker skills Invoker in Dota 2
Pascal
2
star
46

RandomFile

Случайный файл из папки / Random file from folder
Pascal
1
star
47

OpenVRControllersUDP

OpenVRControllersUDP
C++
1
star
48

Exchange-IP-service

Служба обмена IP адресами / Exchange IP addresses service
PHP
1
star
49

XInput-feedback-Arduino

Обратная отдача для клавиатуры и мыши / Feedback for keyboard and mouse
Pascal
1
star
50

EasyReminders

Reminders app / Приложение напоминаний
Pascal
1
star
51

ScoresEconomy

Scores economy / Экономика баллов
1
star
52

r57zone

1
star
53

JoyShockLibrarySample

JoyShockLibrary sample / JoyShockLibrary пример
C++
1
star
54

Spider-Man-Settings

Video settings for the game Spider-Man (2001) with widescreen support / Настройки видео для игры Spider-Man (2001), с поддержкой широкоформатных дисплеев
Pascal
1
star
55

X360Advance-OpenTrack

Xbox геймпад с OpenTrack трекером / Xbox gamepad with OpenTrack tracker
C++
1
star
56

Concepts

Концепты / Concepts
1
star
57

X360Assistant

Volume change and screenshot utility for Xbox gamepads / Утилита изменения громкости и создания скриншотов для Xbox геймпадов
Pascal
1
star
58

Replacement-Capacitors

Сменные конденсаторы / Replacement сapacitors
1
star
59

XP-Picture-Viewer

Windows Picture and Fax viewer from XP / Просмотрщик изображений и факсов из XP
Pascal
1
star
60

Ris-Engine

Простой 2D движок, загружающий карты и использующий триггеры / Simple 2D engine, load maps and using triggers
Pascal
1
star
61

FreePie-UDP-receiver

Example of getting data from the FreePie IMU Android app / Пример получения данных из приложения FreePie IMU для Android
C++
1
star
62

GamepadExternalPedals

External pedals for gamepads with DSAdvance & X360Advance / Внешние педали
Pascal
1
star
63

Custom-data-notifications-center-iOS

Пользовательские данные в центре уведомлений iOS / Custom data notifications center iOS
PHP
1
star