What is the best way to detect this without the sensitive printing excessively that happens with doing this with Delta.X?
Gamepad Input → UserInputService. Read the second portion of that section which includes details on programming for analog controls.
Don’t know what you’re looking for otherwise since this is the only way to do so. Analog controls will constantly pass input indicating their current state and position so you need to account for that as well. It’s not excessive, it’s just the way you need to deal with it.
The analog detection with the Joystick spams the output and I want it to not with some methods. Whenever I used Thumbstick1 with UserInputService.
What exactly are you trying to accomplish here, I don’t understand. What’s your exact use case? Without accounting for what I described earlier in that analog controls will always pass a new input state when changed, you’re seeing expected behaviour and the only way of detecting thumbstick movement as your question poses. The “excessive prints” are natural. It seems like you want something else but there’s a bit of dissonance between what your thread is asking and what you want as per your reply.
I’m trying to detect where the thumbstick is pointing on a game controller so I can use this for gear changing and other functions.
Please see the article I linked. You need to check the value of X and Y of the position of the InputObject given to InputChanged when working with analog controls. You’re looking to determine whether the values are positive or negative to determine the direction of the thumbstick.
Actually I found it, I kept using Delta and not Position and now it works quite well.