FlexGrow is a lightweight, configurable plugin for Paper/Spigot 1.21+ that turns sneaking into a fun and useful way to grow trees and crops.
Players simply crouch (“twerk”) near saplings and farmland, and plants will gradually advance their growth stages as if bone meal were being applied.
On top of that, FlexGrow adds a small quality‑of‑life feature: using bone meal on certain ground blocks can instantly turn them into grass or other configured blocks, with proper sounds, particles, and bone meal consumption.
Author: YanFLEX
Sneak‑based plant growth
Players grow nearby saplings and crops by sneaking within a configurable radius.
Per‑block growth chances
Each block type (sapling, crop, etc.) has its own growth chance defined in the config.
Separate effects for trees & crops
Different sounds, particles, volume, and pitch for tree growth and crop growth.
Per‑world control
Easily disable the plugin’s effects in specific worlds (e.g. spawn, lobby).
Bone meal ground upgrades
Right‑clicking selected ground blocks with bone meal converts them into grass or other blocks you define, with configurable sound/particle effects and real bone meal usage.
Permission‑based radius
Radius scales with permissions like flexgrow.radius.X, with a hard cap to protect performance.
Live config reload
/flexgrow reload applies configuration changes without restarting the server.
⚙️ Configuration Overview
All settings live in config.yml. Highlights:
Global behavior
radius – base radius around the player (hard‑capped internally).
cooldown-seconds – per‑player cooldown between twerk activations.
disabled-worlds – list of worlds where FlexGrow is completely disabled.
Growth targets & chances
blocks: – a single map of MATERIAL: chance that defines both:
which blocks are affected by twerking, and
how likely each block is to attempt a growth tick.
Visual & audio feedback
Separate sound and particle settings for:
crops (Ageable blocks) – crop-sound, crop-particle, crop-volume, crop-pitch
trees/saplings/propagules – tree-sound, tree-particle, tree-volume, tree-pitch
Bone meal on ground (bonemeal-ground)
enabled – toggle the feature on/off.
mappings: – map of FROM_BLOCK: TO_BLOCK (e.g. DIRT: GRASS_BLOCK).
sound, volume, pitch – audio when conversion happens.
particle, particle-count, particle-offset, particle-speed – visual effects on the converted block.
The plugin never spams chat messages during normal usage; all feedback is visual and audio only, unless you configure messages yourself.
Sneak near plants When a player begins sneaking, FlexGrow scans nearby blocks within the effective radius. For each configured block type, it rolls a chance and, on success, triggers growth.
Smooth growth
Crops and other Ageable blocks grow one stage at a time, giving a smooth, vanilla‑friendly feeling.
Saplings and special tree blocks are handled via the game’s own bone meal logic, allowing them to progress and eventually generate full trees in a natural way.
Effects per block type
When crops grow, the plugin uses the crop sound/particle set.
When trees/saplings grow, it uses the tree sound/particle set.
Particles appear both at the player and at each block that actually grew.
Bone meal on ground
Right‑clicking a configured ground block with bone meal turns it into the target block from mappings.
Bone meal is consumed (except in creative mode).
A configurable sound and particle burst play at the converted block.
Commands
Permissions
flexgrow.reload
Allows use of /flexgrow reload.
Default: op.
flexgrow.radius.X
Increases the twerk effect radius for a player up to X.
The plugin takes the highest X the player has, but never exceeds the internal hard limit (16 blocks).
When no radius permissions are granted, FlexGrow uses the base radius from config.yml.
Download the FlexGrow JAR.
Drop it into your server’s plugins folder.
Start the server to generate the default configuration.
Adjust config.yml to your liking (blocks, chances, effects, bone meal mappings).
Run /flexgrow reload or restart the server to apply changes.
FlexGrow is designed to be performance‑friendly and safe to use on survival servers, with hard limits and configurable cooldowns to prevent abuse and lag.