Looking for a decent gamepad with DirectInput support


I’m looking to get a gamepad to play / test my game with, but I’m having trouble finding any good info / reviews on what’s worth getting.

The most obvious one would be the xbox 360 controller, but as far as I know it breaks rumble support in JME.

I still want to get one later to make sure it works with the official / most popular controller, but due to financial constraints I’d want to get an other one first that supports rumble, preferably a playstation-style knockoff. (so that i have both layouts to test for comfort / keybinds)

Can anyone suggest a reliable brand / model that fully works with JME? Wireless is preferable, but only if the controller comes with its own rechargable batteries & a way to charge it.

Here are some gaming devices that I tested. I recently bought 4 steering wheels too, but those are not included in that pdf.
The last device is the only wireless system, but it didn’t rumble under jME and needs batteries.
There may be better devices that I did not test.

I confirm that the XBox360 gamepad did not rumble and has weird joysticks (maps a circle instead of a rectangle - so you can only have 0.5*sqrt(2.0) for x and y axis when pressing the stick in a diagonal position - all other gamepads used full 1.0 for x and y axis when pushed in a diagonal position).

My interest shifted lately (doing other things for jME now). So don’t expect too much. This .pdf might just be what you need, since those game pads are cheap to buy. In some shops you can buy deluxe game pads that cost twice as much as the usual XBox360 game pad - too much for my purpose - I would buy and return those within two weeks if I were such a type of customer.

I think that the jME gaming device subsystem needs some work. Two years ago I found some odd things in the code and there are some users now and then who are reporting problems. I guess part of the problem is that Linux and Mac support for game pads, joysticks, wheels is difficult. Another problem might be the lack of interest - which will probably change as soon as the new Virtual Reality gaming devices hit the market! :chimpanzee_smile:

1 Like

This is very useful! Thanks! :smile:

It also depends on if you like XBox style or Playstation style controls/layouts. I personally find the XBox style gamepads awkward but I know they are popular. I’ve spent a good deal of my life with a PS2/PS3/PS4 controller in my hand so that feels more natural to me.

For that I’m rather fond of this one:

…I’ve never tried rumble on it, though. It’s a pretty solid build. I got mine on sale for $19, though.

1 Like

So I’ve spent almost all day looking at different controllers and must say I’m quite frustrated. Sadly, a lot of those in the above linked pdf are not sold in my country, I’ve had a few suggestions by people (Logitech F510) but it sadly appears discontinued.

Almost every other PS-style controller has something that didn’t meet my requirements and/or had loads of bad reviews.
At this point I’ve given up on it and started browsing through xbox controller knockoffs. I did find one that seemed fit for every purpose and was actually in the PDF too, the Speedlink Xeox.
Prolem now is that the (logical)ids seem to be mismatched (especially for axes) between the various gamepads so now I don’t know how to handle default binds… probably should stick to the xbox one and just display the actual names returned by the controller itself.

As it stands, I’m very tempted to just get a java xinput library for my game so that I can make the official xbox controller work.

Just had a short look at the XInput wikipedia entry…
Seems to be tailored for XBox360-Controllers only.
For example I’m currently writing some party games that allow 6 or more gamepads concurrently (which would not be possible with XInput - says “max 4 controllers” (like a fully used XBox-360 with 4 people))