---
name: "actionKeysEx"
type: command
status: ok
groups: ["Interaction"]
arma3_since: "2.10"
locality: {"argument": null, "effect": null, "server_exec": false}
source: https://community.bistudio.com/wiki/actionKeysEx
revid: 377679
updated: 2026-01-02T09:02:44Z
---

# actionKeysEx

*Command · Interaction · Arma 3 v2.10*

## Description

Gives a broken down version of [actionKeys](../commands/actionKeys.md) return. Returns an [Array](../topics/Array.md) containing the breakdowns of the [dikCodes](../topics/DIK_KeyCodes.md) of keys, buttons and combos assigned to the given user action.\
Action names can be found in config class ControllerSchemes or user action names or user profile (see [Example 1](../commands/actionKeysEx.md#example-1)).\
In addition, some of the actions are also listed here: [inputAction/actions](../topics/inputAction~2Factions.md)

The Key Device can be one of several types:

- `"KEYBOARD"`
- `"MOUSE_BUTTON"`
- `"MOUSE_AXIS"`
- `"JOYSTICK_BUTTON"`
- `"JOYSTICK_AXIS"`
- `"JOYSTICK_POV"`
- `"XINPUT"` - (Xbox) Controller Input
- `"TRACKER"` - Motion Tracking (TrackIR, Tobii etc)

## Syntax

```sqf
actionKeysEx userAction
```

**Parameters:**

- `userAction`: [String](../topics/String.md) - user action name (see [inputAction/actions](../topics/inputAction~2Factions.md))

**Returns:** [Array](../topics/Array.md) of [Arrays](../topics/Array.md) in format [mainKeyArray, comboKeyArray, isDoubleTap]:

- mainKeyArray: [Array](../topics/Array.md) with [dikCode, device, deviceId]
  - dikCode: [Number](../topics/Number.md)
  - device: [String](../topics/String.md)
  - deviceId: [Number](../topics/Number.md) - only given if the device is a Joystick type
- comboKeyArray: [Array](../topics/Array.md) identical to *mainKeyArray* - filled only if the action key is a key combination
  - dikCode: [Number](../topics/Number.md)
  - device: [String](../topics/String.md)
  - deviceId: [Number](../topics/Number.md) - identical to *mainKeyArray*'s *deviceId* as it is impossible to use two different Joystick devices in a key combination
- isDoubleTap: [Boolean](../topics/Boolean.md) - is the action key a double-tap. In case of a combination key this applies to the main key.

## Examples

### Example 1

To retrieve the following key's data, use the property name without 'key':

```cpp
keyWatch[] = { 24 };
```

```sqf
actionKeysEx "Watch"; // [[[24, "KEYBOARD"], [], false]]
```

### Example 2

```sqf
private _result = actionKeysEx "OpticsMode"; // [[[129,"MOUSE_BUTTON"],[29,"KEYBOARD"],false],[[181,"KEYBOARD"],[],false]]
```

## See also

[actionKeys](../commands/actionKeys.md) · [actionKeysNames](../commands/actionKeysNames.md) · [actionKeysNamesArray](../commands/actionKeysNamesArray.md)

<sub>Source: [BI Community Wiki — actionKeysEx](https://community.bistudio.com/wiki/actionKeysEx) (revision 377679).</sub>
