StateCnt * 2da
There is one StateCnt_* 2da for each type of placeable that can be in multiple states such as, for example, a container which can be open, closed and unlocked, closed and locked, and destroyed.
The StateCnt_* 2da files are not listed in the M2DA_base 2da and have not been assigned a TABLE_* constant.
Structure
Each StateCnt_* 2da has the following columns in common:
| Column | Type | Description |
|---|---|---|
| ID | int | A number that uniquely identifies the entry (unless creating an M2DA override). ID numbers are listed from smallest to highest within a given file but do not need to be consecutive. |
| Label | string | The entries on this page pertain to entries in the AMIN_placeables 2da |
| Action0 | int | Id of an entry in placeable_interactions 2da representing the primary action |
| Success0 | int | Id of an entry in the current StateCnt_<type> 2da representing the new state |
| Success0A | int | Id of an alternate entry in the current StateCnt_<type> 2da representing the new state |
| Action1 | int | Id of an entry in placeable_interactions 2da representing the secondary action |
| Success1 | int | Id of an entry in the current StateCnt_<type> 2da representing the new state |
| Success1A | int | Id of an alternate entry in the current StateCnt_<type> 2da representing the new state |
| BlockVis | int | Set this to non-zero if you want this state to block visibility |
| STRREF | int | Unknown (0 in all default StateCnt_<type> 2da) |
There are two Success columns for each Action because the new state may depend on the relative position of the Player. For example, doors can open forwards or backwards and a ballista can turn left or right.
In addition, each state has its own row and its own column. So, for example, a container would have rows and columns for its four possible states, like so:
| Closed_Unlocked | Closed_Locked | Open | Dead | |
|---|---|---|---|---|
| Closed_Unlocked | 1025 | 1025 | 1027 | 1029 |
| Closed_Locked | 1025 | 1025 | 1027 | 1029 |
| Open | 1028 | 1028 | 1024 | 1029 |
| Dead | **** | **** | **** | 1026 |
The numbers in the grid correspond to the ID of entries in the AMIN_placeables 2da representing the animation used to change from the old state to the new state. So, for example, a door going from Closed_Unlocked to Open would use the Door Opening animation.
The following placeable types each have their own 2da, each with the following state lists:
| Placeable type | States | Notes |
|---|---|---|
| Bridge | Active, Inactive, Destroyed | |
| AreaTransition | Unlocked, Locked | |
| Furniture | Idle, Dead | |
| Informational | Active | |
| AOE | Idle, Triggered, Dead | |
| FlipCover | Idle, Cover, Dead | Flip cover has been cut from the game, this is a leftover from when it was implemented |
| Trap_Trigger | Inactive_Enabled, Inactive_Disabled, Active | |
| NonSelectable_Trap | Idle1, Idle2 | |
| Selectable_Trap | Idle, Active, Dead | |
| Puzzle | Active, Dead | |
| Destroy | Active, Dead | |
| Cage | Closed_Unlocked, Closed_Locked, Open, Dead | |
| Bodybag | Unlocked | |
| Container_Static | Unlocked, Locked, Dead | |
| Container | Closed_Unlocked, Closed_Locked, Open, Dead | |
| BBase | Idle, IdleLeft, IdleRight, Dead | |
| Trigger | Active, Inactive, Dead | |
| Door | Closed_Unlocked, Closed_Locked, Open, Dead, Open_1, Dead_2 |