Xbox or dualshock controller


how can i know if a user is using a Xbox Controller or a Dualshock controller?
so i can change the controller icons on the screen.

Thanks in advance,

On PC? You can’t really. Dualshock is not non-Xinput compatible device, and RawInput plugin does not let you get name and when DS3/4 is used as Xinput device using third party software, it is visible as xbox controller. You would need to use system API to determent that, not to mention you would need to write C++ as there no way to do so in blueprints

Hi , I have developed new Input Plugin here, maybe you will be interested


it is a bit to expensive for what i need dualshock controllers are working perfectly fine, the only thing i need now is to know what controller is used by the player Xbox or Dualshock to change the on screen icons, maybe if you can make a plugin thats cheaper and with the functionality i need i would buy it.

What would be price you expect ?

i would say €30 - 50max

is there a function (auto-detect) in your plugin to know if the player is using a DualShock or Xbox controller?

Yes there is, it autodetects if controller is Generic or Microsoft XBOX. Dualshock is tompmost default controller for Generic, so all other Generic joysticks are derived from Dualshock. Specialtly in WM Input is that you can use more than one controller per plalyer & combine them…

There is not blueprint function exposed to give you array of Gaming Controllers which specific player owns yet, but there is no problem to add it from my side into next update product to version v1.02
. or you can make it manualy by looping throught → WMManager->Hid_Joysticks & check boolean → bIsXInput if true = is XBOX, , or check Product Name of Device, if it contains word XBOX… There are many ways to get it. If you need that inside this product I can update version for 4.18.

In other side, you will maybe not need that function as you are switching controllers visualy during gameplay…

Also I dont understand why you need to know what Controller Type is player using as, WM Input is first input Plugin of its kind where Xinput & Generic Conrollers(Dualshocks, etc) are UNIFIED into just (“Hid Joystick”). It will automatically know & switch template for XBOX in Configuration Menu of WM Input Manager UMG. For Dualshock & XBOX controllers you will not need to remap anything as it is automatically defaulted to its correct settings, but you still can.

I have tested with 4 XBOX controllers attached + 4 other joysticks, & it worked without problems.

WM Input Manager is made from 15c++ classes & subset of Widgets Making WM Input Manager Menus. You will be able to use almost any Cheap or Expensive Gaming Controllers, including Flightsticks, steeringwheels, etc.
If you have any other questions, feel free to give me a feedback

About price, there is almost 30Eur/Vat Charges included in price ifyou are living in EUROPE,
if you buy It in USAit cost just 80eur total.

“The pricing in different regions does not only relate to the exchange rate, but also to Sales tax / Value added tax obligations. We use the USD prices as base, convert these at an average exchange rate to EUR and then apply a markup based on the individual tax obligations in that region, not only the country. Therefore the conversion of the USD prices only using the current exchange rate leads to different results.” + Epic Games Royalty

the reason i want to know what controller the user is using is to change the icons on the screen to the controller thats being used at that moment

In Wm Input Case there will be array of theese devices for each player, because, As I said, you can use multiple controllers per player & use them simultaneously, If you want to get controllers for example player2(PlayerController index 1) You will loop throught devices & get all containing variable ControllerAssigment which equals 1 , then you can read all infos about theese devices.

In compare with Unreal Engine native inputs, which you have in project settings → all types of Gaming Controllers Inputs , like GenericController, Gamepad, Dualshock Controller, XBOX 360, & others except motion controller, are unified into “HID Joystick”, so there is no need to bind inputs for each separately as you are using now.

My Dude, you are awesome. Thank you!