Gamepads (controllers)
Add support for gamepads (or other controllers) to your game, giving access to information such as button presses, axis positions, trigger pressure, etc...
Authors and contributors to this experimental extension: Bouh, lhphr, ZachjuKamashi, D8H.
Add support for gamepads (or other physical controllers).
It gives access to:
- button presses,
- axis positions and force,
- trigger pressure,
- configurable deadzone,
- vibration,
- automatic "gamepad mapper" behaviors for 2D and 3D movement behaviors (platformer characters, top-down movement, 3D character etc...). Add one of these to the object with the movement behavior (i.e: the player most of the time) and the behavior will then be controlled automatically by the gamepad (it works by reading the gamepad state and simulating controls). No need for additional events to make it work once the behaviors are set up.
The Bomberman-like example handles 4 players with gamepads (open the project online).
Tip
Learn how to install new extensions by following a step-by-step guide.
Actions
Advanced gamepad vibration
Generate an advanced vibration on the specified controller. Incompatible with Firefox.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔢 Number): Time of the vibration, in seconds (optional, default value is 1)
- Parameter 3 (🔢 Number): Strong rumble magnitude (from 0 to 1)
- Parameter 4 (🔢 Number): Weak rumble magnitude (from 0 to 1)
Technical note: parameters 0, 5 are internal parameters handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::A_Advanced_Vibration_Controller.
Change gamepad active vibration
Change a vibration on the specified controller. Incompatible with Firefox.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔢 Number): Strong rumble magnitude (from 0 to 1)
- Parameter 3 (🔢 Number): Weak rumble magnitude (from 0 to 1)
Technical note: parameters 0, 4 are internal parameters handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::A_Change_Vibration_Magnitude.
Set gamepad deadzone for sticks
Set the deadzone for sticks of the gamepad. The deadzone is an area for which movement on sticks won't be taken into account (instead, the stick will be considered as not moved). Deadzone is between 0 and 1, and is by default 0.2.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔢 Number): Deadzone for sticks, 0.2 by default (0 to 1)
Technical note: parameters 0, 3 are internal parameters handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::A_Set_deadzone.
Gamepad vibration
Generate a vibration on the specified controller. Might only work if the game is running in a recent web browser.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔢 Number): Time of the vibration, in seconds (optional, default value is 1)
Technical note: parameters 0, 3 are internal parameters handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::A_Vibrate_controller.
Conditions
Any gamepad button pressed
Check if any button is pressed on a gamepad.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
Technical note: parameters 0, 2 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::C_Any_Button_pressed.
Gamepad stick pushed (axis)
Check if a stick of a gamepad is pushed in a given direction.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔤 String): Stick: "Left" or "Right" (one of: "Left", "Right")
- Parameter 3 (🔤 String): Direction (one of: "Up", "Down", "Left", "Right", "Any")
Technical note: parameters 0, 4 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::C_Axis_pushed.
Gamepad button pressed
Check if a button is pressed on a gamepad.
Buttons can be:
* Xbox: "A", "B", "X", "Y", "LB", "RB", "LT", "RT", "BACK", "START",
* PS4: "CROSS", "SQUARE", "CIRCLE", "TRIANGLE", "L1", "L2", "R1", "R2", "SHARE", "OPTIONS", "PS_BUTTON", "CLICK_TOUCHPAD",
* Other: "UP", "DOWN", "LEFT", "RIGHT", "CLICK_STICK_LEFT", "CLICK_STICK_RIGHT".
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔤 String): Name of the button (one of: "A", "Cross", "B", "Circle", "X", "Square", "Y", "Triangle", "LB", "L1", "RB", "R1", "LT", "L2", "RT", "R2", "Up", "Down", "Left", "Right", "Back", "Share", "Start", "Options", "Click_Stick_Left", "Click_Stick_Right", "PS_Button", "Click_Touchpad")
Technical note: parameters 0, 3 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::C_Button_pressed.
Gamepad button released
Test if a button is released on a gamepad. Buttons can be:
* Xbox: "A", "B", "X", "Y", "LB", "RB", "LT", "RT", "BACK", "START",
* PS4: "CROSS", "SQUARE", "CIRCLE", "TRIANGLE", "L1", "L2", "R1", "R2", "SHARE", "OPTIONS", "PS_BUTTON", "CLICK_TOUCHPAD",
* Other: "UP", "DOWN", "LEFT", "RIGHT", "CLICK_STICK_LEFT", "CLICK_STICK_RIGHT".
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔤 String): Name of the button (one of: "A", "Cross", "B", "Circle", "X", "Square", "Y", "Triangle", "LB", "L1", "RB", "R1", "LT", "L2", "RT", "R2", "Up", "Down", "Left", "Right", "Back", "Share", "Start", "Options", "Click_Stick_Left", "Click_Stick_Right", "PS_Button", "Click_Touchpad")
Technical note: parameters 0, 3 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::C_Button_released.
Gamepad connected
Check if a gamepad is connected.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
Technical note: parameters 0, 2 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::C_Controller_X_is_connected.
Gamepad type
Check if the specified gamepad has the specified information in its description. Useful to know if the gamepad is a Xbox or PS4 controller.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔤 String): Type: "Xbox", "PS4", "Steam" or "PS3" (among other)
Technical note: parameters 0, 3 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::C_Controller_type.
Any gamepad button released
Check if any button is released on a gamepad.
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
Technical note: parameters 0, 2 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::C_any_button_released.
Gamepad button just pressed
Check if a button was just pressed on a gamepad. Buttons can be:
* Xbox: "A", "B", "X", "Y", "LB", "RB", "LT", "RT", "BACK", "START",
* PS4: "CROSS", "SQUARE", "CIRCLE", "TRIANGLE", "L1", "L2", "R1", "R2", "SHARE", "OPTIONS", "PS_BUTTON", "CLICK_TOUCHPAD",
* Other: "UP", "DOWN", "LEFT", "RIGHT", "CLICK_STICK_LEFT", "CLICK_STICK_RIGHT".
See parameters & details
- Parameter 1 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 2 (🔤 String): Name of the button (one of: "A", "Cross", "B", "Circle", "X", "Square", "Y", "Triangle", "LB", "L1", "RB", "R1", "LT", "L2", "RT", "R2", "Up", "Down", "Left", "Right", "Back", "Share", "Start", "Options", "Click_Stick_Left", "Click_Stick_Right", "PS_Button", "Click_Touchpad")
Technical note: parameters 0, 3 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::IsButtonJustPressed.
Stick force
Compare the force of gamepad stick (from 0 to 1).
See parameters & details
- Parameter 1: 🟰 Relational operator
- Parameter 2 (🔢 Number): Value to compare
- Parameter 3 (🔢 Number): The gamepad identifier: 1, 2, 3 or 4
- Parameter 4 (🔤 String): Stick: "Left" or "Right" (one of: "Left", "Right")
Technical note: parameters 0, 5 are internal parameters handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::StickForce.
Expressions
| Expression | Description | |
|---|---|---|
Gamepads::ConnectedGamepadsCount() |
Return the number of connected gamepads. | |
Gamepads::Deadzone(number) |
Return the value of the deadzone applied to a gamepad sticks, between 0 and 1. | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
Gamepads::GamepadCount() |
Return the number of gamepads. | |
Gamepads::GamepadType(number) |
Return a string containing informations about the specified gamepad. | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
Gamepads::LastButtonID(number) |
Return the index of the last pressed button of a gamepad. | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
Gamepads::LastButtonString(number, string) |
Return the last button pressed. Buttons for Xbox and PS4 can be: Xbox: "A", "B", "X", "Y", "LB", "RB", "LT", "RT", "BACK", "START", PS4: "CROSS", "SQUARE", "CIRCLE", "TRIANGLE", "L1", "L2", "R1", "R2", "SHARE", "OPTIONS", "PS_BUTTON", "CLICK_TOUCHPAD",* Both: "UP", "DOWN", "LEFT", "RIGHT", "CLICK_STICK_LEFT", "CLICK_STICK_RIGHT". | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
| 🔤 String | Controller type | |
Gamepads::StickAngle(number, string) |
Return the angle of a gamepad stick.If the deadzone value is high, the angle value is rounded to main axes, left, left, up, down.An zero deadzone value give a total freedom on the angle value. | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
| 🔤 String | Stick: "Left" or "Right" | |
Gamepads::StickForce(number, string) |
Return the force of gamepad stick (from 0 to 1). | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
| 🔤 String | Stick: "Left" or "Right" | |
Gamepads::StickForceX(number, string) |
Return the gamepad stick force on X axis (from -1 at the left to 1 at the right). | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
| 🔤 String | Stick: "Left" or "Right" | |
Gamepads::StickForceY(number, string) |
Return the gamepad stick force on Y axis (from -1 at the top to 1 at the bottom). | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
| 🔤 String | Stick: "Left" or "Right" | |
Gamepads::StrongVibrationMagnitude(number) |
Return the strength of the strong vibration motor on the gamepad of a player. | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
Gamepads::TriggerPressure(number, string) |
Get the value of the pressure on a gamepad trigger. | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 | |
| 🔤 String | Trigger button | |
Gamepads::WeakVibrationMagnitude(number) |
Return the strength of the weak vibration motor on the gamepad of a player. | |
| 🔢 Number | The gamepad identifier: 1, 2, 3 or 4 |
First person camera gamepad mapper
Control camera rotations with a gamepad.
Behavior properties
- Camera joystick (Choice, one of: "Left", "Right"). Default value is
Right. - Gamepad identifier (1, 2, 3 or 4) (🔢 Number). Default value is
1. - Rotation acceleration (🔢 Number). Default value is
360. - Rotation deceleration (🔢 Number). Default value is
720. - Maximum rotation speed (🔢 Number, Angular speed). Default value is
180. - Z position offset (🔢 Number, Distance). Default value is
0. - Maximum angle (🔢 Number, Angle). Default value is
90. - Minimum angle (🔢 Number, Angle). Default value is
-90. - Rotation acceleration (🔢 Number). Default value is
240. - Rotation deceleration (🔢 Number). Default value is
480. - Maximum rotation speed (🔢 Number, Angular speed). Default value is
120.
See internal technical details
- Camera joystick is stored as
CameraStick(Choice). Default value isRight. - Gamepad identifier (1, 2, 3 or 4) is stored as
GamepadIdentifier(Number). Default value is1. - Rotation acceleration is stored as
HorizontalRotationAcceleration(Number). Default value is360. - Rotation deceleration is stored as
HorizontalRotationDeceleration(Number). Default value is720. -
Maximum rotation speed is stored as
HorizontalRotationSpeedMax(Number). Unit is AngularSpeed. Default value is180.This behavior must be used on an object also having a behavior with type "Scene3D::Base3DBehavior". This is stored on property
Object3D. -
Z position offset is stored as
OffsetZ(Number). Unit is Pixel. Default value is0. - Maximum angle is stored as
VerticalAngleMax(Number). Unit is DegreeAngle. Default value is90. - Minimum angle is stored as
VerticalAngleMin(Number). Unit is DegreeAngle. Default value is-90. - Rotation acceleration is stored as
VerticalRotationAcceleration(Number). Default value is240. - Rotation deceleration is stored as
VerticalRotationDeceleration(Number). Default value is480. - Maximum rotation speed is stored as
VerticalRotationSpeedMax(Number). Unit is AngularSpeed. Default value is120.
Behavior actions
Horizontal rotation acceleration
Change the horizontal rotation acceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetHorizontalRotationAcceleration.
Horizontal rotation deceleration
Change the horizontal rotation deceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetHorizontalRotationDeceleration.
Maximum horizontal rotation speed
Change the maximum horizontal rotation speed of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetHorizontalRotationSpeedMax.
Z position offset
Change the z position offset of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetOffsetZ.
Maximum vertical camera angle
Change the maximum vertical camera angle of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetVerticalAngleMax.
Minimum vertical camera angle
Change the minimum vertical camera angle of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetVerticalAngleMin.
Vertical rotation acceleration
Change the vertical rotation acceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetVerticalRotationAcceleration.
Vertical rotation deceleration
Change the vertical rotation deceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetVerticalRotationDeceleration.
Maximum vertical rotation speed
Change the maximum vertical rotation speed of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Operator
- Parameter 3 (🔢 Number): Value
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this action internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::SetVerticalRotationSpeedMax.
Behavior conditions
Horizontal rotation acceleration
Compare the horizontal rotation acceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::HorizontalRotationAcceleration.
Horizontal rotation deceleration
Compare the horizontal rotation deceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::HorizontalRotationDeceleration.
Maximum horizontal rotation speed
Compare the maximum horizontal rotation speed of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::HorizontalRotationSpeedMax.
Z position offset
Compare the z position offset of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::OffsetZ.
Maximum vertical camera angle
Compare the maximum vertical camera angle of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::VerticalAngleMax.
Minimum vertical camera angle
Compare the minimum vertical camera angle of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::VerticalAngleMin.
Vertical rotation acceleration
Compare the vertical rotation acceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::VerticalRotationAcceleration.
Vertical rotation deceleration
Compare the vertical rotation deceleration of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::VerticalRotationDeceleration.
Maximum vertical rotation speed
Compare the maximum vertical rotation speed of the object.
See parameters & details
- Parameter 0: 👾 Object
- Parameter 1: 🧩 Behavior
- Parameter 2: 🟰 Relational operator
- Parameter 3 (🔢 Number): Value to compare
Technical note: parameter 4 is an internal parameter handled by GDevelop.
Technical note: this condition internal type (in GDevelop JSON) is
Gamepads::FirstPersonGamepadMapper::VerticalRotationSpeedMax.
Behavior expressions
| Expression | Description | |
|---|---|---|
Object.FirstPersonGamepadMapper::HorizontalRotationAcceleration() |
Return the horizontal rotation acceleration of the object. | |
Object.FirstPersonGamepadMapper::HorizontalRotationDeceleration() |
Return the horizontal rotation deceleration of the object. | |
Object.FirstPersonGamepadMapper::HorizontalRotationSpeedMax() |
Return the maximum horizontal rotation speed of the object. | |
Object.FirstPersonGamepadMapper::OffsetZ() |
Return the z position offset of the object. | |
Object.FirstPersonGamepadMapper::VerticalAngleMax() |
Return the maximum vertical camera angle of the object. | |
Object.FirstPersonGamepadMapper::VerticalAngleMin() |
Return the minimum vertical camera angle of the object. | |
Object.FirstPersonGamepadMapper::VerticalRotationAcceleration() |
Return the vertical rotation acceleration of the object. | |
Object.FirstPersonGamepadMapper::VerticalRotationDeceleration() |
Return the vertical rotation deceleration of the object. | |
Object.FirstPersonGamepadMapper::VerticalRotationSpeedMax() |
Return the maximum vertical rotation speed of the object. |
3D car gamepad mapper
Control a 3D physics car with a gamepad.
Behavior properties
- Gamepad identifier (1, 2, 3 or 4) (🔢 Number). Default value is
1. - Hand brake button (Choice, one of: "A or Cross", "B or Circle", "X or Square", "Y or Triangle", "LB or L1", "RB or R1", "LT or L2", "RT or R2"). Default value is
B or Circle. - Use directional pad (🔘 Boolean). Default value is
true. - Use left stick (🔘 Boolean). Default value is
true. - Use right stick (🔘 Boolean). Default value is
false.
See internal technical details
- Gamepad identifier (1, 2, 3 or 4) is stored as
GamepadIdentifier(Number). Default value is1. -
Hand brake button is stored as
HandBrakeButton(Choice). Default value isB or Circle.This behavior must be used on an object also having a behavior with type "Physics3D::PhysicsCar3D". This is stored on property
PhysicsCar3D. -
Use directional pad is stored as
UseArrows(Boolean). Default value istrue. - Use left stick is stored as
UseLeftStick(Boolean). Default value istrue. - Use right stick is stored as
UseRightStick(Boolean). Default value isfalse.
No expressions for this behavior.
3D platformer gamepad mapper
Control a 3D physics character with a gamepad.
Behavior properties
- Gamepad identifier (1, 2, 3 or 4) (🔢 Number). Default value is
1. - Walk joystick (Choice, one of: "Left", "Right"). Default value is
Left. - Jump button (Choice, one of: "A or Cross", "B or Circle", "X or Square", "Y or Triangle", "LB or L1", "RB or R1", "LT or L2", "RT or R2"). Default value is
A or Cross.
See internal technical details
- Gamepad identifier (1, 2, 3 or 4) is stored as
GamepadIdentifier(Number). Default value is1. - Walk joystick is stored as
JoystickIdentifier(Choice). Default value isLeft. - Jump button is stored as
JumpButton(Choice). Default value isA or Cross.This behavior must be used on an object also having a behavior with type "Physics3D::PhysicsCharacter3D". This is stored on property
PhysicsCharacter3D.
No expressions for this behavior.
Platformer gamepad mapper
Control a platformer character with a gamepad.
Behavior properties
- Gamepad identifier (1, 2, 3 or 4) (🔢 Number). Default value is
1. - Jump button (Choice, one of: "A or Cross", "B or Circle", "X or Square", "Y or Triangle", "LB or L1", "RB or R1", "LT or L2", "RT or R2"). Default value is
A or Cross. - Use directional pad (🔘 Boolean). Default value is
true. - Use left stick (🔘 Boolean). Default value is
true. - Use right stick (🔘 Boolean). Default value is
false.
See internal technical details
- Gamepad identifier (1, 2, 3 or 4) is stored as
GamepadIdentifier(Number). Default value is1. -
Jump button is stored as
JumpButton(Choice). Default value isA or Cross.This behavior must be used on an object also having a behavior with type "PlatformBehavior::PlatformerObjectBehavior". This is stored on property
PlatformerCharacter. -
Use directional pad is stored as
UseArrows(Boolean). Default value istrue. - Use left stick is stored as
UseLeftStick(Boolean). Default value istrue. - Use right stick is stored as
UseRightStick(Boolean). Default value isfalse.
No expressions for this behavior.
3D shooter gamepad mapper
Control a 3D physics character with a gamepad.
Behavior properties
- Camera joystick (Choice, one of: "Left", "Right"). Default value is
Right. - Gamepad identifier (1, 2, 3 or 4) (🔢 Number). Default value is
1. - Jump button (Choice, one of: "A or Cross", "B or Circle", "X or Square", "Y or Triangle", "LB or L1", "RB or R1", "LT or L2", "RT or R2"). Default value is
A or Cross. - Walk joystick (Choice, one of: "Left", "Right"). Default value is
Left.
See internal technical details
- Camera joystick is stored as
CameraStick(Choice). Default value isRight. - Gamepad identifier (1, 2, 3 or 4) is stored as
GamepadIdentifier(Number). Default value is1. -
Jump button is stored as
JumpButton(Choice). Default value isA or Cross.This behavior must be used on an object also having a behavior with type "Physics3D::PhysicsCharacter3D". This is stored on property
PhysicsCharacter3D. -
Walk joystick is stored as
WalkStick(Choice). Default value isLeft.
No expressions for this behavior.
Top-down gamepad mapper
Control a top-down character with a gamepad.
Behavior properties
- Gamepad identifier (1, 2, 3 or 4) (🔢 Number). Default value is
1. - Stick mode (Choice, one of: "Analog", "360°", "8 Directions"). Default value is
Analog. - Use directional pad (🔘 Boolean). Default value is
true. - Use left stick (🔘 Boolean). Default value is
true. - Use right stick (🔘 Boolean). Default value is
false.
See internal technical details
- Gamepad identifier (1, 2, 3 or 4) is stored as
GamepadIdentifier(Number). Default value is1. -
Stick mode is stored as
StickMode(Choice). Default value isAnalog.This behavior must be used on an object also having a behavior with type "TopDownMovementBehavior::TopDownMovementBehavior". This is stored on property
TopDownMovement. -
Use directional pad is stored as
UseArrows(Boolean). Default value istrue. - Use left stick is stored as
UseLeftStick(Boolean). Default value istrue. - Use right stick is stored as
UseRightStick(Boolean). Default value isfalse.
No expressions for this behavior.
This page is an auto-generated reference page about the Gamepads (controllers) extension for GDevelop, the open-source, AI-powered, cross-platform game engine designed for everyone. Learn more about all GDevelop extensions here.