
GGQOL
Quality of Life plugin for Minecraft 1.21.11. Adds instant smelting, auto replant, bulk crafting, armored elytra, inventory totem, silk touch block recovery, scrollable bundles, and 15+ more configurable QoL improvements.
GGQOL is a lightweight, highly configurable Paper/Folia plugin that removes the most common friction points in vanilla Minecraft survival without changing the game's balance or feel. Every feature can be toggled independently in config.yml.
Requirements: Paper (latest 1.21.11 build recommended), Java 21+
No commands. No permissions. Drop in and play.
Dependency: PacketEvents download here
Features
Table of Contents
- Instant Smelting & Processing
- Auto Replant
- Bonemeal Max Grow
- Animal Quality of Life
- Villager Improvements
- Bulk Crafting
- Anvil Improvements
- Armored Elytra
- Tool & Armor Break Prevention
- Inventory Totem of Undying
- Silk Touch Block Recovery
- Sea Pickle Fast Place
- Bundle Scroll
- Mud Spread
- Concrete Powder in Water
- Piston Farmland Protection
- Full Config Reference
Instant Smelting & Processing
Furnaces, smokers, blast furnaces, brewing stands, and campfires all process their contents instantly the moment fuel and input are present. No more AFK standing next to a furnace bank. The fuel consumption multiplier is configurable so you still spend roughly the same amount of coal or more if you want — you just don't have to wait.
Safe fuel mode prevents the furnace from burning more fuel than is needed to finish the current batch, eliminating wasted fuel on partial loads.
Auto Replant
Break a fully-grown crop and GGQOL automatically replants the seed in the same tick, consuming one seed from the drops (or from your inventory if none dropped). Sugar cane and cactus columns are fully supported — break the bottom block and the entire column is harvested and replanted in one swing.
Shulker box and bundle support means you can carry thousands of seeds in a single inventory slot without breaking the replant flow.
Supported crops: Wheat, Carrots, Potatoes, Beetroot, Nether Wart, Sugar Cane, Cactus (if any new crops get added in the future this will be updated).
Bonemeal Max Grow
Right-clicking with bone meal grows the target plant or sapling to its maximum age in one use rather than advancing it by a random amount. Height caps for bamboo, sugar cane, and cactus are configurable so bonemeal stays balanced.
Animal Quality of Life
Managing a large animal farm in vanilla is painfully slow. GGQOL addresses every step of the process:
- Instant tame — wolves, cats, and horses tame on the first attempt, every time.
- Instant breed — breeding produces a baby immediately and resets the cooldown, so you can breed the same pair again straight away.
- Instant grow — baby animals grow to adults instantly, including chickens hatched from thrown eggs.
- Feed from shulkers/bundles — right-clicking animals consumes breeding food from inside shulker boxes and bundles so you don't have to unpack them.
Villager Improvements
Vanilla villagers have some of the most tedious mechanics in Minecraft. GGQOL fixes them all:
- Instant cure — zombie villagers are cured immediately, with no waiting period and no RNG on discount level.
- Instant workbench update — place or replace a job site block and the nearest unemployed villager claims it instantly, no wandering required (this specifically helps with servers like paper that like to keep villagers idle for most of the day so they do not search for workbenches at all some times).
- Reset trade cooldown — villager trades refresh after every trade rather than locking out after a set number of uses.
- Bulk trading — double-click a trade to execute it as many times as your inventory allows, pulling ingredients from shulker boxes and bundles automatically.
Bulk Crafting
Shift-clicking a recipe in the crafting table crafts up to 2147483647 items in a single click, consuming materials from your entire inventory including shulker boxes and bundles. The result is delivered directly to your inventory, with any overflow dropped at your feet.
Anvil Improvements
Two separate anvil improvements are included:
Unlimited repair cost removes the vanilla 39-level "Too Expensive!" cap. The actual XP cost still increases with each repair — it's just no longer hard-capped. A configurable absolute maximum can be set if you want to impose a server-side limit.
Anvil cost tooltip adds a Cost: N levels line to the item lore while it's sitting in the anvil result slot, so you always know exactly what you're about to spend before you click.
Armored Elytra
Combine any Netherite Chestplate with an elytra in an anvil to create an Armored Elytra that provides both flight and the full armor value of the chestplate. The armor attributes transfered and stored on the Elytra. The item survives further anvil operations and enchanting and becomes fire/lava resistant.
Tool & Armor Break Prevention
Tools and armor stop taking damage at 1 durability remaining — they will never break, but they also won't function until repaired. A warning sound plays when the threshold is hit so you know to visit an anvil. This applies to tools mid-use and to armor taking incoming damage.
Inventory Totem of Undying
A Totem of Undying activates automatically from anywhere in your inventory, including inside shulker boxes, bundles, and your ender chest — not just when held in your off-hand. Configure exactly which storage locations are searched and whether a held totem takes priority.
Silk Touch Block Recovery
Breaking any block with a Silk Touch tool drops the block itself as an item (if available) and returns all container contents (chest, dispenser, dropper, hopper, furnace, etc.) directly to your inventory rather than scattering them on the ground.
Spawner support is also included — you can configure whether a silk-touch spawner drops the spawner block, a spawn egg, or both.
Sea Pickle Fast Place
Right-clicking a sea pickle cluster with more sea pickles in hand rapidly fills the cluster to its maximum density (instead of placing 1 at a time if you inventory have enough it will place all 4 at once), consuming pickles from shulker boxes and bundles automatically. Ideal for lighting up large oceans or rivers.
Bundle Scroll
Scroll through a large bundle's contents by scrolling the mouse wheel while hovering over it in your inventory. The selected slot cycles through the bundle's contents so you can quickly grab a specific item type without unpacking everything. This is specifically for when you have more than 13 items which in the normal UI would make all other items from that point on a pain to take out.
Mud Spread
Right click water bottle at a patch of dirt and it converts surrounding dirt blocks to mud in a configurable radius, spreading outward in a natural flood-fill pattern over several ticks. Perfect for building speed building farm item collection systemts with dirt and quickly converting it all to mud when done with your build.
Concrete Powder in Water
Drop concrete powder items into water source block and they convert to concrete automatically as they float in the water source. Works with items inside shulker boxes and bundles dropped into water, so you can hydrate an entire inventory of powder in one go.
All 16 concrete colours are supported.
Piston Farmland Protection
Farmland blocks no longer revert to dirt when piston head is pushed over it. This significanly expands the amount of farms which can be created since now the farmland can remain after breaking the crops ontop of it. The configurable water search radius determines how far away a water source counts as "nearby" for the protection check.
Full Config Reference
settings:
# Turn instant processing on or off per block type.
instant-furnace: true
instant-smoker: true
instant-blast-furnace: true
instant-brewing-stand: true
instant-campfire: true
# Fuel cost for instant smelting.
# 1.0 = normal fuel use
# 2.0 = double fuel use
fuel-cost-multiplier: 2.0
# Safe fuel mode:
# true = only use real burn times learned from real furnace burn events
# false = can guess burn times for fuels it has not seen yet
safe-fuel-mode: true
# ANIMALS
# Master toggle for the animal features below.
instant-animals: true
# Instantly tames tameable mobs when interacted with.
animals-instant-tame: true
# Babies from breeding grow up right away.
animals-instant-grow: true
# Reset love mode after breeding so they can breed again right away.
animals-reset-breed-cooldown: true
# Feeding cost uses fuel-cost-multiplier (whole numbers only).
animals-feed-uses-multiplier: true
# When paying extra feed cost, pull items from shulkers too.
animals-feed-use-shulkers: true
# When paying extra feed cost, pull items from bundles too (also checks nested bundles).
animals-feed-use-bundles: true
# Max bundle nesting depth used for animal feed item searches (bundle inside bundle).
# 1 = only top level bundle contents
animals-feed-bundle-max-depth: 4
# AUTO PLANT
# Auto replant crops when you break fully grown crops.
auto-plant: true
# Allow auto plant in creative.
auto-plant-allow-creative: false
# When paying seeds or storing drops, pull items from shulkers too.
auto-plant-use-shulkers: true
# When paying seeds or storing drops, pull items from bundles too (also checks nested bundles).
auto-plant-use-bundles: true
# Max bundle nesting depth used for auto plant item searches (bundle inside bundle).
# 1 = only top level bundle contents
auto-plant-bundle-max-depth: 4
# How many ticks to keep trying to replant before giving up (1 try per tick).
replant-tries: 1
# BONE MEAL MAX GROW
# 1 bone meal can force max growth (only consumes if it can do something).
bonemeal-max-grow: true
# Max applyBoneMeal loops per target (safety cap).
bonemeal-max-loops: 1
# Bamboo height cap when using max grow bone meal.
bonemeal-bamboo-cap: 16
# Sugar cane height cap when using max grow bone meal.
bonemeal-sugar-cane-cap: 3
# Cactus height cap when using max grow bone meal.
bonemeal-cactus-cap: 3
# VILLAGERS
# Reset villager trade uses and demand when you interact.
villagers-reset-trade-cooldown: true
# Zombie villagers that are already converting will finish almost instantly.
villagers-instant-cure: true
# Try to assign job site to nearby unemployed villagers fast.
villagers-instant-workbench-update: true
# Search range in blocks for villagers to assign when placing a job site block.
villagers-instant-workbench-range: 1
# BULK CRAFTING
# Bulk crafting with recipe book "make all" on full stacks.
bulk-crafting: true
# Bulk crafting can pull inputs from shulkers.
bulk-crafting-use-shulkers: true
# Bulk crafting can pull inputs from bundles (also checks nested bundles).
bulk-crafting-use-bundles: true
# Max bundle nesting depth used for bulk crafting item searches (bundle inside bundle).
# 1 = only top level bundle contents
bulk-crafting-bundle-max-depth: 4
# BULK TRADING (VILLAGERS)
# Double click a villager trade to do as many trades as possible.
villagers-bulk-trading: true
# Bulk trading can pull inputs from shulkers.
villagers-bulk-trading-use-shulkers: true
# Bulk trading can pull inputs from bundles (also checks nested bundles).
villagers-bulk-trading-use-bundles: true
# Max bundle nesting depth used for bulk trading item searches (bundle inside bundle).
# 1 = only top level bundle contents
villagers-bulk-trading-bundle-max-depth: 4
# If true, keep only one max stack in inventory and drop the rest on the ground.
villagers-bulk-trading-drop-over-64: true
# How many ticks you have to click the same trade twice to trigger bulk trading.
# 20 ticks = 1 second
villagers-bulk-trading-double-click-ticks: 10
# SEA PICKLES FAST PLACE
# Place sea pickles up to 4 fast.
sea-pickles-fast-place: true
# Sea pickle placing can pull from shulkers.
sea-pickles-fast-place-use-shulkers: true
# Sea pickle placing can pull from bundles (also checks nested bundles).
sea-pickles-fast-place-use-bundles: true
# Max bundle nesting depth used for sea pickle item searches (bundle inside bundle).
# 1 = only top level bundle contents
sea-pickles-fast-place-bundle-max-depth: 4
# ANVIL XP CAP
# If true, removes the vanilla "Too Expensive!" cap (40 levels).
# Since this UI is client-side you will still see "Too Expensive!" but it will let you enchant anyway.
# Temporary text shown on the output item tells you the amount of experience levels needed.
anvil-unlimited-repair-cost: true
# Max level cost allowed by the anvil when anvil-unlimited-repair-cost is true.
# Vanilla default is 40
# Set to 2147483647 to basically remove the cap
anvil-max-repair-cost: 2147483647
# Allow combining elytra + netherite chestplate in an anvil.
# This will result in the elytra texture. If you care about trims and how they look,
# consider using the armored elytras datapack instead.
armored-elytra: true
# DURABILITY SAFETY
# Stop tools from breaking at 0 durability.
prevent-tool-break: true
# Stop armor from breaking at 0 durability.
prevent-armor-break: true
# INVENTORY TOTEM (NO HOLD)
# Use a totem from your inventory when you would die.
inventory-totem: true
# Totem search can include shulkers.
inventory-totem-use-shulkers: true
# Totem search can include bundles (also checks nested bundles).
inventory-totem-use-bundles: true
# Also search ender chest for a totem (same checks).
inventory-totem-check-ender-chest: true
# If true, do nothing when you are already holding a totem.
inventory-totem-skip-if-held: true
# Max bundle nesting depth used for inventory totem searches (bundle inside bundle).
# 1 = only top level bundle contents
inventory-totem-bundle-max-depth: 4
# SILK TOUCH RECOVERY
# Try to recover blocks when breaking with silk touch in cases where vanilla would not drop it.
silk-touch-recover-blocks: true
# Allow silk touch recovery in creative.
silk-touch-recover-allow-creative: false
# Allow silk touch to drop the spawner block.
silk-touch-spawner-drop-spawner: true
# Allow silk touch to drop spawn eggs (if supported by the server logic).
silk-touch-spawner-drop-egg: true
# Amount of spawn eggs to drop when enabled.
# 0 = no egg
silk-touch-spawner-egg-amount: 1
# Blocks that should never be recovered by silk touch recovery.
silk-touch-recover-blacklist:
- BEDROCK
- END_PORTAL_FRAME
- END_PORTAL
- NETHER_PORTAL
- STRUCTURE_BLOCK
- JIGSAW
- BARRIER
- LIGHT
# BUNDLE SCROLLING
# Requires PacketEvents as a dependency. (https://www.davids-repo.dev/cdn/packetevents.jar)
# When you scroll past the end of the 8-slot bundle UI, the plugin rotates the bundle contents.
bundle-scroll: true
# Minimum number of item stacks inside the bundle before scrolling rotation is allowed.
# Up to 12 it will show all of them, but once you go past that it switches to the 8 item UI.
# So having this at 13 is the sweet spot.
bundle-scroll-min-stacks: 13
# How many bundle items the client shows in the scroll UI at once.
# Vanilla is 8.
bundle-scroll-window-size: 8
# How many pages to shift on each wrap.
# Each page is bundle-scroll-window-size items.
# With window-size 8 and step 1, it shifts by 8.
bundle-scroll-step: 1
# Cooldown between rotations (in ticks). 0 disables cooldown.
bundle-scroll-cooldown-ticks: 1
# Mud spread: after vanilla mud creation (water bottle on dirt),
# spread to nearby dirt blocks by checking only the 4 sides.
mud-spread: true
# Max number of side steps away from the first mud block.
mud-spread-range: 64
# How many blocks to try each step.
mud-spread-blocks-per-step: 16
# How many ticks between each step.
mud-spread-step-interval-ticks: 10
# CONCRETE POWDER IN WATER
# Convert concrete powder item entities floating in a full water source block (level 0)
# into their corresponding concrete items. Flowing water and waterlogged blocks do not count.
# Also converts concrete powder found inside storable items (shulker boxes, bundles)
# when those item entities are themselves sitting in a water source block.
concrete-powder-in-water: true
# When scanning a shulker box item floating in water, also convert concrete powder inside it.
concrete-powder-in-water-use-shulkers: true
# When scanning a bundle item floating in water, also convert concrete powder inside it
# (also checks nested bundles).
concrete-powder-in-water-use-bundles: true
# Max bundle nesting depth used for concrete powder item searches (bundle inside bundle).
# 1 = only top level bundle contents
concrete-powder-in-water-bundle-max-depth: 4
# PISTON PROTECT FARMLAND
# When a piston head extends or retracts over farmland, the farmland block is restored
# one tick later if piston motion would have trampled or converted it to dirt.
# Only protects farmland that still has a reachable water source — a water block at any
# level (0–9), flowing water, or any waterlogged block — within the radius below.
piston-protect-farmland: true
# Search radius in blocks (Chebyshev / cube) around the farmland block used to decide
# whether water is close enough to keep it hydrated. Vanilla hydrates farmland when
# water is within 4 blocks horizontally, so 4 is the recommended value.
piston-protect-farmland-water-radius: 4
