I have a game where players can already map their controls, both gamepad and keyboard. So far so good. However, I want to add the ability for players to bind HOTAS controllers, which often have more keys and axes than regular gamepads. This is where the default input system runs into issues, as it treats the HOTAS device as a regular controller, limiting it to 15 keys and 5 axes.
Is there any way to just push more keys into the default SDL mapping? I think the engine is supposed to support it, and I find it absurd that the __XINPUT_DEVICE__ default doesn't support more keys by default.
So far I tried this code, but it doesn't seem to do anything: Input.add_joy_mapping("__XINPUT_DEVICE__,Undefined Controller,a:b12,b:b13,x:b14,y:b15,f1:b16,f2:b17,f3:b18,f4:b19,f5:b20,start:b4,guide:b10,back:b5,leftstick:b6,rightstick:b7,leftshoulder:b8,rightshoulder:b9,dpup:b0,dpdown:b1,dpleft:b2,dpright:b3,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:a4,righttrigger:a5,platform:Windows,", true)
I want to emphasize on the fact that I don't care about device specifics and I don't want to generate a bunch of SDL mappings to support 100 HOTAS devices. I just want to allow players to bind whatever raw buttons and axes they have.