While I was experimenting with implementing mechanics for spaceship movement, I discovered (quite late) that Unreal doesn’t natively support joysticks. Originally, I thought, if Unreal supports gamepads, and the much rarer motion controllers, it should support joysticks. But I was wrong. So I searched around and found the Raw Input plugin. This plugin does work, except that all axes go from 0 to 1 (with 0.5 at rest) as opposed from -1 to 1. The only thing I can do is offset the axes in the Raw Input settings to go from -0.5 to 0.5. On top of that, when I have both the Joystick and HOTAS connected, some axes work, while others become unstable and show weird numbers when debugging. The plugin also seems to only support 20 buttons, which causes some buttons of the HOTAS and stick to overlap. The POV Hat also shows as an axis with strange numbers (even though it’s like the D-pad on a controller with 8 instead of 4 buttons). Disabling unused axes from both devices causes only the axes from the first connected/discovered device to work, with the axes of the other device overlapping with the first axis.
I have a Thrustmaster T.16000M FCS with the matching TWCS HOTAS as a set, which I use for space games such as Elite Dangerous. Simply put, is there a way to make these input devices work? Can the Raw Input plugin be modified to support this, or would I have to create a custom input plugin? Even though my C++ skills are gradually increasing it’s not there yet, so how difficult would it be to take the existing plugin and modify it to properly support at least these two devices, and in the future, others?