# Fluid joystick movement

I’m making a game where my main character moves with the joystick

the problem is that my character doesn’t move fluently (he moves straight ahead, back, right, left and straight to the diagonals)

Ask any question I will answer it (sorry if you did not fully understand)

a simplified version of my game
game1245.blend (522.9 KB)

1 Like

Your file is for UPBGE 0.2.5 , right?
What do you want how the player moves?

I understood that you might want the analogue Joystick axis to work.
I think this requires python and isn’t possible with logic bricks only.
So here’s my version with this script for your analogue Axes.

``````import bge
from mathutils import Vector

cont = bge.logic.getCurrentController()
scene = bge.logic.getCurrentScene()
own = cont.owner

Joystick = own.sensors["Joystick"]

sensitivity= 0.00001
LeftStick_x = Joystick.axisValues[0]*sensitivity
LeftStick_y = -Joystick.axisValues[1]*sensitivity
Leftvec = Vector([LeftStick_x,LeftStick_y,0])
own.applyMovement(Leftvec,True)
``````

joystickgame1245.blend (525.8 KB)

I should have asked before I started my answer, because perhaps you just want the player movement itself to be different.

i have upbge 0.2.5b
thanks for the script, i prove it. but doesnt what i need
the fluity that i mean is about to the movement of the joystick´s cursor… it moves for example …the diagonals only moves in 45º and if i want to move it in 30º doesnt moves like that.
sorry my english is not too good.
greetings from Argentina

Are you saying that you can not move between the eight directional movements 45 90 135…etc and want a more fluid transitioning

hi there.
it moves in eight directional movements, 45.90… but i need if its possible moves in the middle of them . for example…
between 0º and 45º… 22.5º.
between 45º and 90º…67.5º

that is possible in this program?
thanks for your time. greetings from Argentina