Force Feedback left/right, small/large motor assigment bug

Hello, not 100% sure about this because I just started with force feedback, but it looks like there is some kind of bug with motor assignment on xbox one gamepad.

For example, using left and right thumbstick buttons to play FF effect where left plays one effect with it’s settings and right is playing another effect with it’s settings. Left is always setup to use left motors, right only right motors in the FF asset. What seems to be buggy is that under random (probably not so random) combinations of small and large motors quite often right thumbstick will play it’s effect on left motors and left thumbstick on right motors.

This seems to behave same in 4.11preview.

1 Like

Hello ,

I have a few questions for you that will help narrow down what issue it is that you are experiencing.

Quick questions:

  1. Can you reproduce this issue in clean project?
  2. If so, could you provide a detailed list of steps to reproduce this issue on our end?
  3. Could you provide screen shots of any blueprints that may be involved with this issue?

Hello ,

We have not heard back from you in a few days, so we are marking this post as Resolved for tracking purposes. If you are still experiencing the issue you reported, please respond to this message with additional information and we will offer further assistance.

Thank you.

Hello,

sorry for the late update, I was out of the office.

I was able to reproduce the problem on a new project, but because it’s about vibrations, it’s kinda hard to be exactly sure what’s going on. Here are the repro steps:

1.) Start 4.10
2.) create a new project and choose “Flying” as a base template
3.) go to “Project Settings” and create 2 action mappings for “Gamepad Left Thumbstick Button” and “Gamepad Right Thumbstick Button” (this would probably work with any keys)
4.) open “FlyingPawn” blueprint located in “Content/FlyingBP/Blueprints”
5.) add those inputs from step 3.)
6.) add “Client Play Force Feedback” node two times (I had to turn off context sensitivity)
7.) connect one input from step 5 to one of the FF nodes, the other input to the 2nd FF node
8.) create two Force Feedback Effect assets in asset browser, set them up with some curve
9.) back in BP use those FF Effect assets in the two “Client Play Force Feedback” nodes, also hook up “Get Player Controller” to the appropriate inputs on “Client Play Force Feedback”
10.) now back in the FF Effect assets play with the assignment to the small/big/left/right motors and then in game mode play them with left/right stick buttons

This is how it looks on my side:
left large setting in FF Effect asset => plays on left large motor in game on the xbox one gamepad
left small setting in FF Effect asset => plays on right small motor on the gamepad
right large setting in FF Effect asset => plays on left large motor on the gamepad
right small setting in FF Effect asset => plays on right small motor on the gamepad

I’m sorry in advance if this turns out to be something I don’t understand about the Force Feedback and how motors should work or if I"m just “miss detecting” things with my human sensors :slight_smile:

Screenshot in the attachment to make it clear how I used those nodes.

1 Like

Hello ,

After running through the test case provided I was able to reproduce this issue on our end. I have written up a report (UE-28538) and I have submitted it to the developers for further consideration. I will provide updates with any pertinent information as it becomes available. Thank you for your time and information.

Make it a great day

I’m having a similar issue, what’s more perplexing is that the threads marked as resolved but there’s no resolution posted?

Rudy how was this resolved as I’m having serious issues for a serious game I’m developing

Hello Delta1,

I went ahead and double checked on this issue for you. It appears that this is working as intended. This appears to be a limitation of the controller hardware. Xbox 360, Xbox One, and all DualShock controllers all have only 2 actuators – a large in your right hand, and a small one in your left hand. The engine maps the left/right/large/small data as best it can to the hardware you are using, prioritizing the large/small distinction over the left/right distinction. If there is hardware that has both small and large actuator on both sides, I’d expect that to work properly. I hope that this information helps.

Make it a great day

Thanks for getting back to us Rudy, I’ve still got questions, the Xbox one has 4 actuators, one in both the left and right triggers and two larger actuators on either side of the controller.

You’re right in that the larger actuators on both sides are of different sizes and one is substantially larger than the other.

My question is how can I access the motors in the triggers and otherwise how can I be sure of actuating a right and left rumble as my serious game depends on it.

I’d really appreciate your help with this.

Short of taking the controller apart to watch and see if the motors are running as you would expect, there is not a sure fire way to test this with 100% certainty. However, you could try setting up the forced feedback on varying levels of strength one at a time to try and determine if the correct motors are running.

Ok thanks for that Rudy I’m going to give that a shot, in addition I’m also going to get a second controller and take it apart and make sure the respective motors are being actuated as my serious game actually depends on being able to provide specific and independent left and right feedback.

Is there any other way of contacting you on the forums or pming?

If you would like to contact me about this issue, this would be the best platform.

Ok great, please bear with me, I’ll test out your suggestion of varying motor intensity settings when I’m back at work next week and will hopefully try getting hold of another controller to take apart so we can say for sure.

Thanks Rudy!

Ok a bit before time:

Affects Left Large: activates the left large motor,
Affects Left Small: activates the right small motor (not trigger),
Affects Right Large: activates the left large motor,
Affects Right Small: activates the right small motor (not trigger).

I think it would be better if epic could incorporate support for the left and right trigger motors in Xbox one controllers and set them up as left and right small respectively, as these are currently redundant and unused by unreal, seems a bit wasteful really, particularly as both inputs and output are available for mapping.

2 Likes

Hello Delta1,

Thank you for looking into this. I have submitted a feature request (UE-31940) to the developers for further consideration. I will provide updates with any pertinent information as it becomes available. Thank you for your time and information.

Make it a great day

Oh well… I just hit a giant wall for making my game then… Are there any updates or even intention from Epic to fix this?

I’m using 4.27.2 and guess this isn’t being fixed for UE4, ever haha.

Fast forward 7 years into the future…
I am using Unreal Engine 5.1.1 and having the same problem - still this hasn’t changed:

  • Affects Left Large and Right Large - activates the left large motor
  • Affects Left Small and Right Small - activates the right small motor.

I checked it on Xbox 360 and Xbox One controllers.
This is quite confusing - the “Affects Left Small” and “Affects Right Large” are completely useless and give us false hope of programming nice right/left force feedback effects :confused: