SMP Harvest Advanced Minecraft Harvesting Suite with Upgradable Hoes, XP, Tokens, Crop Rewards, Prestige, Events, Farming Zones, and Full Configurability for SMP, Survival, Paper, and Folia Servers
Overview
SMP Harvest is a full
Minecraft harvesting plugin for
SMP servers,
survival servers,
economy servers, and
Donut-style gameplay servers that want more than simple crop XP.
This resource turns farming into a real progression system.
Players can harvest configured crops, earn
XP,
tokens,
Vault money,
bonus drops, and even
command rewards. Servers can build a complete farming economy around
upgradable hoes,
tool progression,
leaderboards,
prestige,
seasonal stats,
harvest events, and
farming zones.
Unlike basic farming plugins, SMP Harvest is designed as a
harvesting suite. It supports
plain vanilla hoe fallback progression,
custom SMPHarvest-issued hoes,
per-crop configuration,
hybrid MiniMessage + legacy color support,
token economy,
Vault support,
multilingual language files, and
1.8–1.21 compatibility with Folia support.
If you are searching for a
Minecraft harvester hoe plugin,
crop XP plugin,
SMP farming progression plugin,
Donut-style harvesting plugin,
Paper/Folia farming plugin, or a
configurable farming rewards plugin, SMP Harvest is built for that exact use case.
Why SMP Harvest
Most crop plugins only give one reward and stop there.
SMP Harvest is built as a
complete farming gameplay loop.
It can reward players with configurable crop XP, tokens, Vault money, bonus item drops, console/player command rewards, and output routing such as normal drops, auto-collect, and direct sell. It includes
tool profiles,
tool enchants,
tool levels,
plain hoe conversion,
crop requirements,
prestige scaling,
harvest events,
zones with regeneration, and
anti-exploit protections.
That makes it strong for
survival economy servers,
prison-style farming loops,
skyblock harvesting systems,
grind SMPs,
Donut-inspired economies,
PvE progression servers, and
large networks that need Paper/Folia-ready behavior.
Core Harvesting System
Each configured crop can define its own XP logic, reward chance, reward mode, and extra reward systems.
For every crop you can configure:
enable or disable rewards
single or random XP
chance-based reward control
crop progression requirements
auto-replant
harvest output mode
sell prices
tokens per harvest
Vault money rewards
bonus item drops
bonus command rewards
external hooks for mcMMO, AuraSkills, and Jobs Reborn
This means farming is not one flat reward table. Every crop can behave differently and can be balanced independently.
Harvest Tool System
SMP Harvest includes a full
harvest tool progression system.
The plugin ships with a
vanilla_hoe fallback profile plus multiple
custom issued hoe profiles such as:
Starter Hoe
Field Hoe
Rancher Hoe
Trader Hoe
Industrial Hoe
Netherite Hoe
Vine Hoe
Melon Master
Each tool profile can define:
valid hoe materials
display name and lore
owner binding
issued-item requirements
shop availability
token price
Vault price
purchase mode
first-join grant
one-time claims
multipliers
progression settings
allowed enchants
This makes SMP Harvest useful both for servers that want
simple vanilla hoe progression and for servers that want
premium custom harvesting tools.
Vanilla Hoe Fallback and Automatic Conversion
One of the strongest parts of SMP Harvest is the
plain hoe conversion system.
If a player uses a plain hoe with no custom name and no lore, the plugin can automatically treat it as the configurable
vanilla_hoe fallback profile. That means vanilla hoes can still:
earn XP
earn tokens
show progression lore
level up
use configured progression values
be recognized by tool systems
At same time, custom named/lored items can be exempted from fallback conversion to avoid conflicts with other plugins or custom items.
This gives owners a clean progression path without forcing every player to start with an issued tool item.
Harvest Tool Enchants and Upgrades
SMP Harvest includes configurable tool enchant definitions and upgrade purchasing.
Current bundled upgrade types include:
Auto Replant
Auto Collect
Auto Sell
XP Finder
Token Finder
Each enchant can define:
display name
internal type
max level
base cost
cost scaling
value per level
purchase mode
This gives server owners a clean way to build
upgradeable harvester hoes without hardcoding progression into one rigid path.
Reward Routing and Economy Integration
SMP Harvest supports multiple ways to deliver harvest rewards.
Per crop, you can route harvest output as:
drop
collect
sell
You can also combine this with:
token rewards
Vault money rewards
bonus item drops
console/player command rewards
external progression hooks
This allows many economy designs, from simple crop XP all the way to fully monetized automated farming systems.
World Rules, Farming Zones, and Anti-Exploit Controls
The plugin includes multiple control layers for production servers.
You can configure:
per-world whitelist / blacklist behavior
natural-growth-only exploit prevention
tracked player-placed blocks
shared farming zones with regeneration timers
manual zone rescans
captcha protection against suspicious farming behavior
alert thresholds based on harvest rate
command-driven failure actions
This makes SMP Harvest useful not only as a reward plugin, but as a
server-safe farming system.
Stats, Progression, Prestige, and Events
SMP Harvest also includes long-term progression and replayable loops.
Players and admins can use:
personal stats
other-player stats
all-time and seasonal leaderboards
crop progression requirements
prestige tiers with reward multipliers
harvest events with timed scoring
top-page rankings
event reward commands
That gives farming real retention instead of one-time utility.
Language, Formatting, and Compatibility
SMP Harvest supports
MiniMessage and
legacy & color codes in player-facing messages. It also ships with a language folder and bundled locale files.
Current bundled locales include:
English
Spanish
Portuguese
German
French
Russian
The plugin is built for
Minecraft 1.8–1.21 and marks
Folia support, while also supporting modern optional hooks such as Vault, PlaceholderAPI, mcMMO, Jobs, and AuraSkills.
Feature Summary
Code (Text):
✔ Per-crop XP configuration
✔ Single or random reward logic
✔ Chance-based reward control
✔ Per-crop tokens
✔ Per-crop Vault money rewards
✔ Per-crop bonus drops
✔ Per-crop bonus console/player commands
✔ Per-crop external hooks (mcMMO / AuraSkills / Jobs)
✔ Auto-replant support
✔ Harvest output modes: drop / collect / sell
✔ Vanilla hoe fallback conversion
✔ Custom issued hoe profiles
✔ Tool progression, levels, XP, harvest counts
✔ Tool enchants and upgrade costs
✔ Token economy
✔ Vault economy support
✔ Shop + claim flow for harvest tools
✔ First-join starter tool support
✔ World whitelist / blacklist rules
✔ Farming Zones with regeneration
✔ Anti-exploit natural-growth-only mode
✔ Captcha protection and alerts
✔ Stats, top, seasonal buckets
✔ Crop progression requirements
✔ Prestige tiers and multipliers
✔ Harvest Events with rewards
✔ GUI-based management
✔ MiniMessage + legacy formatting
✔ Multi-language support
✔ 1.8–1.21 compatibility
✔ Paper + Folia support
Commands
Code (Text):
/harvestxp
/hxp
/hxp version
/hxp help
/hxp reload
/hxp gui
/hxp worldgui
/hxp blockname <BlockKey> <true|false>
/hxp blockname <BlockKey> random <true|false>
/hxp blockname <BlockKey> single <Amount>
/hxp blockname <BlockKey> min <Amount>
/hxp blockname <BlockKey> max <Amount>
/hxp blockname <BlockKey> create
/hxp cropname <legacy alias support>
#/ Player Commands
/hxp toggle
/hxp stats [player]
/hxp top <all|xp|BlockKey> [alltime|daily|weekly|monthly] [page]
/hxp progress [player]
/hxp prestige [player|up]
Drop the jar into your plugins folder, start the server once, edit the files below, then restart or reload.
If you want economy rewards or purchases, install
Vault with a supported economy provider.
If you want placeholder support, install
PlaceholderAPI.
If you want extra progression hooks, install
mcMMO,
Jobs, or
AuraSkills.
Configuration Files
Below are the current bundled configuration files.
Code (Text):
name: HarvestXP
version: ${project.version} # Placeholder to retrieve version from pom.xml
main: com.arkflame.harvestxp.HarvestXP
api-version: 1.13
folia-supported: true
author: ArkFlame Development
description: Configurable plugin allowing players to gain experience points (XP) from harvesting crops. Features per-crop settings, including enabling/disabling, single or random XP amounts, adjustable min/max XP, and management via commands and in-game GUIs. Compatible with Minecraft 1.8-1.21 and Folia-ready scheduling.
website: ${project.url}
# Define bStats dependency if needed for server admins
softdepend: [ bStats, PlaceholderAPI, Vault, mcMMO, Jobs, AuraSkills ] # Optional: Let server admins know bStats might be used
commands:
harvestxp:
description: Main command for HarvestXP plugin.
aliases: [hxp]
usage: /<command> [subcommand] [args...]
permissions:
harvestxp.admin:
description: Grants access to all HarvestXP admin commands (/hxp reload, /hxp cropname ..., /hxp gui, /hxp worldgui). Recommended for Ops.
default: op
children:
harvestxp.admin.reload: true
harvestxp.admin.modify: true
harvestxp.admin.gui: true
harvestxp.admin.worldgui: true
harvestxp.tool.give: true
harvestxp.tool.info: true
harvestxp.tool.info.others: true
harvestxp.tool.enchant.set: true
harvestxp.tool.menu: true
harvestxp.tool.shop: true
harvestxp.tool.claim: true
harvestxp.tool.list: true
harvestxp.zones.view: true
harvestxp.zones.admin: true
harvestxp.event.admin: true
harvestxp.captcha.admin: true
harvestxp.captcha.alerts: true
harvestxp.toggle:
description: Allows players to toggle their personal XP rewards on/off.
default: true
harvestxp.gain:
description: Allows players to gain XP from harvesting crops. Can be further restricted by specific block keys (harvestxp.gain.<blockkey>).
default: true
harvestxp.admin.reload:
description: Allows reloading the HarvestXP configuration (/hxp reload).
default: op
harvestxp.admin.modify:
description: Allows modifying global crop settings via commands (/hxp cropname ...) or the GUI (/hxp gui).
default: op
harvestxp.admin.gui:
description: Allows opening and using the global crop management GUI (/hxp gui).
default: op
harvestxp.admin.worldgui:
description: Allows opening and using the world-specific whitelist/blacklist GUI (/hxp worldgui).
default: op
harvestxp.stats:
description: Allows viewing HarvestXP farming stats.
default: true
harvestxp.stats.others:
description: Allows viewing other players' HarvestXP farming stats.
default: op
harvestxp.top:
description: Allows viewing HarvestXP leaderboards.
default: true
harvestxp.progress:
description: Allows viewing crop progression requirements.
default: true
harvestxp.progress.others:
description: Allows viewing other players' crop progression requirements.
default: op
harvestxp.prestige:
description: Allows viewing prestige status.
default: true
harvestxp.prestige.up:
description: Allows prestiging yourself.
default: true
harvestxp.prestige.others:
description: Allows viewing other players' prestige status.
default: op
harvestxp.event.view:
description: Allows viewing Harvest Event status and live standings.
default: true
harvestxp.event.admin:
description: Allows starting and stopping Harvest Events.
default: op
harvestxp.zones.view:
description: Allows viewing Farming Zone status.
default: op
harvestxp.zones.admin:
description: Allows rebuilding Farming Zone tracked blocks.
default: op
harvestxp.captcha.admin:
description: Allows managing farming captcha sessions.
default: op
harvestxp.captcha.alerts:
description: Allows receiving farming-rate alerts.
default: op
harvestxp.tool.give:
description: Allows issuing HarvestXP tool items.
default: op
harvestxp.tool.info:
description: Allows inspecting the held HarvestXP tool.
default: op
harvestxp.tool.info.others:
description: Allows inspecting another player's held HarvestXP tool.
default: op
harvestxp.tool.enchant.buy:
description: Allows upgrading the held Harvest Tool using Harvest Tokens.
default: true
harvestxp.tool.enchant.set:
description: Allows setting Harvest Tool enchant levels on another player's held tool.
default: op
harvestxp.tool.menu:
description: Allows opening the Harvest Tool upgrade menu for the held tool.
default: true
harvestxp.tool.shop:
description: Allows opening the Harvest Tool profile shop.
default: true
harvestxp.tool.claim:
description: Allows buying or claiming a Harvest Tool profile directly.
default: true
harvestxp.tool.list:
description: Allows listing all configured Harvest Tool profiles.
default: true
# Optional: Permission to gain XP from harvesting (if you want to restrict it)
# harvestxp.harvest:
# description: Allows the player to gain XP from harvesting crops.
# default: true # Grant to everyone by default
Code (Text):
# Configuration for SMPHarvest Plugin
#
# For each block, you can configure:
# enabled: true/false - Whether XP should drop for this block.
# mode: 'single' or 'random' - How the XP value is determined.
# single-value: (Only if mode is 'single') The exact amount of XP to drop.
# random-min: (Only if mode is 'random') The minimum XP value to drop.
# random-max: (Only if mode is 'random') The maximum XP value to drop.
# chance: (Integer 0-100) The percentage chance (e.g., 75 for 75%) that XP will be awarded for this harvest.
# requirements:
# enabled: false
# type: "block-harvests"
# amount: 500
# enforcement: "deny-break"
# auto-replant:
# enabled: false
# harvest-tool:
# enabled: false
# profile: "starter_hoe"
# enforcement: "deny-rewards"
# harvest-output:
# mode: "drop"
# sell-price: 0.00
#
# Note: Values must be non-negative integers. random-max must be >= random-min. Chance must be between 0 and 100 inclusive.
# Requirement type supports `global-harvests` or `block-harvests`.
# Requirement enforcement supports `deny-break` or `deny-rewards`.
# Requirement checks use all-time stats from stats.yml.
# Auto-Replant v1 only applies to wheat, beetroot, carrots, potatoes, nether wart, and cocoa.
# The plugin consumes one natural replant item from the crop's natural drops when possible.
# If no valid replant item is present, auto-replant is skipped and normal break behavior is used.
# Zone-managed blocks do not use auto-replant because Farming Zones already regenerate.
# Harvest Output Routing v1 supports `drop`, `collect`, and `sell`.
# `collect` sends natural crop drops to the player's inventory and drops overflow naturally.
# `sell` sells only the crop's sellable produce items and drops any non-sellable remainder naturally.
# v1 uses the existing Vault economy hook only for money delivery.
# v1 does not sell bonus drops.
#
# *** External Hooks ***
# Each block can also have an optional 'hooks' section to award native progression or economy rewards.
# blocks.<BLOCK_KEY>.hooks.mcmmo:
# enabled: true/false - Whether mcMMO farming XP is awarded.
# farming-xp: The mcMMO farming XP amount to award.
# blocks.<BLOCK_KEY>.hooks.auraskills:
# enabled: true/false - Whether AuraSkills farming XP is awarded.
# farming-xp: The AuraSkills farming XP amount to award.
# blocks.<BLOCK_KEY>.hooks.jobs-reborn:
# enabled: true/false - Whether Jobs Reborn rewards are awarded.
# money: The Jobs Reborn money amount to award.
# experience: The Jobs Reborn experience amount to award.
#
# Example (commented):
# STONE:
# hooks:
# mcmmo:
# enabled: true
# farming-xp: 10.0
# auraskills:
# enabled: true
# farming-xp: 4.5
# jobs-reborn:
# enabled: true
# money: 2.50
# experience: 1.0
#
# *** Bonus Drops ***
# Each block can also have an optional 'bonus-drops' section to grant extra item rewards.
# blocks.<BLOCK_KEY>.bonus-drops.<REWARD_MATERIAL>:
# mode: 'single' or 'random' - How the drop amount is determined.
# single-value: (Only if mode is 'single') The exact amount to drop.
# random-min: (Only if mode is 'random') The minimum amount to drop.
# random-max: (Only if mode is 'random') The maximum amount to drop.
# chance: (Integer 0-100) The percentage chance that the bonus item will be awarded.
# item: Optional rich item metadata. Existing simple material-only drops still work.
# name: Display name for the dropped item.
# lore: Optional lore lines.
# glow: true/false - Adds the glow effect.
# custom-model-data: Optional custom model data value.
# enchants: Optional list of ENCHANTMENT:LEVEL entries.
# flags: Optional list of ItemFlag enum names.
#
# Note: custom-model-data is ignored on legacy servers that do not support it.
# Invalid enchant and flag names are ignored safely.
# This step does not add NBT, skull textures, or sell-price support.
#
# Example (commented):
# STONE:
# enabled: true
# mode: "single"
# single-value: 1
# random-min: 0
# random-max: 0
# chance: 50
# bonus-drops:
# COAL:
# mode: "random"
# single-value: 1
# random-min: 1
# random-max: 2
# chance: 20
# item:
# name: "&bRare Gem"
# lore:
# - "&7Custom lore line 1"
# - "&7Custom lore line 2"
# glow: true
# custom-model-data: 123
# enchants:
# - "DURABILITY:1"
# flags:
# - "HIDE_ENCHANTS"
# IRON_INGOT:
# mode: "single"
# single-value: 1
# random-min: 1
# random-max: 1
# chance: 5
#
# *** Command Rewards (bonus-commands) ***
# Each block can have an optional 'bonus-commands' section to execute console or player commands.
# blocks.<BLOCK_KEY>.bonus-commands.<reward-id>:
# enabled: true/false - Whether this command reward is active.
# executor: 'console' or 'player' - Execute as console or as the harvesting player.
# mode: 'single' or 'random' - How the command execution count is determined.
# single-value: (Only if mode is 'single') Number of times to execute each command.
# random-min: (Only if mode is 'random') Minimum execution count.
# random-max: (Only if mode is 'random') Maximum execution count.
# chance: (Integer 0-100) Percentage chance that this command set executes.
# commands:
# - "crates give %player% vote %amount%"
# - "eco give %player% 100"
#
# Available placeholders for command rewards:
# %player% - Player name
# %uuid% - Player UUID
# %world% - World name
# %block% - Block material name
# %x%, %y%, %z% - Block coordinates
# %amount% - Execution count (from single-value or random roll)
#
# Example (commented):
# WHEAT:
# enabled: true
# mode: "single"
# single-value: 1
# random-min: 0
# random-max: 0
# chance: 100
# bonus-commands:
# daily_reward:
# enabled: true
# executor: "console"
# mode: "random"
# single-value: 1
# random-min: 1
# random-max: 3
# chance: 50
# commands:
# - "crates give %player% vote %amount%"
# - "eco give %player% 100"
#
# *** Vault Money Rewards (vault-money) ***
# Each block can have an optional 'vault-money' section to grant economy currency.
# Requires Vault and an economy provider.
# blocks.<BLOCK_KEY>.vault-money:
# enabled: true/false - Whether this money reward is active.
# mode: 'single' or 'random' - How the money amount is determined.
# single-value: (Only if mode is 'single') Exact amount to give.
# random-min: (Only if mode is 'random') Minimum amount.
# random-max: (Only if mode is 'random') Maximum amount.
# chance: (Integer 0-100) Percentage chance that money is awarded.
#
# Example (commented):
# WHEAT:
# enabled: true
# mode: "single"
# single-value: 1
# random-min: 0
# random-max: 0
# chance: 100
# requirements:
# enabled: true
# type: "global-harvests"
# amount: 1000
# enforcement: "deny-break"
# auto-replant:
# enabled: true
# harvest-output:
# mode: "sell"
# sell-price: 2.50
# vault-money:
# enabled: true
# mode: "random"
# single-value: 0
# random-min: 10
# random-max: 50
# chance: 25
#
# *** Version Compatibility ***
# Some blocks listed below might not exist in your specific Minecraft server version.
# The plugin will automatically ignore settings for incompatible blocks based on the server version.
# If you update your server, the plugin will attempt to automatically add default configurations
# for newly available blocks during startup or reload.
#
# Block Keys: Names generally match Bukkit Material names (e.g., WHEAT, CARROTS).
# Note: Legacy 'crops' section is still accepted on upgrade.
# Any valid block material key can be configured manually or through commands.
#
settings:
log-loading-messages: true
reward-delivery:
mode: "orb"
reward-feedback:
chat:
enabled: false
message: "<green>+%formatted_xp% XP</green> <gray>(%block%)</gray>"
number-format:
mode: "raw"
sound:
enabled: true
names:
- ENTITY_EXPERIENCE_ORB_PICKUP
- ORB_PICKUP
volume: 1.0
pitch: 1.0
actionbar:
enabled: true
message: "&a+%xp% XP"
title:
enabled: false
title: "+%xp% XP"
subtitle: "%block%"
fade-in: 10
stay: 20
fade-out: 10 # Set to true to see detailed loading messages, including version compatibility checks and default additions.
exploit-prevention:
# Blocks XP from tracked player-placed crops until they grow legitimately
natural-growth-only:
enabled: false
captcha:
enabled: false
# Random captcha trigger chance after valid harvest activity. Range: 0.0 to 1.0.
random-trigger-chance: 0.0
timeout-seconds: 30
max-failures: 3
block-harvests-while-active: true
failure-action:
mode: "command"
command: "kick %player% Failed farming captcha"
gui:
title: "&8Farming Captcha"
size: 27
target-material: "EMERALD"
filler-material: "GRAY_STAINED_GLASS_PANE"
distractor-material: "COAL"
target-display-name: "&aClick this item"
distractor-display-name: "&7Wrong item"
alerts:
enabled: false
# Based on valid harvest activity only.
rolling-window-ticks: 20
alert-threshold-bps: 15.0
# At or above this threshold, a captcha can be forced immediately.
captcha-threshold-bps: 25.0
permission: "smpharvest.captcha.alerts"
message: "&c[SMPHarvest] %player% reached %bps% blocks/sec."
# Harvest Event
# score-mode supports "harvests" or "xp"
# reward commands run as console
# available reward placeholders: %player%, %uuid%, %position%, %score%, %duration%
harvest-event:
enabled: false
auto-start:
enabled: false
interval-seconds: 3600
duration-seconds: 300
top-places: 5
score-mode: "harvests"
rewards:
"1":
commands:
- "eco give %player% 1000"
player-message: "<green>You placed #1 in the Harvest Event.</green>"
"2":
commands:
- "eco give %player% 500"
player-message: "<green>You placed #2 in the Harvest Event.</green>"
# Farming Zones v1
# This first version is shared/global only and does not use player-specific or packet-driven zone detection.
# Crop keys must match one of the plugin's configured crop keys under blocks.
# Zone blocks are scanned on startup and on manual rescan.
# Set up the zone with already-grown or ready crops for the intended gameplay.
farming-zones:
enabled: false
zones:
wheat_farm:
world: "world"
crop: "WHEAT"
pos1: "0,64,0"
pos2: "15,70,15"
regen-seconds: 20
It is a
complete harvesting progression suite with configurable crop rewards, vanilla fallback hoes, custom harvest tools, upgradeable tool enchants, token + Vault economy integration, prestige, events, zones, anti-exploit controls, and multilingual support.
If you want a
Minecraft harvesting plugin,
harvester hoe progression plugin,
SMP farming economy plugin, or
Donut-style farming suite that gives server owners real control instead of one fixed gimmick, SMP Harvest is built for that role.
SMP Harvest Real farming progression. Real upgrade paths. Real configurable harvesting gameplay.