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

# Install LiricTNT with Advanced Slime Paper Setup

> Learn how to install LiricTNT's required dependencies, drop the JAR, and complete first-time setup of the lobby, waiting spawn, and arena templates.

LiricTNT depends on **Advanced Slime Paper** for world instancing, which means your server JAR itself must be an ASP build — you cannot simply add ASP as a plugin on top of standard Paper. Read through the dependencies section below before downloading anything, then follow the steps in order.

## Dependencies

| Dependency               | Type         | Purpose                                                           |
| ------------------------ | ------------ | ----------------------------------------------------------------- |
| AdvancedSlimePaper (ASP) | **Required** | Server JAR that powers Slime world cloning and instancing         |
| PacketEvents             | **Required** | Optimized network packet handling for hit detection               |
| LuckPerms                | **Required** | Tab list sorting by rank weight and chat format prefixes/suffixes |
| PlaceholderAPI           | Optional     | Enables dynamic placeholder values in the scoreboard and tab list |
| CraftEngine              | Optional     | Custom music playback during Sudden Death phases                  |

<Warning>
  Standard Paper or Purpur JARs are **not** compatible. Your server must run the AdvancedSlimePaper JAR, which is itself a Folia-based build. Check the [ASP GitHub](https://github.com/InfernalSuite/AdvancedSlimePaper) for the correct build for your Minecraft version.
</Warning>

## Setup Steps

<Steps>
  <Step title="Install Advanced Slime Paper">
    Download the AdvancedSlimePaper server JAR that matches your target Minecraft version and use it as your `server.jar`. Start the server once to generate the default configuration files, then shut it down.

    ```bash theme={null}
    java -Xms2G -Xmx4G -jar AdvancedSlimePaper-1.21.jar --nogui
    ```
  </Step>

  <Step title="Install PacketEvents">
    Download the latest `PacketEvents-spigot-x.x.x.jar` from the official SpigotMC or Modrinth page and drop it into your `plugins/` folder. PacketEvents is required for the optimized hit-detection system used in TNT Tag.
  </Step>

  <Step title="Install LuckPerms">
    Download `LuckPerms-Bukkit-x.x.x.jar` and place it in `plugins/`. LuckPerms powers the tab list rank sorting and the per-rank chat format system. Without it, the plugin will fail to load.
  </Step>

  <Step title="Install optional plugins (recommended)">
    For the best player experience, also install the following:

    * **PlaceholderAPI** — enables `%players%`, `%alive%`, and other live placeholders in the scoreboard and tab list
    * **CraftEngine** — enables the custom music track that plays during Sudden Death in TNT Tag

    Both are optional but strongly recommended for event servers.
  </Step>

  <Step title="Drop LiricTNT.jar into plugins/">
    Place `LiricTNT.jar` into the `plugins/` directory.

    ```
    server/
    └── plugins/
        ├── LiricTNT.jar
        ├── PacketEvents-spigot-x.x.x.jar
        ├── LuckPerms-Bukkit-x.x.x.jar
        ├── PlaceholderAPI-x.x.x.jar    ← optional
        └── CraftEngine-x.x.x.jar       ← optional
    ```
  </Step>

  <Step title="Start or restart the server">
    Start the server. LiricTNT generates its default configuration files on first launch:

    * `plugins/LiricTNT/config.yml` — scoreboard, tab, bossbar settings
    * `plugins/LiricTNT/arena.yml` — lobby, waiting spawn, and arena templates
    * `plugins/LiricTNT/chat-format.yml` — per-rank chat format
  </Step>

  <Step title="Set the main lobby">
    Stand at the location you want players to return to after a match ends, then run:

    ```bash theme={null}
    /tnt setup lobby
    ```

    This saves your current position as the `mainLobby` in `arena.yml`.
  </Step>

  <Step title="Set the waiting spawn">
    Move to the waiting area where players congregate before a game starts, then run:

    ```bash theme={null}
    /tnt setup waiting
    ```

    This saves your position as `waitingSpawn` in `arena.yml`.
  </Step>

  <Step title="Create arena templates">
    For each map you want to use, register it as an arena template. The `name` must match the name of the `.slime` world file on disk (without the `.slime` extension), and `type` must be `tag`, `run`, or `spleef`.

    ```bash theme={null}
    /tnt arena create MyTagMap tag
    /tnt arena addspawn MyTagMap
    ```

    Run `/tnt arena addspawn <name>` once for each player spawn point on the map. See the [Commands reference](/tnt/admin/commands) for the full list of arena management commands.
  </Step>
</Steps>

<Tip>
  After completing setup you can verify everything works by running `/tnt iniciar <templateName>`. LiricTNT clones the Slime world, moves all online players into the arena, and starts the game immediately.
</Tip>
