Dead zones processed incorrectly?

Hey all,

There is something I found in the engine source when I was trying to adjust dead zones for controllers and experienced no changes in how the controller joysticks responded, and I just wanted to put it out there for all to see (Epic Staff and Source Contributors).

What I believe may be an bug, is in the PlayerInput.cpp lines 1711-1713 (in the “MassageVectorAxisInput” function), and looks like a copy paste error; I have attached a screenshot for reference.
It seems only the “X” component of the NewVal vector is being set by the result of the lambda, but the lambda is being called for components X, Y, and Z, which would make the final value for NewVal.X be equal to whatever comes out of the lambda for processing NewVal.Z

I’m currently running on a custom build of 4.22.2 at work, though I can confirm we haven’t made any modifications to this file, so it’s more than likely in the current public source build.
can anyone at Epic confirm if this is a bug or if it’s intentional? I can’t seem to make heads or tails of this logic if it is correct; if this is the way it’s supposed to work, then is there another reason why dead zones aren’t functioning?

I have tried setting the dead zones in the **Project Settings -> Input **section, as well as trying to change them through code using the “SetAxisProperties” function, setting the dead zones from something as little as zero, to as high as high as 1.0 (and beyond, just to be sure), but had no change in joystick behaviour.

Thanks :slight_smile:

P.S.
I apologize if this is the incorrect forum, or if the formatting is incorrect; I don’t often post, but figured this would be worth while to bring up.