Skip to content

Milestones

Jan Kluka edited this page Aug 29, 2026 · 1 revision

Milestones

Milestones turn the big moments in a player's progression into something the whole server notices — a title on their screen, a sound, a firework, a broadcast in chat, and any commands you want to run.

X-Prison already fires an event every time a player ranks up, prestiges, rebirths or levels their pickaxe. Milestones simply listen for the ones you care about. Nothing is added to the mining hot path: the lookup only runs when one of those events actually happens.

Everything lives in milestones.yml.


How an entry works

Each entry under milestones: has a name of your choosing and describes one moment:

milestones:
  first-prestige:
    type: prestige
    at: 1
    exact: true
    title: '<gradient:#FFD700:#FFA500><bold>PRESTIGE</bold></gradient>'
    subtitle: '<white>You prestiged for the first time!'
    broadcast: '<gradient:#FFD700:#FFA500><bold>PRESTIGE</bold></gradient> <dark_gray>»</dark_gray> <yellow>%player%</yellow> <white>reached their first prestige!'
    sound: ENTITY_PLAYER_LEVELUP
    firework: true
    commands: []
Option Description
type Which moment to watch: rank, prestige, rebirth or pickaxe-level
at The value that triggers it — a rank id, a prestige number, a pickaxe level
exact true fires only when the player lands exactly on at. false fires whenever they are at or past it
title Big text on screen. Optional
subtitle Smaller text under the title. Optional
message A chat message to the player alone. Optional
broadcast A chat message to everybody online. Optional
sound Any Bukkit sound name, e.g. ENTITY_PLAYER_LEVELUP. Optional
firework true launches a firework where the player is standing
commands Commands run from console. Optional

Every text field and every command supports two placeholders:

Placeholder Returns
%player% The player's name
%value% The value they reached (the rank id, prestige number, pickaxe level)

All text is raw MiniMessage, exactly like the rest of the plugin — hex colours, gradients and formatting all work.


exact: true versus exact: false

This is the one option worth thinking about.

exact: true is what you want for a one-off celebration. at: 10 with exact: true fires the moment a player hits prestige 10, and never again.

exact: false fires every time the event happens at or above that value. at: 10 with exact: false fires at prestige 10, then 11, then 12, and so on forever. That is occasionally what you want — "every prestige past 10 gets a firework" — but it will spam a broadcast if you are not careful. When in doubt, use exact: true.


Rewarding a milestone

commands runs from console, so you can hand out anything your server already supports:

  prestige-25:
    type: prestige
    at: 25
    exact: true
    title: '<gold><bold>PRESTIGE 25</bold></gold>'
    broadcast: '<gold>%player% <white>reached prestige <gold>%value%<white>!'
    firework: true
    commands:
      - 'crate give %player% legendary 1'
      - 'tokens give %player% 5000000'
      - 'lp user %player% permission set some.perk true'

Adding your own

Add as many entries as you like — the names are yours, and nothing depends on the defaults shipped in the file. To watch the pickaxe ladder, for example:

  pickaxe-level-5000:
    type: pickaxe-level
    at: 5000
    exact: true
    message: '<gradient:#FFD700:#FFA500><bold>PICKAXE</bold></gradient> <dark_gray>»</dark_gray> <white>Level <yellow>%value%</yellow>. Ridiculous.'
    sound: ENTITY_ENDER_DRAGON_GROWL
    firework: true

A milestone with an unknown type is skipped with a warning naming it, and the rest keep working. That warning also shows up in the startup digest and in /xprison health.


Turning it off

Set enabled: false at the top of the file to switch the whole system off, or simply delete the entries you do not want. Deleted entries stay deleted — the config updater will not put them back on the next update.


See also

XPrison Logo

General

Modules

Default Configs

Enchant Configs — Passive

Enchant Configs — Currency Rewards

Enchant Configs — Key & Item Rewards

Enchant Configs — Area of Effect

Enchant Configs — Multipliers

Enchant Configs — Templates

Enchant Configs — Addons

Addons

Support

For Developers

Others

Clone this wiki locally