Data-driven jobs plugin. Mine, farm, hunt, fish, build, brew, enchant and craft your way to a bigger wallet.
VJobs
A data-driven jobs plugin. Players join a job, get paid for the actions that belong to it - breaking blocks, placing them, harvesting, killing mobs, fishing, brewing, enchanting, crafting - and level up toward a prestige reset. Every job, price, XP curve and multiplier lives in config.yml, nothing is hardcoded.
Ten jobs ship by default: Miner, Farmer, Lumberjack, Hunter, Fisherman, Builder, Digger, Brewer, Enchanter, Weaponsmith. You can add, remove or rebalance any of them without touching code. For the full breakdown of every job, action and config key, see FEATURES.md.
A few things worth knowing up front:
- Leveling uses
xp-base * level ^ xp-exponent, so the curve is yours to shape - Prestige resets a job to level 1 in exchange for a permanent payout bonus, up to a max tier you set
- Multipliers stack per-world, per-permission, and as timed server-wide boost events
- A per-location cooldown on payouts stops the usual regen-farm and mine/replace tricks
- Job limits and switch cooldowns are both permission-based, so VIP tiers can hold more jobs or switch faster
- Browsing and joining happens through a chest GUI that works fine on Bedrock through Geyser, and each job has its own leaderboard
- Storage is SQLite or MySQL, pooled with HikariCP
- PlaceholderAPI is supported (
%jobs_level_<job>%,%jobs_xp_<job>%,%jobs_prestige_<job>%), payouts go through Vault
Requirements
- Bukkit, Spigot, Paper, Purpur, or Folia: 1.21+ (Java 21)
- Vault with an economy provider (required for payouts)
- PlaceholderAPI (optional, for placeholders)
Installation
- Download the latest
VJobs-<version>.jarand drop it into your server'splugins/folder. - Start the server once to generate
config.ymlandmessages.yml. - Edit
config.ymlto adjust jobs, prices, XP, and storage settings. - Reload with
/vjobs admin reloador restart the server.
Commands
| Command | Description |
|---|---|
/vjobs or /vjobs gui |
Opens the job selection GUI |
/vjobs join <job> |
Joins a job |
/vjobs leave <job> |
Leaves a job |
/vjobs info <job> |
Shows payout rates for a job |
/vjobs top <job> |
Opens the leaderboard for a job |
/vjobs prestige <job> |
Prestiges a maxed-out job |
/vjobs togglenotify |
Toggles action bar payout notifications |
/vjobs admin reload |
Reloads config and messages |
/vjobs admin set <player> <job> <level> |
Sets a player's job level |
/jobs and /job work as aliases for /vjobs.
Permissions
| Permission | Description | Default |
|---|---|---|
jobs.use |
Use the jobs system | true |
jobs.admin |
Admin commands (reload, set) | op |
jobs.limit.<2-5> |
Hold additional jobs simultaneously | false |
jobs.cooldown.hour |
Shortens the job-switch cooldown to 1 hour | false |
jobs.cooldown.instant |
Removes the job-switch cooldown | false |
jobs.multiplier.vip / jobs.multiplier.mvp |
Configurable payout multipliers (see config.yml) |
- |
Configuration
All jobs, action rewards, XP curve, prestige settings, multipliers, and storage options live in config.yml. Messages are fully customizable in messages.yml. Both files are commented to explain every option.
Building from source
mvn clean package
The shaded jar is produced at target/VJobs-<version>.jar.
License
Released under the MIT License.
Pinned Versions
- R1.21–26.2
Pages
Members
1Owner