GameMaker (2.3)

Virtual Joystick

Jesus Alvarado Dev

You must be logged in to obtain assets


Virtual Joysticks without pain !!!

Do you need to put one o two Joystick on the screen to move and/or rotate your player?

With this easy to use script, you will get this functionality in only a few lines of code, saving time and effort, so you can concentrate on your game.


  • Is multi-touch, finger #1 controls the first Virtual Joystick; the second finger controls the second Virtual Joystick.
  • Can activate or deactivate the Joysticks
  • Can manipulate the size
  • Can use direction or axis values
  • Does not need sprites but can use it if you want


Update 1.0.1

  • added - New function to create the Joystick customizing the drawing radios
  • added - Change the Main & Joystick radio after creation
  • added - More comments

Update 1.0.2

  • added - Dead zone

Update 2.0.0

  • Easier to use
  • More customizable
  • More powerful
  • Without sprites
  • Fully documented
  • Completly multi-touch
  • Demo included
  • Case of use (Spaceship)
  • The best Price / Benefit

Drag the Joystick controller to your room

You only needs to instantiate the Joysticks in your player controller:

// Get the Left and Right Joystick instances

dC = vjGetDeviceController_Instance();

lJ = dC.getLeftJoystick(); // Left Joystick instance

rJ = dC.getRightJoystick() // Right Joystick instance


And then get the direction and rotation


direction = lJ.getDirection();

// ...

image_angle = rJ.getRotation();

View the documentation

End User Licence Agreement (EULA).

Age Rating: 4+


GMS2.3 - Version 2.0.0. Published October 30, 2020

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait