# AdvancedMOTD

### [Download Plugin](https://builtbybit.com/resources/advancedmotd.96770/)

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td></td><td data-object-fit="contain"><a href="/files/KUMinLwPMeNZaIdC7wXe">/files/KUMinLwPMeNZaIdC7wXe</a></td></tr><tr><td></td><td data-object-fit="contain"><a href="/files/BTFh7PzSNnBspMkHU4Ol">/files/BTFh7PzSNnBspMkHU4Ol</a></td></tr></tbody></table>

## <mark style="color:$primary;">**Plugin description**</mark>

* AdvancedMOTD is a cross-platform MOTD and server-icon plugin for Paper, Bungee/Waterfall, and Velocity.

  It lets you rotate multiple MOTD layouts, switch to seasonal MOTDs by date range, use MiniMessage / legacy / hex formatting, render built-in ping placeholders, and optionally randomize the server icon from a configurable icons folder.
* Shared core for:
  * Paper
  * Bungee / Waterfall
  * Velocity
* Multiple MOTD entries with random or fixed selection
* Seasonal MOTD overrides with inclusive date ranges
* Seasonal ranges can cross the year boundary
* Built-in placeholders:
  * `%online%`
  * `%max%`
  * `%server_name%`
  * `%time%`
  * `%date%`
  * `%tps%`
* Text formatting support for:
  * MiniMessage tags
  * Legacy `&` color and format codes
  * Hex colors via `&#RRGGBB` and `#RRGGBB`
* Optional random server-icon rotation from `plugins/AdvancedMOTD/icons/`
* Configurable timezone and Java date/time formats
* Live config reload through `/motd reload`
* Paper TPS support for `%tps%`

## <mark style="color:$primary;">Compatibility</mark>

* Minecraft: `1.19.4 - 1.21.x`
* API: `Paper / Bungee / Waterfall / Velocity`

## <mark style="color:$primary;">Commands</mark>

* `/pixelmessage sb`
  * Permission: `pixelmessage.scoreboard.toggle`
  * Toggles your personal sidebar scoreboard on or off.

## <mark style="color:$primary;">Admin Commands</mark>

* `/motd reload`
  * Permission: `advancedmotd.reload`
  * Reloads `config.yml` and refreshes MOTD, placeholders, and icon settings.
* `/advancedmotd reload`
  * Permission: `advancedmotd.reload`
  * Bungee / Waterfall alias for `/motd reload`.

## <mark style="color:$primary;">Permissions</mark>

* `advancedmotd.reload`

## <mark style="color:$primary;">Placeholders</mark>

* `%online%`
* `%max%`
* `%server_name%`
* `%time%`
* `%date%`
* `%tps%`

## <mark style="color:$primary;">Text Formatting</mark>

AdvancedMOTD supports these formatting styles inside MOTD and message text:

* MiniMessage tags
  * Examples: `<gradient:#a:#b>`, `<bold>`, `<italic>`, `<underlined>`, `<strikethrough>`, `<color:#RRGGBB>`
* Legacy formatting
  * Examples: `&a`, `&l`, `&n`, `&o`, `&m`, `&k`, `&r`
* Hex shortcuts
  * Examples: `&#RRGGBB`, `#RRGGBB`

## <mark style="color:$primary;">Config Files</mark>

{% tabs %}
{% tab title="config.yml" %}

