> ## Documentation Index
> Fetch the complete documentation index at: https://jppmc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# JPPrison Permissions: Nodes, Defaults, and Per-Pet Gates

> Complete list of JPPrison permission nodes, defaults, what each covers, and how to grant per-pet and armor gates in LuckPerms or GroupManager.

JPPrison declares three permission nodes in `plugin.yml` and reads additional per-pet and per-armor gates from data files. This page enumerates every node, its default, and exactly what it covers.

> [!NOTE]
>
> Fine-grained control (turning a whole feature off for everyone, admins included) is done through `features:` in `config.yml`, not permissions. There are no per-economy, per-enchant, or per-command nodes.

## Declared Nodes (plugin.yml)

These three nodes appear in `/permissions` and in any permission manager (LuckPerms, GroupManager, PermissionsEx).

### `jpprison.user`

* **Default:** `true`
* **Covers:** every player command and `/<economy>` (tokens, gems, ...).

> **Commands covered**
>
> `/prison`, `/autosell`, `/sell`, `/sellall`, `/blockstop`, `/xptop`, `/pets`, `/armor`, `/autominer`, `/minion`, `/earn`, `/<eco>` (balance, `pay`, `top`), and every tab-complete.

### `jpprison.admin`

* **Default:** `op`
* **Covers:** every admin command.

> **Commands covered**
>
> `/jpprison` (entire tree), `/xpboost`, `/guide` (alias `/features`), `/pets give`, `/pets luckyblock give|check`, `/<eco> give|remove`, and the economy boost syntax `/<eco> <player|global> <mult> <time>`.

### `jpprison.pickaxe.noconfirm`

* **Default:** `false` (not even ops have it)
* **Effect:** removes the double-Q drop confirmation on the pickaxe (`PickaxeGuard`).

Without it, the first Q is cancelled and a second Q within `pickaxe.drop-confirm-seconds` drops the pickaxe.

## Data-File Gates (not in plugin.yml)

These are read by their own module from the corresponding YAML. They still work in any permission manager, but you have to type them by hand.

### `jpprison.pet.armor`

Defined at `menus/pet-armor.yml` under `permission:`. Gate to open the pet armor customization (from the pet submenu or its own menu). Leave blank in the YAML for no gate.

### `jpprison.pet.<id>`

Defined per pet at `pets.yml` → `pets.<id>.permission`. Gate to equip that pet from the picker/submenu. Every bundled pet requires its node except `boomber` (the starter).

```text Bundled pet permissions theme={null}
jpprison.pet.rotty
jpprison.pet.bonez
jpprison.pet.voidwalker
jpprison.pet.ember
jpprison.pet.webby
jpprison.pet.specter
jpprison.pet.hexa
jpprison.pet.grumble
jpprison.pet.venom
jpprison.pet.oinker
jpprison.pet.purrito
jpprison.pet.boing
```

> [!TIP]
>
> Unlock items (given with `/pets give`, right-clicked in hand) **bypass** the permission gate. Once a player uses one, the pet is unlocked forever. Deleting or blanking the `permission:` field on a pet removes its gate.

Any new pet you add uses whatever permission you set in its `.yml`, or none if the field is empty.

## Summary Table

| Node | Default | Type | Purpose |
| - | - | - | - |
| `jpprison.user` | `true` | Command | All player commands and `/<economy>` |
| `jpprison.admin` | `op` | Command | All admin commands and item delivery |
| `jpprison.pickaxe.noconfirm` | `false` | Behavior | Skip pickaxe drop confirmation |
| `jpprison.pet.armor` | none | Menu gate | Open pet armor customization |
| `jpprison.pet.<id>` | none | Equip gate | Equip a specific pet |

## What Does NOT Exist

There are **no** permission nodes for individual economies, enchantments, or single commands.

* To disable a whole feature: flip its flag in `features:` inside `config.yml` and run `/jpprison reload`. The corresponding commands are rejected with `features.disabled`, even for `jpprison.admin`.
* Your permission manager panel only lists the three declared nodes. The data-file gates (pets, armor) are granted the same way but must be typed manually.

## Common Errors

> **No permission on an admin command**
>
> You are missing `jpprison.admin`. If the specific command relies on a feature turned off in `config.yml`, you will get `features.disabled` instead.

> **Cannot drop the pickaxe without the double Q**
>
> You need `jpprison.pickaxe.noconfirm` (default `false`, ops do not have it either).

> **/jpprison asks for jpprison.admin even for help**
>
> That is correct. Regular players use `/prison help`, `/prison balance`, and `/prison prestige` from [Player Commands](/commands/player-commands.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.