> For the complete documentation index, see [llms.txt](https://edseries-plugins.gitbook.io/p/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://edseries-plugins.gitbook.io/p/pinnaprison/customization/guis.md).

# GUIs

Every menu in PinnaPrison is a file in `guis/<name>.yml`. Features point at a GUI by its filename (e.g. the pickaxe's `gui: 'token-enchants'`). You can freely re-layout, re-colour and re-word any menu, and even build your own menus that open via [actions](/p/pinnaprison/customization/item-format.md#actions).

## Menu structure

```yaml
title: '&8Your Mine'
rows: 3
open-sound: 'ENTITY_BAT_TAKEOFF'   # '' disables it
main-menu: ''                      # GUI opened when this one closes; '' = none
item-click-cooldown: 1             # seconds before the same item can be clicked again

items:
  filler:
    material: BLACK_STAINED_GLASS_PANE
    slot: '0-26'                   # a single slot (4) or a range (0-26)
    name: '&r'
  header:
    material: 'head-{player}'      # the player's own head
    slot: 4
    name: '&b&l{player}'
    lore:
      - '&7Manage your mine below.'
```

| Key                   | Description                                                   |
| --------------------- | ------------------------------------------------------------- |
| `title`               | The inventory title (colours + placeholders supported).       |
| `rows`                | Number of rows (1–6).                                         |
| `open-sound`          | Sound played when the menu opens (`''` disables).             |
| `main-menu`           | A GUI opened when this one is closed (for "back" behaviour).  |
| `item-click-cooldown` | Anti-spam: seconds before the same item can be clicked again. |
| `items`               | The items in the menu (see below).                            |

## Items

Each entry under `items` is one item:

| Key           | Description                                                                                                                       |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| `material`    | The item material. Also supports `head-<name>` (a player head), `texture-<base64>` (a custom head) and `{placeholder}` materials. |
| `slot`        | A single slot (`4`) or a range (`0-26`).                                                                                          |
| `name`        | Display name.                                                                                                                     |
| `lore`        | Lore lines.                                                                                                                       |
| `glow`        | `true` to add an enchant glow.                                                                                                    |
| `amount`      | Stack size.                                                                                                                       |
| `custom-item` | Makes the item interactive (see below).                                                                                           |

See [Cost & Item Format](/p/pinnaprison/customization/item-format.md) for the full item options.

## Interactive items (`custom-item`)

Add a `custom-item` block with a `type` to make an item **do** something. The type decides the behaviour and which extra keys it reads. Example:

```yaml
members:
  custom-item:
    type: 'open-gui'
    gui: 'mine-members'
  material: WRITABLE_BOOK
  slot: 10
  name: '&b&lMine Members'
```

### Available types

| Type                                              | What it does                                           |
| ------------------------------------------------- | ------------------------------------------------------ |
| `open-gui`                                        | Opens another GUI (`gui: <name>`).                     |
| `enchant`                                         | Buy/upgrade an enchant in the enchant menus.           |
| `upgrade-enchant`                                 | Upgrade button for a specific enchant.                 |
| `prestige-enchant`                                | Prestige a specific enchant.                           |
| `toggle-enchant`                                  | Toggle an enchant on/off for the player.               |
| `message-toggle-enchant`                          | Toggle that enchant's proc message.                    |
| `setting-toggle`                                  | A `/settings` toggle (e.g. mute all enchant messages). |
| `attribute`                                       | Purchase a pickaxe attribute.                          |
| `rebirth`                                         | Perform a rebirth.                                     |
| `rebirth-upgrade`                                 | Buy a level of a rebirth skill-tree upgrade.           |
| `crystal-slot`                                    | A crystal slot in the crystals menu.                   |
| `backpack-upgrade`                                | Upgrade the backpack tier.                             |
| `backpack-autosell`                               | Toggle autosell.                                       |
| `backpack-contents`                               | A page of backpack contents.                           |
| `sell-backpack`                                   | Sell the whole backpack.                               |
| `ability`                                         | Equip/unequip an ability.                              |
| `ability-autocast`                                | Toggle ability auto-cast.                              |
| `autominer-slot`                                  | A miner slot (summon/recall).                          |
| `autominer-enchant` / `upgrade-autominer-enchant` | View / upgrade a miner enchant.                        |
| `autominer-battery`                               | The battery display.                                   |
| `autominer-stats`                                 | The lifetime stats display.                            |
| `mine-lock`                                       | Toggle the mine open/locked state.                     |
| `mine-tax`                                        | Set the mine tax / collect tax.                        |
| `mine-home`                                       | Teleport to your own mine.                             |
| `mine-members`                                    | The members manager.                                   |
| `public-mines`                                    | The public-mines browser.                              |

Each interactive type exposes its own extra keys (sounds, status text, formats) which you can see in the default GUI files — for example `mine-lock` has `material-open`, `material-locked`, `status-open`, `status-locked`, `action-open` and `action-locked`.

## Default menus

| File                                              | Opened by                 |
| ------------------------------------------------- | ------------------------- |
| `mine.yml`                                        | `/mine`                   |
| `mine-members.yml`                                | the members button        |
| `public-mines.yml`                                | `/mine public`            |
| `token-enchants.yml` / `gem-enchants.yml`         | the pickaxe (right-click) |
| `upgrade-enchant.yml` / `gem-upgrade-enchant.yml` | clicking an enchant       |
| `crystals.yml`                                    | `/crystals`               |
| `backpack.yml` / `backpack-contents.yml`          | the backpack item         |
| `boosters.yml`                                    | `/boosters`               |
| `abilities.yml`                                   | `/abilities`              |
| `attributes.yml`                                  | `/attributes`             |
| `autominers.yml` / `autominer-upgrade.yml`        | `/autominers`             |
| `rebirth.yml` / `rebirth-upgrades.yml`            | `/rebirth`                |
| `settings.yml`                                    | `/settings`               |

Admins can open any GUI for a player with `/pinna opengui <gui>`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://edseries-plugins.gitbook.io/p/pinnaprison/customization/guis.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
