Hi just wanted to know if there is a way to in essence fool a game that natively supports PS4 button prompts to display them while using Ds4windows?
For example the witcher 3 has plug and play for the ds4, but using this program I still get xbox buttons!
Not a huge deal but would be nice if there was a way, recently sekiro come out and while they forgot to patch in the ds4 buttons, apparently will at a later date!
It gets confusing sometimes using the xbox layout! Thanks for the great software anyway.
Btw, there's a Witcher 3 mod for that: https://www.nexusmods.com/witcher3/mods/1657
This tool was originally meant to emulate an Xbox 360 controller in order to be able to play most PC games that only support XInput. Only recently have I seen a trend of games being released that natively support the DS4 with appropriate button prompts.
As it stands now, you would have to find a game mod that changes the glyphs as needed. teijiIshida linked to a Witcher 3 mod that should take care of that. With the recent adoption of ViGEmBus, DS4 controller emulation would technically be possible so that games would see a re-mapped controller as a DS4 controller rather than an Xbox 360 controller. Actually implementing that functionality in the current DS4Windows code might not happen though.
There's also an increasing trend in new games which allow you to select DS4/PS4 button prompts regardless of the input device, such as AC: Odyssey and Fortnite.
Your options are either get a PS4 Button mod for your game or temporarily disable DS4Windows. You can have it temporarily disable automatically when launching certain games using auto-profile.
There's also an increasing trend in new games which allow you to select DS4/PS4 button prompts regardless of the input device, such as AC: Odyssey and Fortnite.
I don't think I have run across that with games in my library but that would be a really useful feature.
Your options are either get a PS4 Button mod for your game or temporarily disable DS4Windows. You can have it temporarily disable automatically when launching certain games using auto-profile.
The major problem with that old function is that it does not work with BT connections. The mode shift that initially happens causes the old DirectInput controller to be seen as a dead controller. The DS4 would have to be disconnected and re-connected in order to work in DirectInput mode again.
Some minor changes will still have to be done but it looks like version 1.7.5 will support emulating a DS4 controller. That way, you can hide the original controller from the game and have the game use a virtual DS4 controller instead. A game that natively supports the DS4 will be able to show the proper button prompts rather than having to display Xbox 360 button prompts.
Based on my testing with a mostly default profile, the emulated controller can actually be faster than the original exposed DirectInput controller.
That's great news! If a game supports DS4 specific features (such as motion/SixAxis), would it also work on the virtual DS4 controller?
That's awesome news! Thanks for your continued work on this great software
That's great news! If a game supports DS4 specific features (such as motion/SixAxis), would it also work on the virtual DS4 controller?
No. There is no support for mapping gyro data in ViGEmBus. Also, that feature is not exposed when the DS4 is in DirectInput mode. That issue should not affect any PC game but it might be a limiting factor for PS4 Remote Play while playing some games.
That's great news! If a game supports DS4 specific features (such as motion/SixAxis), would it also work on the virtual DS4 controller?
No. There is no support for mapping gyro data in ViGEmBus. Also, that feature is not exposed when the DS4 is in DirectInput mode. That issue should not affect any PC game but it might be a limiting factor for PS4 Remote Play while playing some games.
Have you used RPCS3, the PlayStation 3 Emulator? It has it's own Dualshock 4 handler that recognizes the Dinput device and has native SIXAXIS and rumble working.
Could that work with the virtual DS4?
For DS4 buttons in games there is already solution 1.7.4. Create one profile for DS4 (with Controls->Other->Use Dinput only enabled), and other profile for X360 (with "Use Dinput only disabled"). After that, under "Special Action" in DS4 profile create new action:
In controllers tab manually choose DS4 profile for controller. Now by pressing whatever trigger You set, for example PS+Option, You switch between emulating DS4 and not emulating DS4. For better recognition I would propose setting lightbar to green for X360 profile and to blue on DS4 profile.
I've tested it on few games already and it works perfectly fine. I start game that doesn't support DS4? PS+Option, and I have X360 emulated. I switch to game that support DS4? PS+Option and I see again DS4 buttons.
Have you used RPCS3, the PlayStation 3 Emulator? It has it's own Dualshock 4 handler that recognizes the Dinput device and has native SIXAXIS and rumble working.
Could that work with the virtual DS4?
It probably does a mode switch on the HID device just like DS4Windows does. Anyway, ViGEmBus has no way to relay the gyro data so it is not possible using a virtual controller.
For DS4 buttons in games there is already solution 1.7.4. Create one profile for DS4 (with Controls->Other->Use Dinput only enabled), and other profile for X360 (with "Use Dinput only disabled"). After that, under "Special Action" in DS4 profile create new action:
Unfortunately, that option would not work for that purpose when using a Bluetooth connection. Games would just see a dead controller when exclusive mode is not used.
One other minor benefit of DS4 emulation would be to improve DS4 support for games that do not support a specific device. Rocket League does not support the Sony Wireless Adapter but it does support the DS4 v.1 and v.2.
https://projects.vigem.org/public/task/51/27281599595f5fbe5f915884fb9ca2de92726e74173f1ac434300b2d40af
They have implementing support for DS4 motion controls in their backlog btw
Most helpful comment
This tool was originally meant to emulate an Xbox 360 controller in order to be able to play most PC games that only support XInput. Only recently have I seen a trend of games being released that natively support the DS4 with appropriate button prompts.
As it stands now, you would have to find a game mod that changes the glyphs as needed. teijiIshida linked to a Witcher 3 mod that should take care of that. With the recent adoption of ViGEmBus, DS4 controller emulation would technically be possible so that games would see a re-mapped controller as a DS4 controller rather than an Xbox 360 controller. Actually implementing that functionality in the current DS4Windows code might not happen though.