DUXPLIMA Documentation

Rewards

Milestones, the economies a milestone pays into, broadcasts, and what a player is told.

A milestone is a jump count that pays. When a run reaches it, the money lines are paid, the milestone moment plays, and, if the milestone says so, the rest of the server hears about it. Milestones live in the milestones block of config.conf and apply to every arena.

The shipped ladder

milestones {
  "25"  { money = ["exp 25"],  broadcast = false }
  "50"  { money = ["exp 60"],  broadcast = false }
  "100" { money = ["exp 150"], broadcast = true  }
  "250" { money = ["exp 500"], broadcast = true  }
}
JumpsPaysTold to the server
2525 experience pointsno
5060 experience pointsno
100150 experience pointsyes
250500 experience pointsyes

It pays experience, which every server has, so a lobby with nothing else installed still rewards its runners.

The keys

KeyMeaning
"<jumps>"The jump count that fires the milestone, as the block's name. Two blocks on the same count stop the reload.
moneyA list of lines, each an economy and an amount. Every line is paid. An empty list pays nothing and still plays the moment.
broadcasttrue plays the broadcast moment for the whole server as well

A milestone fires once per run, on the jump that reaches its count exactly. It fires again in the next run.

The money lines

LinePays intoNeeds
exp 25The player's experience pointsnothing
levels 1The player's experience levelsnothing
vault 250The server economyVault and an economy plugin
vault-unlocked 250The server economy, through the modern VaultVaultUnlocked
playerpoints 5PointsPlayerPoints
ecobits:gems 3One EcoBits currency, named after the colonEcoBits
treasury 250, treasury:coins 250The Treasury economy, its default currency or the one namedTreasury

A milestone may mix them: money = ["exp 100", "vault 500"]. Amounts may have decimals where the economy takes them.

A line naming an economy the server does not run pays nothing, and says so once in the console at the start. The milestone is still reached and the sound still plays.

What the player is told

CaseLine
Every line paidThe milestone moment, whose @milestone.reached line shows the jumps and <reward>, the lines as written (25 exp, 500 vault)
A line could not paymilestone.no-economy instead of the moment: the milestone was reached and nothing was paid
broadcast = trueThe broadcast moment as well, whose @milestone.broadcast line names the player and the jumps

If one line of a milestone cannot pay, the player is told nothing was paid, even when the other lines paid. Keep each milestone to economies the server runs.

Economy settings

economy {
  treasury-wait-ms = 250
}

treasury-wait-ms is how long one Treasury call may take before the plugin gives up and pays nothing. It runs on the player's own thread, so a large number is a stalled tick. Every other economy answers at once and ignores it.

Writing your own ladder

milestones {
  "10"   { money = ["exp 10"],                     broadcast = false }
  "50"   { money = ["vault 100"],                  broadcast = false }
  "100"  { money = ["vault 250", "levels 1"],      broadcast = true  }
  "500"  { money = ["vault 2000", "playerpoints 25"], broadcast = true }
}

Run /uxmparkour reload. A milestone list is yours: an update never puts back one you removed. The milestone moment is one list for every milestone, so a [console] line written there runs at each of them, with <jumps> naming which: see Moments.

Related: Moments, Economies, config.conf