> For the complete documentation index, see [llms.txt](https://xerickerspigot.gitbook.io/arenalegends/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://xerickerspigot.gitbook.io/arenalegends/integrations/placeholders.md).

# Placeholders

ArenaLegends text can use its own `{PLACEHOLDER}` values. When PlaceholderAPI is installed, the same values are also available as `%al_...%`.

## Text placeholders

Plugin files use this form:

```
{PLACEHOLDER}
```

A placeholder that has no data is left as-is on the page, so a missing value is easy to spot.

## PlaceholderAPI

The expansion identifier is:

```
al
```

```
%al_<params>%
```

The `stat`, `rank`, and `game` prefixes are lowercase. Statistic, mode, and rank property names are case-insensitive.

Any text placeholder from this page also works as `%al_<placeholder>%`, for example `%al_pass_current_tier%`. The expansion returns nothing without a player.

## Statistics

```
%al_stat_<STATISTIC>%
%al_stat_<MODE>_<STATISTIC>%
```

Modes: `SOLO`, `TEAMS`.

```
%al_stat_KILLS%
%al_stat_SOLO_KILLS%
```

`<STATISTIC>` is any statistic name, for example `DAMAGE_DEALT`, `WINS`, `LOSES`, `GEMS`, or `RATING`.

Without a mode, values of every mode are added together. `GEMS` is stored globally and ignores the mode.

## Ranking

```
%al_rank_<MODE>_<property>%
```

```
%al_rank_SOLO_name%
%al_rank_TEAMS_symbol%
```

Properties: `name`, `tier`, `color`, `symbol`.

Text equivalents:

```
{STATISTIC_RANK_NAME}
{STATISTIC_RANK_TIER}
{STATISTIC_RANK_COLOR}
{STATISTIC_RANK_SYMBOL}
```

They use the mode of the current game, or Solo outside a game. Add a mode before `RANK` for a fixed mode:

```
{STATISTIC_SOLO_RANK_NAME}
{STATISTIC_TEAMS_RANK_TIER}
```

The ladder is configured in [Ranking](/arenalegends/gameplay/ranking.md).

## Game data

```
%al_game_<game-id>_<players>%
%al_game_<game-id>_<mode>%
%al_game_<game-id>_<state>%
%al_game_<game-id>_setting_<SETTING>%
```

```
%al_game_ranked_solo_players%
%al_game_ranked_solo_setting_TEAM_SIZE%
```

Setting names are listed on [Game Settings](/arenalegends/setup/game-settings.md).

## Common text placeholders

| Placeholder                      | Available when                                           |
| -------------------------------- | -------------------------------------------------------- |
| `{PLAYER}`                       | The context contains a player or player data.            |
| `{UUID}`                         | The context contains a player, UUID, or player data.     |
| `{GOLD_BALANCE}`                 | The context contains a player. It is `0` outside a game. |
| `{ANVIL_GOLD_COST}`              | The context contains a player.                           |
| `{MYTHIC_GOLD_COST}`             | The context contains a player.                           |
| `{GAME_STATE}`                   | The context contains a game.                             |
| `{ROUND}`                        | The context contains a game.                             |
| `{CURRENT_PLAYERS}`              | The context contains a game.                             |
| `{PLAYERS_TO_START}`             | The context contains a game.                             |
| `{MAX_PLAYERS}`                  | The context contains a game.                             |
| `{MAX_TEAMS}`                    | The context contains a game.                             |
| `{TIME_UNTIL_START}`             | The context contains a game.                             |
| `{TIME_ELAPSED}`                 | The context contains a game.                             |
| `{TIME_<GAME_TIME>}`             | The context contains a game.                             |
| `{HEALTH_PENALTY}`               | The context contains a game.                             |
| `{TEAM_ALLY_PLACEHOLDER}`        | The context contains a game and team data.               |
| `{STATISTIC_<STATISTIC>}`        | The context contains player data.                        |
| `{STATISTIC_<MODE>_<STATISTIC>}` | The context contains player data.                        |
| `{GAME_STATISTIC_<STATISTIC>}`   | The context contains game data.                          |
| `{TIMESTAMP_<TIMESTAMP>}`        | The context contains player data.                        |
| `{TIMESTAMP_<MODE>_<TIMESTAMP>}` | The context contains player data.                        |

`GAME_TIME` is one of `ELAPSED`, `UNTIL_START`, `GAME_END`, `PREP_END`, `FIGHT_CAGE_UNLOCK`, `FIGHT_RING_START`, `FIGHT_RING_DECREASE`.

## Menu and item placeholders

These resolve only while a menu item supplies the matching data.

| Placeholder                                                                                                    | Context                                                               |
| -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `{ITEM_GOLD_COST}`                                                                                             | Shop items; price for the viewing player.                             |
| `{ENCHANT_LEVEL}`, `{MAX_ENCHANT_LEVEL}`                                                                       | Enchantment entries. `MAX` appears only when a purchase limit exists. |
| `{ANVIL_NAME}`, `{ANVIL_SYMBOL}`, `{ANVIL_COLOR}`                                                              | Anvil stat entries.                                                   |
| `{AUGMENT_NAME}`, `{AUGMENT_LEVEL}`, `{AUGMENT_UPGRADE}`                                                       | Augment entries.                                                      |
| `{UPGRADE_CURRENT_LEVEL}`, `{UPGRADE_MAX_LEVEL}`, `{UPGRADE_TOTAL_MAX_LEVEL}`, `{UPGRADE_PERCENTAGE}`          | Upgrades.                                                             |
| `{UPGRADE_CURRENT_BONUS}`, `{UPGRADE_NEXT_BONUS}`, `{UPGRADE_GEM_COST}`                                        | Upgrades.                                                             |
| `{UPGRADE_PRESTIGE_GEM_COST}`, `{UPGRADE_PRESTIGE_MAX_LEVEL}`, `{UPGRADE_PRESTIGE_PER_LEVEL}`                  | Prestige upgrades.                                                    |
| `{FINISHER_ID}`, `{FINISHER_GEM_COST}`                                                                         | Finishers.                                                            |
| `{KILL_COUNTER_GEM_COST}`                                                                                      | Kill counters.                                                        |
| `{DUMMY_SKIN_GEM_COST}`                                                                                        | Dummy skins.                                                          |
| `{SKIN_GEM_COST}`                                                                                              | Item skins.                                                           |
| `{KILL_MESSAGE_NAME}`, `{KILL_MESSAGE_GEM_COST}`, `{KILL_MESSAGE_MELEE}`, `{KILL_MESSAGE_RANGED}`              | Kill messages.                                                        |
| `{VICTIM}`, `{ATTACKER}`                                                                                       | Kill message previews.                                                |
| `{PRESENCE_MESSAGE_NAME}`, `{PRESENCE_MESSAGE_GEM_COST}`, `{PRESENCE_MESSAGE_JOIN}`, `{PRESENCE_MESSAGE_QUIT}` | Presence messages.                                                    |
| `{PLAYERS_IN_TEAM}`, `{MAX_IN_TEAM}`                                                                           | Team selector entries.                                                |

## Battle Pass

```
{PASS_CURRENT_TIER}
{PASS_TOTAL_XP}
{PASS_REQ_XP}
{PASS_XP_TO_NEXT}
{PASS_CLAIMED_REWARDS}
{PASS_TOTAL_REWARDS}
{PASS_PERCENTAGE}
{PASS_TIME_LEFT}
{PASS_TIME_UNTIL_AVAILABLE}
```

They resolve while a season is active and the player has progress in it. `{PASS_TIME_UNTIL_AVAILABLE}` is meant for the time before the season starts.

## Collectible progress

```
{<CATEGORY>_UNLOCKED}
{<CATEGORY>_UNLOCKABLE}
{<CATEGORY>_UNLOCK_PERCENTAGE}
{<CATEGORY>_PROGRESS}
```

Categories:

```
ITEM_SKINS
DUMMY_SKINS
FINISHERS
KILL_COUNTERS
KILL_MESSAGES
PRESENCE_MESSAGES
UPGRADES
PRESTIGE_UPGRADES
```

`{<CATEGORY>_PROGRESS}` renders the progress bar configured under `collectible.progress` in `/language.yml`.