```yml
motd:
  enabled: true

  # If true, the plugin picks a random MOTD entry on each ping.
  # If false, it always uses the first entry from the selected list.
  random: true

  # =========================
  # PLACEHOLDERS (SUPPORTED)
  # =========================
  # %online%       - Current online players
  # %max%          - Max player slots
  # %server_name%  - Server name from "server.name" in this config
  # %time%         - Current time (from placeholders.time-format + placeholders.timezone)
  # %date%         - Current date (from placeholders.date-format + placeholders.timezone)
  # %tps%          - Current TPS (Paper/Purpur only). On Velocity/Bungee it shows "N/A".
  #
  # =========================
  # TEXT FORMATTING (SUPPORTED)
  # =========================
  # - MiniMessage tags: <gradient:#a:#b>...</gradient>, <bold>, <italic>, <underlined>, <strikethrough>, <color:#RRGGBB>, etc.
  # - Legacy codes: &a &l &n &o &m &k &r (also §)
  # - Hex shortcuts: &#RRGGBB or #RRGGBB (outside of <...> tags)
  #
  # Note: Minecraft client typically displays only 2 lines in the server list.
  list:
    - - "<gradient:#f5ed02:#ad090b><bold>%server_name%</bold></gradient> <gray>-</gray> <white>Towny</white>"
      - "<gray>Online:</gray> <green>%online%</green><dark_gray>/</dark_gray><green>%max%</green> <dark_gray>|</dark_gray> <yellow>%date%</yellow> <gray>%time%</gray>"
    - - "&b&lAdvancedMOTD &7- &#00E5FFHex supported"
      - "&7Welcome! &fHave fun :) &8| &7TPS: &f%tps%"
    - - "     <gradient:#ffee00:#ff9500>■■■■■■■■■■■■</gradient><bold> #00ff1ePixel#00bbffForge </bold><gradient:#ff9500:#ffee00>■■■■■■■■■■■■</gradient>"
      - "               <gradient:#00ffa2:#00c8ff>Thank you for downloading!</gradient>"

  seasonal:
    # Completely disable/enable seasonal MOTDs
    enabled: true

    # Date format: "dd.MM" (no year). Ranges are inclusive.
    # You can also create ranges that cross the year (e.g. 24.12 -> 02.01).
    #
    # If any seasonal entry matches today, the plugin uses ONLY seasonal entries (random if motd.random=true).
    # If none match, the plugin falls back to motd.list.
    entries:
      - name: "Christmas"
        from: "24.12"
        to: "26.12"
        lines:
          - "<gradient:#ff0000:#00ff00><bold>Merry Christmas!</bold></gradient> <gray>-</gray> <white>%server_name%</white>"
          - "<gray>Online:</gray> <green>%online%</green><dark_gray>/</dark_gray><green>%max%</green> <dark_gray>|</dark_gray> <gold>Enjoy the holidays!</gold>"

      - name: "NewYear"
        from: "31.12"
        to: "01.01"
        lines:
          - "<gradient:#00e5ff:#ff00ff><bold>Happy New Year!</bold></gradient> <gray>-</gray> <white>%server_name%</white>"
          - "<gray>%date%</gray> <gray>%time%</gray> <dark_gray>|</dark_gray> <yellow>New season, new adventures!</yellow>"

      - name: "Summer"
        from: "01.07"
        to: "31.08"
        lines:
          - "<gradient:#f5ed02:#ff7a00><bold>Summer Event!</bold></gradient> <gray>-</gray> <white>%server_name%</white>"
          - "<yellow>VACATION MODE</yellow> <dark_gray>|</dark_gray> <gray>TPS:</gray> <white>%tps%</white>"

server:
  name: "YourServer"

placeholders:
  # Server timezone (IANA). Example: "Europe/Warsaw"
  # If empty or invalid, system default timezone will be used.
  timezone: "Europe/Warsaw"

  # Java date/time patterns
  time-format: "HH:mm"
  date-format: "dd.MM"

  # TPS formatting (Paper only; Velocity/Bungee will show N/A)
  tps-decimals: 1

icons:
  enabled: false
  random: true

  # Folder: plugins/AdvancedMOTD/icons/
  # Recommended: 64x64 PNG files.
  files:
    - "icon1.png"
    - "icon2.png"

messages:
  prefix: "<gray>[</gray><aqua>AdvancedMOTD</aqua><gray>] </gray>"
  reloaded: "<green>Configuration reloaded.</green>"
  no-permission: "<red>You don't have permission to do that.</red>"
  usage: "<yellow>Usage:</yellow> <white>/motd reload</white>"
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: 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://pixelforge.gitbook.io/pixelforge/documentation/plugins/advancedmotd.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.
