DUXPLIMA Documentation

Difficulties

The range of jumps a difficulty allows, the jumps a player can physically make, and writing your own.

A difficulty is a box of jumps: how far forward the next block may be, how far to either side, and how much higher or lower. The generator only ever draws from the jumps inside that box that a player can actually make. Difficulties live in the difficulties block of config.conf.

The shipped difficulties

difficulties {
  easy   { min-forward = 2, max-forward = 3, max-sideways = 1, min-rise = -1, max-rise = 1 }
  normal { min-forward = 2, max-forward = 4, max-sideways = 2, min-rise = -1, max-rise = 1 }
  hard   { min-forward = 3, max-forward = 5, max-sideways = 3, min-rise = -2, max-rise = 1 }
}
DifficultyJumps it can drawLongest gap forwardDrops up to
easy1631
normal3241
hard4352

run.default-difficulty (normal) is the difficulty of a player who has chosen none, in an arena whose own difficulty no longer exists.

The keys

KeyMeaningRule
min-forwardThe shortest gap along the headingAt least 1
max-forwardThe longest gap along the headingNot below min-forward
max-sidewaysHow far to either side of the line the landing may beNot negative; 0 is a straight line
min-riseThe lowest the landing may be, negative for down
max-riseThe highest the landing may beNot below min-rise

The id on the left is what a player types after /parkour difficulty and what an arena names. It is matched in any case.

What a player can make

Every jump in the box is checked against what a player can reach with a sprint jump and no potion, measured between the tops of the two blocks. The gap is the straight-line distance across, so a jump two forward and two sideways is a gap of about 2.8.

Height changeFurthest gap
Up 13 blocks
Level4 blocks
Down 15 blocks
Down 2 or more6 blocks
Up 2 or morenone: a player cannot climb two blocks in one jump

A gap under 2 is a step, not a jump, and is never drawn. A jump outside these limits is dropped from the difficulty before the generator sees it, so no course has an impossible jump. max-rise = 2 is accepted, and the rises of two simply never appear.

A difficulty whose box holds no possible jump at all, such as min-forward = 5 with max-rise = 1 and min-rise = 1, stops the reload with its id and the reason, and the last working configuration stays.

Writing your own

difficulties {
  # Long straight sprints, no height change: a speed course.
  sprint { min-forward = 4, max-forward = 4, max-sideways = 0, min-rise = 0, max-rise = 0 }

  # Short hops that wander: a course for new players.
  stroll { min-forward = 2, max-forward = 2, max-sideways = 1, min-rise = 0, max-rise = 1 }
}

Run /uxmparkour reload. The new ids are offered by /parkour difficulty and can be set on an arena. Players who chose a difficulty you removed fall back to the arena's.

A list of difficulties is yours: an update never puts back one you deleted.

Notes

  • A difficulty changes the jumps, not the blocks. The blocks come from the theme.
  • The box of the arena still applies. A wide max-sideways in a narrow arena turns the course more often, and a small arena runs out of room sooner on hard.
  • The fall rule is separate. run.max-fall decides how far below the last block a player may drop before the run ends: see Runs.

Related: Themes, Arenas, config.conf