English
PlaceholderAPI
Every %emakilevel_*% placeholder EmakiLevel registers is listed below -- player level placeholders, leaderboard placeholders, number formatting, and common usage. Copy and use them directly
Prerequisite: with PlaceholderAPI installed, EmakiLevel registers the emakilevel expansion. Placeholders work in scoreboards, menus, chat formats, BossBars, ActionBars, other plugins' text templates, and PlaceholderAPI-aware GUI plugins
Without PlaceholderAPI, EmakiLevel still runs normally; only external %emakilevel_*% placeholders are not registered
Player level placeholders
Player placeholders require a player context, such as the current player on a scoreboard, the menu owner, or the player passed in by a PlaceholderAPI request
| Placeholder | Returns |
|---|---|
%emakilevel_level_<type>% | Current level |
%emakilevel_exp_<type>% | Current-level exp |
%emakilevel_total_exp_<type>% | Total exp |
%emakilevel_totalexp_<type>% | Total exp, no-underscore alias |
%emakilevel_total_<type>% | Total exp, short alias |
%emakilevel_required_exp_<type>% | Required exp for the next level |
%emakilevel_requiredexp_<type>% | Required exp, no-underscore alias |
%emakilevel_required_<type>% | Required exp, short alias |
%emakilevel_progress_<type>% | Progress from 0 to 1 |
%emakilevel_progress_percent_<type>% | Progress from 0 to 100 |
Examples:
text
%emakilevel_level_main%
%emakilevel_exp_main%
%emakilevel_required_exp_main%
%emakilevel_progress_percent_main%
%emakilevel_level_combat%
%emakilevel_total_exp_mining%Fallback: if <type> does not exist or player data cannot be loaded, the placeholder returns an empty string
Leaderboard placeholders
Data source note: leaderboards use the plugin's currently cached player level data. Online players and already-loaded data can appear in the cache; this is not a full offline database scan
| Placeholder | Returns |
|---|---|
%emakilevel_top_<type>_<rank>_name% | Player name at rank |
%emakilevel_top_<type>_<rank>_level% | Level at rank |
%emakilevel_top_<type>_<rank>_total_exp% | Total exp at rank |
%emakilevel_top_<type>_<rank>_totalexp% | Total exp, no-underscore alias |
%emakilevel_top_<type>_<rank>_total% | Total exp, short alias |
Examples:
text
%emakilevel_top_main_1_name%
%emakilevel_top_main_1_level%
%emakilevel_top_main_1_total_exp%
%emakilevel_top_combat_3_name%NOTE
Leaderboard placeholders are parsed as top_<type>_<rank>_<field>. Default type IDs do not contain underscores. If you create custom type IDs with underscores, player placeholders can still parse them, but leaderboard placeholders should use type IDs without underscores to avoid ambiguity
Number formatting
EmakiLevel formats numbers into display-ready strings, with these rules:
- Integer values are displayed as integers, for example
120 - Decimal values keep two decimal places, for example
12.50 progressis a value from 0 to 1progress_percentis a value from 0 to 100 and does not include the%symbol
Scoreboard example:
text
Main Level: Lv.%emakilevel_level_main%
Main Exp: %emakilevel_exp_main%/%emakilevel_required_exp_main%
Progress: %emakilevel_progress_percent_main%%
Combat Level: Lv.%emakilevel_level_combat%
Top #1: %emakilevel_top_main_1_name% Lv.%emakilevel_top_main_1_level%In %emakilevel_progress_percent_main%%, %emakilevel_progress_percent_main% is the placeholder and the last % is literal text
Common usage
Menu lore:
yaml
lore:
- "<gray>Main Level: <yellow>Lv.%emakilevel_level_main%</yellow>"
- "<gray>Exp: <green>%emakilevel_exp_main%</green>/<green>%emakilevel_required_exp_main%</green>"
- "<gray>Progress: <aqua>%emakilevel_progress_percent_main%%</aqua>"Condition plugins:
text
%emakilevel_level_combat% >= 20
%emakilevel_progress_percent_mining% >= 75Chat display:
text
[Lv.%emakilevel_level_main%] %player_name%: %message%Difference from internal action variables
PlaceholderAPI placeholders are external %emakilevel_*% variables. EmakiLevel's types/<type>.yml > upgrade.actions.* provides internal action variables such as %level%, %new_level%, %amount%, and %failure_reason%. Both use %key% syntax, but their scopes are different
See Configuration for action variables