Community listing page, reviews here may not be monitored by the author.
CropXp
No reviews yet
Random experience drops when you harvest crops — fully compatible with LevelZ.
Community voices
Reviews
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
Runs entirely on the server. Also works in singleplayer.
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
CropXp rewards farming: harvest a mature crop and there's a chance it drops a few experience orbs. Which crops count, how much XP, and the drop chance are all yours to configure.
✨ Highlights
- 🌾 XP for harvesting crops, with configurable amount and chance
- 🎚️ In-game settings screen (via Mod Menu + Cloth Config)
- 📦 Add, remove, or retune any crop with data pack files — great for modpacks and servers
- 📈 Optional LevelZ support — also grants LevelZ farming XP when LevelZ is installed
- ♻️
/reloadapplies changes instantly; Creative mode is opt-in
📦 Compatibility
Fabric 1.19.2, 1.20.1, 1.21.1
Required: Fabric API Optional: Mod Menu + Cloth Config (in-game settings), LevelZ (LevelZ XP)
⚙️ Configuration
Edit the settings in-game via Mod Menu → CropXp, or edit config/cropxp.json
directly. These are the global defaults used by every crop that doesn't
override them. Upgrading from a 1.x config is automatic.
{
"general": {
"enabled": true,
"dropInCreative": false,
"defaults": { "min": 1, "max": 2, "chance": 0.5 }
},
"levelz": {
"enabled": true,
"defaults": { "min": 1, "max": 1, "chance": 0.25 }
}
}
| Setting | Default | Meaning |
|---|---|---|
general.enabled |
true |
Master switch for vanilla XP drops. |
general.dropInCreative |
false |
If true, XP also drops while in Creative mode. |
general.defaults.min / max |
1 / 2 |
Vanilla XP amount; a whole number is rolled evenly between min and max. |
general.defaults.chance |
0.5 |
Chance per harvest to drop vanilla XP (0.0–1.0). 0 = never, 1 = always. |
levelz.enabled |
true |
Switch for LevelZ XP (only matters when LevelZ is installed). |
levelz.defaults.min / max |
1 / 1 |
LevelZ XP amount range. |
levelz.defaults.chance |
0.25 |
Chance per harvest to drop LevelZ XP. Rolled independently of vanilla XP. |
🌱 Custom crops (data packs)
Every recognized crop is a JSON file, so you can add, retune, or disable any crop — including modded ones — without changing the mod. Place files in a data pack at:
data/<namespace>/cropxp/crops/<name>.json
<namespace> can be anything (use your pack's name); cropxp/crops is the
fixed folder CropXp scans. Put the pack in a world's datapacks/ folder or ship
it inside a mod. Run /reload after editing — the Recognized Crops tab in
the config screen lists everything currently loaded.
| Field | Type | Required | Description |
|---|---|---|---|
block |
string | ✅ | Block id, e.g. minecraft:carrots. |
conditions |
object | — | Block-state values that must all match for XP to drop, e.g. { "age": 7 }. Omit to match any state. |
vanilla |
object | — | Vanilla XP override { min, max, chance }. Any field omitted falls back to the global default. |
levelz |
object | — | LevelZ XP override { min, max, chance }. |
requiresCorrectTool |
boolean | — | If true, XP only drops when the block is broken with the correct tool. |
enabled |
boolean | — | Set false to turn a crop off (e.g. to disable a built-in one). |
Conditions use the block's own state properties — for example age (0–7
for wheat, 0–3 for nether wart), or half (lower / upper). Only states
that match every listed condition grant XP, so unripe crops are skipped.
Examples
Mature carrots with custom XP:
{
"block": "minecraft:carrots",
"conditions": { "age": 7 },
"vanilla": { "min": 1, "max": 3, "chance": 0.6 }
}
Fully-grown nether wart, overriding both vanilla and LevelZ XP:
{
"block": "minecraft:nether_wart",
"conditions": { "age": 3 },
"vanilla": { "min": 2, "max": 4, "chance": 1.0 },
"levelz": { "min": 1, "max": 2, "chance": 0.5 }
}
Turn off a built-in crop:
{ "block": "minecraft:cocoa", "enabled": false }
The same pattern works for modded crops — use the modded block id and its own
growth property in conditions.
🧺 Built-in crops
Wheat, carrots, potatoes, beetroots, nether wart, cocoa, melon & pumpkin stems (including the attached-stem state), and pitcher crop (where that block exists).
Melon/pumpkin blocks and torchflower are excluded on purpose — they regrow or can be re-placed, which would allow infinite XP.
Originally built for my own modpack, now shared for everyone. 🌾
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources