Let your users try uniquely on-the-fly generated jump & runs, very easily!
EasyRandomJump
A lightweight jump-and-run generator that creates a fresh parkour course for every run in its own world (all runs are in one specific world). Pick a difficulty, get a short cinematic preview, and start jumping. Checkpoints, scoreboards and small QoL tools keep the experience smooth. Stats are tracked so you can view your times and compare with others.
What it does
- Generates a unique parkour course on demand in a temporary void world
- Provides multiple difficulties (Easy → Expert) plus special modes: Timed Run, Night, Slippy, OneLife, Explosive, Sky
- Adds checkpoints, start/end platforms, and an optional cinematic flyover preview
- Tracks completions, times, deaths and XP rewards per difficulty
- Offers simple GUIs for stats, best times and leaderboards
- Optional spectate command to watch another player’s run (server-toggleable)
Why use it
- Minimal setup, quick to get started
- Courses feel varied thanks to weighted jump templates
- Clear feedback: titles, chat messages, and a clean scoreboard
- Stores progress locally (YAML) or in MySQL for servers that need scale
Core features
- Difficulties: Easy, Medium, Hard, Expert, plus special modes:
- Timed Run: choose a time limit, then pick any difficulty
- Night: night atmosphere and phantoms that push you back
- Slippy: speed and ice, move faster but control your footing
- OneLife: one death ends the run
- Explosive: explosive pads keep you on your toes
- Sky: airy layouts with small levitation effects
- Checkpoints: return to the last checkpoint or the start via hotbar items
- Cinematic preview: optional short flyover before you begin
- Scoreboard: live time, checkpoints and difficulty
- Stats: view personal stats, best times, and leaderboards via GUIs
- Admin tools: queue cleanup safety GUI, disable specific difficulties, reload config
Commands
- Start a run: /erj start
- Leave/return: /erj leave
- Stats GUIs: /erj stats, /erj times, /erj leaderboard [difficulty]
- Spectate (optional): /erj spectate
- Check player: /erj check
- Admin TP to generator: /erj tp
- Admin queue cleanup (safety GUI): /erj queuecleanup
- Reload configuration: /erj reloadconfig
Permissions
- Admin bundle: erj.admin (includes reset, spectate, tp, queuecleanup, reload)
- Or use single nodes: erj.reset, erj.spectate, erj.tp, erj.queuecleanup, erj.reload
Storage
- Local YAML (default) or MySQL. Switch in config.yml.
Notes
- Spectate can be disabled in config if you prefer stricter separation
- All messages, scoreboard titles and GUIs are configurable
If you want a plug-and-play parkour experience that stays flexible and honest about what it does, EasyRandomJump is a good fit. It doesn’t try to be an all-in-one minigame suite—just a clean, configurable parkour generator with useful quality-of-life features.
EasyRandomJump – Setup & Configuration
This document is a practical guide for server owners configuring the plugin. It covers installation, commands/permissions, storage, and the key config sections (difficulties and jump weights).
1) Installation
2) Commands overview
3) Permissions
4) Storage backends
The plugin ships with a small storage framework and supports:
Switch via the mysql.enabled flag in config.yml. If true, the MySQL section is used; otherwise local YAML is used.
Example:
mysql:
enabled: false # true to use MySQL
host: localhost
port: 3306
username: root
password: password
useSSL: false
connectionProperties: ""
5) Other global settings
6) XP rewards
Per-difficulty XP for completions:
xpRewards:
easy: 25
medium: 40
timedrun: 50
night: 55
sky: 60
hard: 75
expert: 90
slippy: 100
onelife: 125
explosive: 110
7) Enabling/disabling difficulties
Prevent players from starting specific modes by listing them here:
disabledJumpTypes: [] # e.g.: [hard, sky]
Valid values (case-insensitive): easy, medium, timedrun, night, sky, hard, expert, slippy, onelife, explosive.
8) Difficulty tuning
Every difficulty can override the default generator parameters. Leave a field out to use the plugin default.
Example snippet:
difficulties:
easy:
platformCount: 40
platformRadiusBlocks: 3
minForwardGap: 2
maxForwardGap: 4
maxVerticalStep: 1
lateralShiftMultiplier: 0.5
upStepChance: 0.25
checkpointCount: 4
9) Jump weights and what they mean
Weights let you influence how often different jump “templates” appear for each difficulty. Values are relative; they don’t need to sum to 1.0. If a key is omitted, its weight defaults to 0 (i.e., it rarely appears).
Common keys include (non-exhaustive):
Example (partial):
courseGeneration:
jumpWeights:
EASY:
straightJumps: 0.35
gentleChallenges: 0.30
upwardSteps: 0.15
sidewaysHops: 0.10
diagonalJumps: 0.05
zigZagJumps: 0.05
HARD:
diagonalClimbs: 0.17
diagonalDrops: 0.14
comboUpLateral: 0.17
comboDownLateral: 0.14
riskyGaps: 0.08
neoPillars: 0.17
precisionJumps: 0.09
10) Special modes explained briefly
11) Messages and GUI
All messages, scoreboard titles and GUI labels live under messages: in config.yml. You can adjust texts, colors and formatting codes. If you customize heavily, keep placeholders like {time}, {difficulty}, {deaths}, etc.
12) Admin safety and maintenance
13) Troubleshooting tips
This should be enough to tune generation, pick a storage backend, and keep your server’s parkour runs fresh and fair. If you have questions or requests, feel free to reach out on your resource discussion thread.