Skip to content

Add or rebind inputs

GASPALS uses Enhanced Input. The pawns add one mapping context, IMC_Sandbox, when a player possesses them. The systems listen to input actions (IA_*), not keys, so rebinding is a matter of editing mappings.

Rebind a key

Open /GASPALS/Input/Mappings/IMC_Sandbox, find the action, and change its key. For example, move the cover button from Q to F. Save; the change applies at the next Play.

Add gamepad bindings

A few actions have no gamepad key in IMC_Sandbox: IA_Cover, IA_Equipment, IA_Overlay_Pose, IA_Overlay_Body, IA_Camera_Perspective, IA_Camera_Style, IA_Takedown, IA_TriggerRagdoll. Add a mapping for each with the buttons you want, for example the right stick click for cover (then move Switch Shoulder elsewhere).

Note

The Z key is hard-wired to the Mover pawns' debug flying toggle (keyboard only; it does not use a gamepad button). Remove that node from the Mover pawn's Event Graph (an Input Key node for Z) before shipping.

Use your own mapping context

  1. Create your context and map the GASPALS input actions (copy IMC_Sandbox to start).
  2. In each pawn's SetupInput function, replace IMC_Sandbox in Add Mapping Context with yours.

Add more contexts the same way, with a higher priority for contexts that should win.

Who handles which action

Handled by Actions
The pawn Move, look, sprint, walk, strafe, aim, crouch, jump, cover
PC_Sandbox Next pawn, next character, teleport
AC_CameraSystem Perspective, style, shoulder
AC_EquipmentSystem Equipment menu, menu next / previous
AC_OverlaySystem Overlay pose and body menus, menu next / previous
AC_RagdollSystem Ragdoll (CMC pawn)
AC_SmartObjectAnimation Interact (benches)
SandboxCharacter_Mover_Ragdoll Trigger ragdoll, takedown, interact (shove), jump (get up)

Components bind their own input actions, so they receive input only when their pawn is player controlled and a context maps the action. The full list is in Input actions.

Add an input to a system

Example: a button that leaves cover at once.

  1. Create an input action IA_LeaveCover (Digital, bool) in /GASPALS/Input.
  2. Map it in IMC_Sandbox.
  3. In the pawn's Event Graph, add the IA_LeaveCover event and, on Started, call AC_CoverSystem > ExitCover.
  4. On the Mover pawn, remember that movement goes through the input command: changes that affect movement should be read in ProduceInput rather than applied directly.

Unused input assets

IMC_Sandbox is the only mapping context in /GASPALS/Input/Mappings. Traversal runs from IA_Jump; there is no separate traverse action. IA_TwinStick_AimDirection is read by the Mover pawn's twin-stick mode but not mapped.