> For the complete documentation index, see [llms.txt](https://acestudios.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://acestudios.gitbook.io/docs/inventory-and-items/compensation-stashes/commands-and-permissions.md).

# Commands & Permissions

Commands and staff permissions for ace\_compstashes.

## Commands

All command names can be changed in `Config.Settings`.

| Command       | Config option   | Permission  | Description                                 |
| ------------- | --------------- | ----------- | ------------------------------------------- |
| `/stashmenu`  | `adminmenu`     | Staff       | Opens the stash management menu.            |
| `/createcomp` | `CreateCompCmd` | Staff       | Creates a compensation stash.               |
| `/opencomp`   | `OpenCompCmd`   | Staff       | Opens compensation stashes.                 |
| `/openstash`  | `OpenStashCmd`  | Staff       | Opens any stash by name (global).           |
| `/emptystash` | `ClearStashCmd` | Staff       | Clears a stash.                             |
| `/claimcomp`  | `ClaimStashCmd` | All players | Claims the player's own compensation stash. |

{% hint style="info" %}
`Config.lua` puts `ClaimStashCmd` under **"For normal Players"**. The other commands are the staff commands controlled by the permissions below. The arguments each staff command takes aren't in the editable config, so `/stashmenu` is the easiest place to start.
{% endhint %}

## Permissions

Staff access can come from either of these sources:

{% tabs %}
{% tab title="ACE permission (recommended)" %}
Grant the `AceStashManage` ACE to a group in `server.cfg`:

```properties
add_ace group.admin AceStashManage allow
```

Then add staff to that group as usual:

```properties
add_principal identifier.license:xxxxxxxx group.admin
```

{% endtab %}

{% tab title="License list" %}
Add license identifiers to `Config.AdminLicense`:

```lua
AdminLicense = {
    ["license:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"] = true,
    ["license:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"] = true,
},
```

{% endtab %}
{% endtabs %}

## Typical workflow

1. A staff member opens `/stashmenu` or uses `/createcomp` to create a compensation stash for a player.
2. The staff member fills the stash with the compensation items.
3. If `RemindPlayersOnJoin = true`, the player is reminded on their next join.
4. The player runs `/claimcomp` to get their stash.
5. Every step is logged to the matching Discord webhook.
