ServerContracts
AvailableServer-wide contracts that turn a quiet evening into a shared push. The whole server fills one bar, milestones pay out along the way, and every contributor is paid in proportion to what they actually did. Built entirely in game, with an editor instead of a config file.
- Gameplay & Progression
- Economy & Shops
- quests
- objectives
- rewards
- daily
- leaderboards
What it does
One bar, the whole server
A contract is a single shared goal — break 3,000 iron ore, kill 900 creepers, deliver 4,000 wheat. Every player’s actions count toward the same bar. No personal copies to reconcile, no quest log to claim from.
Paid in proportion, four times over
The bar crosses milestones at 25, 50, 75 and 100 percent, and each one releases a slice of the reward pool split by actual contribution. Nobody waits until the end to see anything.
Built in game, not in YAML
/contractsadmin opens a full editor. Set targets by holding the item, drop items into a chest to make them rewards, flip settings and have them apply on click. contracts.yml is what your edits get written to, not something you have to open.
Anti-farm that survives a restart
Player-placed blocks never count, and the marks are stored in the chunk itself — memory-only tracking hands every server a free exploit window on every reboot. Spawner mobs, other people’s kills, renamed items and creative mode are all excluded too.
Nine contract types
BLOCK_BREAK, MOB_KILL, ITEM_DELIVER, FISH_CATCH, CRAFT, SMELT, TRADE, ADVANCEMENT and PLAYTIME — so mining servers, skyblock and pure-PvE all get something that fits.
A guide that cannot go stale
/contracts guide is read straight out of the jar and never written to disk, so there is no copy in your plugins folder to fall behind the code. Everything configurable — milestone percentages, contract types, the command list — is generated at display time from the running plugin.
Dailies and streaks on top
Each player gets a personal daily set drawn from the same templates, scaled down. Finish one a day and rewards climb 5 percent per day up to a 50 percent cap.
Compatibility
- Version
- 2.4.0
- Minecraft
- 1.21+
- Java
- 21+
- Platform
- Paper / Purpur
- Storage
- Flat file, or optional SQLite
- Hooks
- Vault, PlaceholderAPI
- Licence
- Proprietary, per-network
- Updates
- Lifetime, included
Commands
Permissions default to true for player commands and op for admin ones.
| Command | What it does | Permission |
|---|---|---|
/contracts | Open the menu | servercontracts.use |
/contracts list | Active contracts in chat | servercontracts.use |
/contracts info <index> | Details for one contract | servercontracts.use |
/contracts deliver <index> | Hand in items | servercontracts.use |
/contracts top | Top contributors | servercontracts.use |
/contracts guide [topic] | The in-game guide | servercontracts.use |
/contracts personal | Your daily contracts | servercontracts.use |
/contracts stats | Your own totals | servercontracts.use |
/contractsadmin | Open the admin editor | servercontracts.admin |
/contractsadmin reload | Reload config, messages and templates | servercontracts.admin |
/contractsadmin rotate [index] | Replace one contract, or all of them | servercontracts.admin |
/contractsadmin new <template> | Start a named template immediately | servercontracts.admin |
/contractsadmin cancel <index> | End one with no payout | servercontracts.admin |
/contractsadmin complete <index> | Force to 100 percent and pay out | servercontracts.admin |
/contractsadmin reset <player> | Wipe a player’s stats | servercontracts.admin |
/contractsadmin info | Plugin and hook status | servercontracts.admin |
Before you buy
Do I need a database?
No. It is flat file by default — drop the jar in, restart, and it runs. There is an optional SQLite mode for busy servers whose state file has grown large, and that is still no server to run: Paper fetches the driver itself.
Does it need Vault or PlaceholderAPI?
Both are optional. Without Vault, money rewards are unavailable and the rest works normally. Without PlaceholderAPI you simply lose the placeholders.
Can players farm it by placing and breaking their own blocks?
No. Player-placed blocks are marked in the chunk itself, so the marks survive restarts. Spawner mobs, kills you did not land yourself, renamed or enchanted items on delivery, and anything done in creative are all excluded as well.
Will editing a template break a contract that is already running?
No. Live contracts hold their own copy of the numbers they started with, so edits only affect the next roll.
How many servers does one licence cover?
One network, including its test server. Ask in Discord if you run something unusual and we will sort it out.