@Dimensionite
There’s an example in this DualSense plugin repository that might help you. I also had some trouble with this when I was building the plugin. In your class that extends IInputDevice, you need to check if the user is valid.
const int32 ControllerId = FPlatformMisc::GetUserIndexForPlatformUser(UserId);
if (ControllerId == -1)
{
continue;
}
The verification must be done with FPlatformMisc to work, because if you verify with
FInputDeviceId or FPlatformUserId, you will receive an error message handle saying that FPlatformUserId -1 is not valid.