Gamepad, joystick and game controllers can be used in your game. Xbox, Playstation and generic controllers are supported.
This feature can be activated by adding the Gamepad extension to your project. You will then be able to use conditions and expressions to check if a gamepad is connected, if a button is pressed, released or if a stick is pushed.
Learn how to install new extensions by following a step-by-step guide.
Move a character
Move a top-down character
The "Top-down gamepad mapper" behavior can be added to the character to make the character move according to player inputs automatically. The default configuration will work without any change for single player games.
Learn more about the Top-Down Movement behavior.
Move a platformer character
The "Platformer gamepad mapper" behavior can be added to the character to make the character move according to player inputs automatically.
Learn more about the Platform Character behavior.
Move a character with custom movement
Handle pressed buttons
Detecting pressed buttons can be done with the Gamepad button pressed (or released) condition. Playstation and Xbox controllers have different button names, but checking for
Cross is the same.
Gamepads::StickForce expressions can be used to apply a force on an object.
Handle several players on the same device
Detect connected gamepads
Each gamepad connected to the computer or phone is numbered from 1 to 4:
- If your game is single player, you'll usually always use condition for the Gamepad 1.
- If your game is multi player, it's a good idea to use the Gamepad connected condition to check which gamepads are connected. You could store in a variable the gamepad number associated to a player. You can also force the first player to use the Gamepad 1, and the other player to use Gamepad 2.
Vibrate a gamepad
Use the action Gamepad vibration to make a gamepad vibrate.
Advanced Gamepad vibration allows to setup vibration magnitudes for low and high frequency rumble motors. Each player can have different rumble values.