| Field | Type | Offset | Description | Notes |
|---|---|---|---|---|
| regionType | u8 | 0x0 | Range shape (cylinder, prism, capsule) | This field uses the following enum: ACTION_BUTTON_REGION_TYPE |
| padding1 | dummy8 | 0x1 | This field is padding. | |
| dummyPoly1 | s32 | 0x4 | Specify the dummy polygon ID that is the center of the bottom of the range. If there is no dummy polygib or -1 is entered, the center coordinates will be the reference. | |
| dummyPoly2 | s32 | 0x8 | Used only when the range type is a capsule. Additional dummy polygon (capsule) that creates a line segment with two dummy polygons | |
| radius | f32 | 0xc | Radius (cylinder / capsule) | |
| angle | s32 | 0x10 | Angle (cylinder) | |
| depth | f32 | 0x14 | Depth (prism) | |
| width | f32 | 0x18 | Width (prism) | |
| height | f32 | 0x1c | Height (cylinder / prism) | |
| baseHeightOffset | f32 | 0x20 | How much to raise or lower the Y coordinate of the bottom (cylinder / prism) | |
| angleCheckType | u8 | 0x24 | Angle difference judgment type (cylinder / prism) | This field uses the following enum: ACTION_BUTTON_ANGLE_CHECK_TYPE |
| padding2 | dummy8 | 0x25 | This field is padding. | |
| allowAngle | s32 | 0x28 | Allowable angle difference (cylinder / prism) | |
| padding3 | dummy8 | 0x2c | This field is padding. | |
| textBoxType | u8 | 0x30 | Text box type | This field uses the following enum: ACTION_BUTTON_TEXT_BOX_TYPE |
| raycastType | u8 | 0x31 | ||
| actionGroupId | u8 | 0x32 | Which action group does this action button belong to. For example, you may be able to use X action whilst hanging, but you cannot use Y action. | This field uses the following enum: ACTION_BUTTON_CATEGORY |
| execButtonTriangle | u8 | 0x33 [0] | This field is a boolean. | |
| isInvalidForRide | u8 | 0x33 [1] | If enabled, this action will not appear whilst in the 'riding' state. | This field is a boolean. |
| isGrayoutForRide | u8 | 0x33 [2] | If enabled, this action will be grayed out whilst in the 'riding' state. | This field is a boolean. |
| drawLine | u8 | 0x33 [3] | If enabled, a line will appear from the icon to the ground. | |
| padding4 | dummy8 | 0x33 [4-7] | This field is padding. | |
| textId | s32 | 0x34 | The FMG Entry ID to display. | This field refers to the following text files: Event_Text |
| invalidFlag | u32 | 0x38 | If the event flag is ON, then this action will not appear. | This field takes an Event Flag ID. |
| grayoutFlag | u32 | 0x3c | If the event flag is ON, then this action will be grayed out. | This field takes an Event Flag ID. |
| priority | s32 | 0x40 | Priority when displaying multiple actions, 0 is highest priority. | |
| execInvalidTime | f32 | 0x44 | Invalid time after execution (-infinite by value) | |
| execButtonCircle | u8 | 0x48 | ||
| sameCategoryActionDisplay | u8 | 0x49 | Whether or not action buttons with the same category specified in the program are displayed on top of each other. | This field is a boolean. |
| effectDispDist | s16 | 0x4a | Range effect viewing distance, -1 means no range effect. | |
| execButtonHoldSec | f32 | 0x4c | When the judgment is active, if the press key is pressed for the stated number of seconds, it is considered to have been pressed. If it is 0, it is not judged to be pressed and held. | |
| iconID | s32 | 0x50 | The icon to display for the action in the world. | This field uses the following enum: ACTION_BUTTON_ICON_ID |
| pointRadius | f32 | 0x54 | Radius (point display range is cylindrical). -1 refers to the number of actionable ranges. | |
| pointHeight | f32 | 0x58 | Height (point display range is cylindrical). -1 refers to the number of the actionable range | |
| pointBaseHeightOffset | f32 | 0x5c | How much to raise or lower the Y coordinate of the bottom. | |
| iconOffsetX | f32 | 0x60 | The offset to apply to the icon in the world along the x-axis. Positive is right, negative is left. | |
| iconOffsetY | f32 | 0x64 | The offset to apply to the icon in the world along the y-axis. Positive is above, negative is below. | |
| iconOffsetZ | f32 | 0x68 | The offset to apply to the icon in the world along the z-axis. Positive is forward, negative is backward. | |
| doneFlag | s32 | 0x6c | The event flag to apply upon execution. -1 means no flag is set. |
| Option | Description | Notes |
|---|---|---|
0 | Cylinder | |
1 | Prism | |
2 | Capsule |
| Option | Description | Notes |
|---|---|---|
0 | Category 0 | |
1 | Category 1 | |
2 | Category 2 | |
3 | Category 3 | |
4 | Category 4 | |
5 | Category 5 | |
6 | Category 6 | |
7 | Category 7 | |
8 | Category 8 | |
9 | Category 9 | |
10 | Category 10 | |
11 | Category 11 | |
12 | Category 12 | |
14 | Category 14 |
| Option | Description | Notes |
|---|---|---|
0 | Point | |
1 | Line |
| Option | Description | Notes |
|---|---|---|
0 | Action Button |
| Option | Description | Notes |
|---|---|---|
0 | No | |
1 | Yes |
| Option | Description | Notes |
|---|---|---|
1 | Default | |
2 | Hacking Level 1 | |
3 | Supply | |
4 | Container | |
5 | Hacking Level 2 | |
6 | Hacking Level 3 |