> 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/edcosmetics/cosmetics/join-messages.md).

# Join & Leave Messages

```yaml
type: JOIN_MESSAGE       # QUIT_MESSAGE for leave messages
default-message: '&#E2E8F0{player} &#94A3B8joined the game'   # nothing equipped ('' = the normal Minecraft line)
first-join-message: '&8[&#F5CB7A✦&8] &#F3E2BCWelcome &#F5CB7A&l{player}&#F3E2BC to the server! &8• &#A8A29EPlayer &#F5CB7A#{number}'
placeholder:
  format: '&8[&a+&8] {value}'   # wraps every message of the category (and default-message)
  none-name: '&7Default'
cosmetics:
  hello:
    name: '&aHello'
    message: '&a{player} &7says hello!'   # {player} = the player's name
```

* The equipped message replaces the "joined / left the game" line for everyone, inside `format`.
* With nothing equipped, `default-message` is shown inside the format; `''` keeps the normal Minecraft line.
* A line another plugin hides (vanish) stays hidden.
* `first-join-message` (join categories only) replaces the line on a player's very first join. It is a whole line, not wrapped in the format: `{player}` is the name and `{number}` how many players have ever joined (counted from the plugin's player data and the world's player files). `''` turns it off.
* Colours, gradients, rainbows and `fx-` effects work in messages. In menus `{preview}` shows the message with the viewer's name.

Only one join and one leave message are active at a time: with several categories of the same type, the first equipped one (in `order`) wins. The defaults ship 29 join and 29 leave messages.

`%edcosmetics_joinmessage%` gives the player's message inside the format (`default` with nothing equipped).
