> **Can't find what you're looking for?** Use `search_docs` on the docs MCP server at `https://aetherskywarswiki.netlify.app/api/mcp` to find what you need.

# Scoreboard and tab

What players see on screen during a match, and how to change it.

<img src="/scoreboard-mock.svg" alt="The lobby scoreboard with its title, stats and footer lines" />

## The scoreboard

Players get a sidebar scoreboard showing the arena state, the players left, the time
remaining, and their own stats. The exact lines come from the language file, so you can
rewrite them without touching the plugin.

The scoreboard is on during matches. To also show it to players standing in the lobby:

```yaml
Config:
  Scoreboard-In-Lobby: true
```

### The setup scoreboard

Admins building an arena get a different board, listing what is still outstanding. It shows the
world type and mode, the cage count against the number needed, how many island and middle chests
are tagged, and whether the spectator point and boundary are set.

It replaces the normal board while you are in an unregistered arena, and goes away once you save.
Its lines live under `Scoreboards.Setup` in the language file, alongside the others.

| Variable | What it becomes |
| --- | --- |
| `%worldtype%` | `DEFAULT` or `SCHEMATIC` |
| `%mode%` | `SOLO` or `TEAMS` |
| `%cages%` `%maxcages%` | Cages placed, and how many the arena needs |
| `%islandchests%` `%midchests%` | Tagged chest counts, per kind |
| `%cagestatus%` `%islandchestsstatus%` `%midchestsstatus%` | The `Done` or `Pending` word for that line |
| `%spectatorstatus%` `%boundarystatus%` | The same, for the two locations |

`Done` and `Pending` are two more keys under `Scoreboards.Setup`, so the wording and colour of
every status is in one place.

### The variables you can use

Every board is a list of lines in the language file, so what appears on it is yours to choose.

Anywhere:

| Variable | What it becomes |
| --- | --- |
| `%space%` | A blank line. Repeatable, unlike a plain empty string |
| `%player%` | The player's name |
| `%date%` | Date and time, in the format from `Config.Time.Formatting` |
| `%ping%` | The player's ping |

In a match:

| Variable | What it becomes |
| --- | --- |
| `%map%` `%displayname%` | Arena name, internal and as players see it |
| `%mode%` `%state%` | Solo or Teams, and what the arena is doing |
| `%players%` `%alive%` `%maxplayers%` | Players in the arena, still alive, and its size |
| `%spectators%` | Watching the match |
| `%kills%` | The player's kills this match |
| `%runtime%` `%time%` | Time played, formatted and in seconds |
| `%timeleft%` `%maxtime%` | Time to the cap, and the cap itself |
| `%nextevent%` | The next refill, TNT rain or border shrink |
| `%tier%` `%kit%` | The loot tier the match voted for, and the player's kit |
| `%world%` | The arena's world name |

Outside a match, the lobby board also takes `%coins%`, `%playing%`, and the lifetime statistics
`%kills%`, `%deaths%`, `%solowins%`, `%teamwins%`, `%loses%`, `%gamesplayed%`, each with a
`%ranked...%` counterpart.

### Placeholders from other plugins

The scoreboard understands the plugin's own variables out of the box. Turn this on to also run
PlaceholderAPI placeholders through it, so anything from another plugin works on a line:

```yaml
Config:
  PlaceholderAPI-In-Scoreboard: true
```

The same switch exists for the tab list as `PlaceholderAPI-In-Tab`.

:::note
This costs a little performance, because every line is parsed through PlaceholderAPI on each
refresh. Leave it off unless you actually put other plugins' placeholders in your scoreboard
lines.
:::

:::note
Nothing happens if PlaceholderAPI is not installed. The plugin checks before calling into it, so
turning this on without the plugin present is harmless rather than an error.
:::

## Tab list

The plugin can colour and group the tab list, so team mates appear together and in their team
colour.

```yaml
Config:
  Enable-Tab-Formatting: true
  PlaceholderAPI-In-Tab: false
```

Turn `Enable-Tab-Formatting` off if another plugin already owns your tab list. Two plugins
fighting over it produces flicker.

## Chat

Chat can be scoped to the arena, so players in a match only hear each other:

```yaml
Config:
  Enable-Chat-Per-Map: false
```

With this on, messages from players inside an arena stay inside that arena.

## Lobby items

Players standing in the lobby get a small hotbar: a profile head, a maps browser, and the
shop. Which slot each sits in, and what they look like, is configurable. See
[Items and slots](/configuration/items-and-slots).

To remove them entirely:

```yaml
Config:
  Disable-Lobby-Items: true
```

Two related lobby switches:

| Key | What it does |
| --- | --- |
| `Disable-Lobby-Void-Teleport` | Normally a player who falls out of the lobby world is teleported back. Set to `true` to stop that. |
| `Auto-Teleport-To-Lobby` | Whether players are sent to the lobby automatically when they leave a match. |

## Player info on right click

Right clicking another player shows their profile. Turn it off with:

```yaml
Config:
  Right-Click-Player-Info: false
```

## Player state on join and leave

When a player enters a match the plugin saves their inventory, health, hunger, and game mode,
then restores it afterwards. If another plugin already handles that and the two clash:

```yaml
Config:
  Disable-Player-Reset: true
```

:::danger
Only set this if something else is definitely restoring player state. With it on and nothing
else doing the job, players keep their match inventory when they leave.
:::

## Related pages

* [Items and slots](/configuration/items-and-slots)
* [Messages and languages](/configuration/messages-and-languages)
* [Placeholders](/reference/placeholders)
