> For the complete documentation index, see [llms.txt](https://quantum-14.gitbook.io/quantum-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://quantum-14.gitbook.io/quantum-docs/free-product/quantumpunish/history-logs.md).

# History / Logs

QuantumPunish features a **Dual-Layer History System**, allowing staff to review player records via a sleek Graphical User Interface (GUI) or a fast, interactive Chat-based list.

#### 1. Paginated History GUI

**Command:** `/history gui <player>`

The GUI provides a visual overview of a player's past behavior. It is highly customizable via `history.yml`.

* **Dynamic Icons:** Each punishment type uses a specific material defined in the config (e.g., `RED_WOOL` for Bans, `ORANGE_WOOL` for Mutes).
* **Detailed Lore:** Hover over any item to see the Staff member, Reason, Date, and the **Initial Duration** (the original timeframe set by the moderator).
* **Center Stats (Info Item):** The bottom-center item displays the player's UUID, total punishment count, and current active warning points.
* **Smart Navigation:** Navigation arrows (`previous-page` & `next-page`) automatically appear if a player has more than 45 records.

#### 2. Interactive Chat History

**Command:** `/history <player> [page]`

Designed for speed, the chat-based history provides a "clickable" experience managed via `messages.yml`.

* **Hover Tooltips:** Hover your cursor over any punishment line to reveal detailed info (Type, Staff, Date, Duration, and Reason).
* **Smart Pagination:** Use clickable `[PREV]` and `[NEXT]` buttons at the bottom of the chat to flip through pages without re-typing commands.
* **Initial Duration Tracking:** Displays the original duration (e.g., `10m`, `1d`, `Permanent`) so admins can review past sentencing.

***

#### 🎨 Configuration (`history.yml`)

You can fully customize the GUI's appearance. Below are the key sections you can modify:

**Punishment Item Lore**

You can use the following placeholders in the `punishment-item` lore:

* `%type%`: Punishment type (BAN, MUTE, etc.)
* `%player%`: The target player name.
* `%staff%`: The moderator who issued the punishment.
* `%reason%`: The reason for the punishment.
* `%date%`: Timestamp of the event.
* `%duration%`: The original duration (e.g., `1h 30m`).

**Custom Materials**

Map specific Minecraft materials to punishment types to make the GUI intuitive:

```yaml
punishment-types:
  ban: RED_WOOL
  mute: ORANGE_WOOL
  kick: YELLOW_WOOL
  warn: LIGHT_BLUE_WOOL
  auto: PURPLE_WOOL
```
