Replenish++СкачатьСкачатьСкачатьСкачатьСкачатьСкачатьСкачать
ВЕРСИИ (7)
release
Replenish++ 7.0.2 - 26.3
7.0.2-26.37 окт. 2026 г.138Minecraft: 26.3paper, purpur
Что нового
## **ReplenishPlusPlus v7.0.2 - "One Carrot Short"**
**Release Date:** 2026-10-07
This is a small but important fix release. Carrots and potatoes were paying out one item less than vanilla on every mature harvest. That's fixed, and a few other rough edges got cleaned up too.
### ⚠️ Before You Upgrade
* **Changed behavior:** mature carrots and potatoes now pay `2 + B(fortune)` instead of `1 + B`, matching vanilla 26.3 exactly.
* **Changed behavior (dev mode):** profiler auto-stop timeouts are now only read from `--timeout` or the positional value right after `start`; numbers belonging to other flags no longer trigger a surprise early report.
### 🎵 What's New
* **Pre-release notice in `/rpp version`:** if a newer beta or alpha exists on Modrinth, you'll now see it listed under your update status with a click-through to its page, while the actual "update available" recommendation stays on stable releases only. Useful if you like testing early builds without ever being told a beta is the new version.
### 🛠️ Fixes & Tweaks
* **Carrot and potato under-payment:** the transcription dropped each crop's unconditional first loot pool, so every mature harvest paid one carrot or potato less than vanilla (verified against the actual 26.3 server jar and Paper's patch set). Both crops now encode both pools; wheat, beetroot, nether wart, and cocoa were already exact and are unchanged.
* **Update check noise:** a newer beta or alpha on Modrinth could previously be advertised as an update to stable users. The check now only recommends `version_type: release` versions; the JSON parsing, safety filters, and GitHub fallback all work exactly as before.
* **Dev-mode profiler timeouts:** `/spark profiler start --only-ticks-over 100` or `--interval 4` used to schedule an accidental 4 or 100 second auto-stop. Only `--timeout N` and `start N` set a window now; `start 60` still works, and absurd values still clamp to 24 hours.
* **Seed refund edge:** the one replant-failure path that skipped the seed refund (missing age data, effectively unreachable) now refunds like every other failure, keeping the documented "exactly two no-refund cases" true.
* **`/rpp debug` hardening:** the spark-backed lines no longer crash the screen if spark reports null MSPT or CPU statistics on your platform.
* **`/rpp toggle global`:** if saving config.yml fails, the leftover `config.yml.tmp` is now cleaned up properly and a failed cleanup is logged instead of silently ignored.
* **Code cleanups:** inverted-boolean rename in the pad arrival check, `Comparator.comparing` in the pad manager, the pad config menu's long loader method split, a duplicated switch branch removed, and unused imports and a dead local deleted. No behavior changes.
release
Replenish++ 7.0.1 - 26.3
7.0.1-26.35 окт. 2026 г.37Minecraft: 26.3paper, purpur
Что нового
## **ReplenishPlusPlus v7.0.1 - "Rebuilt From the Build Up"**
**Release Date:** 2026-10-05
A big maintenance release rather than a feature drop: the build system moved from Maven to Gradle, the update checker learned to read Modrinth first, dev mode's growth feature was redesigned around events, and Teleport Pads got a hardening pass that closes every hole found in a full adversarial audit. The harvest pipeline itself behaves the same as 7.0.0 for players; if you never touch pads or dev mode, this is a drop-in jar swap.
### ⚠️ Before You Upgrade
* **Changed behavior:** update checks now query Modrinth first and only fall back to GitHub. In dev mode, instant growth now only affects crops a dev player places themselves, and the inventory clear no longer runs while you're dead or spectating. Placing a pad on a spot that already holds one is now refused with a message instead of misbehaving.
### 🎵 What's New
* **Modrinth update checks:** the startup check now asks Modrinth for the newest release matching your exact Minecraft version (or anything on the same 26.3 line, so a 26.3.2 server still matches versions tagged just 26.3). If Modrinth is unreachable it quietly falls back to GitHub releases, and in-game download links point at the Modrinth page of the version it found.
* **Dev-mode instant growth, redesigned (work in progress, ops only):** crops a dev player places pop in fully grown, and any crop that vanilla grows within 12 blocks of a dev player snaps to max age the moment it grows. Farmer-villager farms far away stay vanilla until a dev player walks near, which is the honest tradeoff for the old scanner being removed.
* **Dev-mode no-trample:** a new seventh dev toggle. Farmland can't be trampled back to dirt while dev is on, so sprint-jumping your own farm and mobs wandering through it stop punching crops out of the ground. Other players' trampling stays vanilla.
* **Safer pad arrivals:** warping now checks the two blocks above the destination pad and refuses with a clear message if your feet or head would land inside lava, fire, sweet berry bush, a wither rose, or a low ceiling. Destinations in unloaded chunks teleport straight through instead of the old phantom-air read, which could wipe a perfectly good link.
* **Honest pad placement:** putting a pad where one already exists is refused with "There's already a pad here". If a place fails for any reason, the stuck end-portal-frame block is removed and your pad item is refunded, instead of the old behavior that sometimes said "Pad placed" and lied.
* **Optional nightly builds:** CI can now publish a rolling `nightly` pre-release with commit changelog, SHA-256/512 hashes, and a dependency table. Off by default; flip `releaseDevBuilds=true` in `gradle.properties` if you want it.
### ⚡ Performance
* **Re-benchmarked honestly:** one player farming flat-out (20 crops/sec, dev mode on) costs about **2% of one server thread** on a default JVM launch: 1.98% measured over a 5-minute spark capture on Paper 26.3-151, Ryzen 5 5600, 2 GB heap, TPS pinned at 20.00 with 0.92ms median MSPT. The full capture is committed at `benchmark/default-jvm.sparkprofile`. The old 0.16% headline was a tuned-JVM best case that most servers will never see; the new BENCHMARK.md explains the per-boot spread and quotes the number real servers get. Scaling is linear in flat-out farmers: roughly 20% of a thread at 10, ~50% at 25, ~100% at 50.
* **Growth scanning eliminated:** the old periodic block scan (measured at 1.02% of the server thread on dense auto-farms) is gone entirely; growth is now pure events (`BlockPlaceEvent` + `BlockGrowEvent`), and the dev tick task does nothing but the once-per-second inventory scan.
* **Pad saves debounced and atomic:** GUI-click bursts write `pads.yml` at most once per tick through a temp file plus atomic move, and shutdown force-writes any pending save so nothing is lost. Previously every click hit the disk.
* **Queue memo widened:** the chunk-loaded cache serving replant decisions went from 16 to 64 slots, so large multi-chunk farms stop evicting entries every replant.
* **Cocoa replant check narrowed:** the queue now re-validates the specific facing it's about to plant against its own jungle log, so a log broken between decide and replant can no longer produce a popping crop (also closes a cocoa-minting dupe).
### 🛠️ Fixes & Tweaks
* **Update check hardening:** response bodies are capped at 2 MiB, JSON is parsed structure-aware (text that merely looks like a version inside other fields can never win), and every candidate version string must match a safe character set before it can reach a click URL or chat, closing a Modrinth-side injection vector. Failed checks complete as failed instead of hanging as pending, shutdown can't fork a second HTTP chain, and an unparseable local version now logs "status unknown" instead of a misleading verdict.
* **Dev-mode harvest counter is now permission-gated:** only the console and players actually in dev mode can start, stop, or toggle the tracking window; a stranger typing `/spark profiler` commands does nothing. Stopping always works, even after `harvest-counter` was switched off and reloaded, and re-running `start` mid-window no longer extends a timed window. The `--timeout 60` flag form works, absurd timeout values clamp instead of crashing, and command-blocker plugins cancelling `/spark` can't puppet the counter.
* **Dev-mode growth edge cases:** enabling dev near the bedrock floor or build limit no longer throws (the sweep clamps to world height and only touches loaded chunks), and any inventory-clear pass that actually deleted something now invalidates the seed cache, so the next break can't read a stale seed slot.
* **Pad persistence:** a corrupted `pads.yml` now logs a loud warning instead of silently loading zero pads and overwriting your data on the next change, and a leftover `pads.yml.tmp` from an interrupted save is swept at startup.
* **Pad orphan self-heal:** when a chunk loads, registered pads whose frame block was destroyed externally (like by `/setblock` or a world edit) are removed in one batched pass, links pointing at them are cleared, and their slot in the 56-per-player cap is freed. Persistent ghost display entities are still wiped on every chunk sync.
* **Pad rename safety:** a rename prompt that outlived its pad (you closed the menu, the pad got picked up, someone else placed a new one there) can no longer rename the wrong pad; ownership is re-checked at apply time.
* **Pad menu spam:** menu clicks are throttled to one action per player per second, so GUI spam can't churn the registry or respawn icon displays, and picking a pad up cancels any pending rename prompt.
* **Pad world names:** world names containing semicolons now round-trip through `pads.yml` correctly.
* **`/rpp toggle global`:** the `config.yml` write is atomic (temp file plus move), and if it fails you get an explicit "couldn't be written" message plus a severe log instead of the old silent swallow that reset your choice on restart.
* **`/rpp reload`:** when the file was broken and previous settings stayed live, the output now says "Nothing was applied" instead of claiming your changes went live.
* **Backward compatibility:** `/rpp` and `/replenish` aliases still work, all 7.0.0 config and pads files load unchanged, and custom edits to `en_us.yml` are kept (missing or broken keys silently fall back to the built-in English text).
### 📚 Docs
* **BENCHMARK.md:** rewritten from scratch: honest ~2% headline, a per-slice breakdown of where the cost goes, player-count scaling, and a capture-conditions section explaining why JVM launch flags swing the reading between 0.16% and 2%.
* **benchmark/default-jvm.sparkprofile:** the offline spark profile of the benchmark run, committed so anyone can verify the numbers.
* **DEV_MODE.md:** updated for the event-driven growth redesign, `no-trample`, the gated harvest counter, and the packaged testing world (`devmode/Server Testing.7z`, farm at -75 5 -91) that reproduces the benchmark.
* **AGENTS.md:** rewritten for the Gradle build, Modrinth checking, the removal of the crop-drop fallback, and a new Conventional Commits rule.
* **README.md:** Modrinth listed as the recommended install source, a "coming from Replenish 6.x?" warning, and the `checkUpdates` comment now describes both sources.
* **THIRD_PARTY_NOTICES.md:** Gson (Apache 2.0) added for the Modrinth JSON parsing.
**Full Changelog**: https://github.com/Mitra-88/ReplenishPlusPlus/compare/7.0.0...7.0.1
release
Replenish++ 7.0.0 - 26.3
7.0.0-26.324 сент. 2026 г.38Minecraft: 26.3paper, purpur
Что нового
## **ReplenishPlusPlus v7.0.0 - "Rebuilt From the Soil Up"**
**Release Date:** 2026-09-24
This is not a normal update, it's a ground-up rewrite of the entire plugin: new harvest engine, new queue, new config system, new commands, plus a brand-new Teleport Pad feature. The biggest release Replenish has ever had.
### ⚠️ Before You Upgrade
* **Paper/Purpur on Minecraft 26.3 only:** Spigot and older server versions are no longer supported.
* **Remove Replenish 6.x completely first:** the plugin was rebuilt and renamed, so nothing carries over. Delete the old Replenish jar and the whole `plugins/Replenish/` folder, old config.yml included, before installing this one. Running both at the same time would replant crops twice.
* **Permissions renamed:** `replenish.*` is now `replenishplusplus.*` (op defaults are unchanged, so most servers need to do nothing).
* **Messages moved:** the old `messages:` section in config.yml is gone, player messages now live in `plugins/ReplenishPlusPlus/en_us.yml` and reload live with `/rpp reload`.
* **`replantDelayTicks` changed:** default is now 3 with a maximum of 10, and it means "a random tick between 1 and this number" so big farms replant smoothly.
* **New license:** CC BY-NC-SA 4.0, credit and share forks, no reselling, commercial use possible with permission.
### 🎵 What's New
* **Teleport Pads (work in progress):** place a pad, link it to another, step on it, warp across your base, Hypixel SkyBlock style, with 56 icons, custom names, arrival directions, and a sneak-right-click config menu. Still being polished, so it's op-only for now, but it already plays great: hand the permission to players you trust if you want base warp pads.
* **Per-player toggle:** `/rpp toggle` lets each player switch auto-replant off for themselves without touching the server config.
* **Sneak to bypass:** sneaking while breaking now plays the vanilla way, and the new `sneakToBypass` setting controls it.
* **Action bar messages:** the new `messageStyle` setting shows notifications in chat, on the action bar, or not at all.
* **Admin diagnostics:** `/rpp debug` shows TPS, tick times, heap, uptime, and replant queue health, and adds long-window MSPT and CPU stats when spark is installed.
* **Update notices:** ops get an in-game heads-up with a clickable download link the moment a new release is out.
* **Vanilla-exact drops:** mature crops drop exactly what Minecraft drops, Fortune included, with the numbers taken straight from vanilla's loot tables.
* **Hidden dev sandbox:** op-only `/rpp dev` for testing farms (instant crops, no trample, spark harvest reports), documented in DEV_MODE.md.
### ⚡ Performance
* **Measured under load:** a live 5-minute capture of non-stop farming (about 20 crops per second, Fortune III netherite hoe) kept TPS at a flat 20.00 with a median tick of 9.62ms, while the entire plugin cost **0.16% of one server thread**. Full numbers live in BENCHMARK.md.
* **Drop math, precomputed:** mature drops come from drop tables transcribed out of vanilla's loot files, so the old per-harvest loot-table and enchantment-map machinery is gone entirely; reading Fortune is now one direct call on the tool.
* **Spread-out replants:** replants land on a random tick inside the delay window instead of piling into one tick, so per-tick cost stays flat no matter how you tune the delay.
* **A real safety valve:** the per-tick cap plus the new `maxReplantsQueued` limit (default 4096) turn a farm rush into deferred replants and loud warnings instead of lag, with a hard ceiling of roughly 20,480 crops/sec.
* **Smarter chunk checks:** a small chunk cache stops multi-chunk farms from re-asking the server the same question on every replant.
* **Cheaper replant writes:** replanted crops skip redundant physics updates while still appearing for players instantly.
* **Lighter seed handling:** each player's seed slot is cached and consumed by editing the item in place, so the common path is one map lookup and the client gets one batched inventory sync instead of a packet per seed.
* **Linear scaling, with headroom:** ~30 players farming flat-out is around 5% of a thread, ~150 players around 24%.
### 🛠️ Fixes & Tweaks
* **Dupe-proof harvesting:** a break cancelled by another plugin no longer eats your seed or pays drops twice, guarded by a two-phase listener.
* **Seeds come back:** a replant that fails (missing anchor, unloaded chunk) refunds your seed instead of silently swallowing it.
* **Clearer reloads:** `/rpp reload` now names every invalid config value instead of quietly ignoring it, and a broken config.yml can't be clobbered by `/rpp toggle global`.
* **Version mismatch warnings:** running on a newer or older Minecraft line now warns on startup in both directions, while Paper build patches stay silent.
* **Forgiving sound names:** `ENTITY_ITEM_PICKUP`, `entity.item.pickup`, and `minecraft:entity.item.pickup` all work in the config now.
* **Old habits keep working:** `/replenish` and `/rpp` are aliases of `/replenishplusplus`, so command blocks and muscle memory survive the rename.
### 📚 Docs
* **DEV_MODE.md:** everything the hidden dev sandbox does, in one place.
* **BENCHMARK.md:** real measured numbers for harvest rate and server-thread cost from a live spark capture.
**Full Changelog**: https://github.com/Mitra-88/ReplenishPlusPlus/compare/6.1.0...7.0.0
release
Replenish++ 6.1.0
6.1.012 июл. 2026 г.187Minecraft: 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2, 26.3bukkit, paper, purpur, spigot
Что нового
## **Replenish++ v6.1.0 – “Tuned to Perfection”**
**Release Date:** 2026-07-12
### 🎵 Fresh Feedback
* **Customizable Sound Effects:** Server owners can toggle these sounds on/off and choose from a variety of effects to match their server’s vibe.
* **Colored Console Logs:** Important status messages, warnings, and errors now appear in distinct colors, making the console output much easier to scan at a glance.
### ⚡ Performance
* **Fixed a Stubborn Inventory Scan Bug:** The seed-finding cache would sometimes rebuild itself on every single harvest when a player had no seeds in their inventory, causing unnecessary lag.
### 🛠️ Fixes & Improvements
* **Safer Offhand Handling:** Added missing null checks for offhand items, preventing potential errors when a player had nothing in their secondary hand.
* **Gentler Config Updates:** When your config file needs a migration, the console messages are now friendlier and clearly show the old → new version, reassuring admins that their custom settings are safe.
*
### 📚 Better Documentation
* **Readme Revamp:** The readme now covers sounds, messages, and every config option in detail.
* **In-Depth Guide:** A dedicated guide explains the plugin mechanics, commands, and usage patterns.
* **Clearer Contributing Rules:** Updated bug report template and PR policy so contributors know exactly what’s expected.
**Full Changelog**: https://github.com/Mitra-88/Replenish/compare/6.0.0...6.1.0
<img width="2250" height="1502" alt="Sea-Lion-Baby-Max-0001-8088" src="https://github.com/user-attachments/assets/9a2c6892-ffc4-49ef-8ee4-ef8342c2c2e8" />
release
Replenish++ 6.0.0
6.0.08 июл. 2026 г.18Minecraft: 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, paper, purpur, spigot
Что нового
## [6.0.0] – 2026-07-06
### 🚀 Now runs on everything!
- **From 1.17 to future versions:** Replenish works on any Minecraft version from 1.17 up.
### ⚡ Better Performance
- Crops replant quicker thanks to pre-cached block states.
- Cocoa beans now have their own clean logic.
- Default queue size changed to 1024 as most server won't reach the old limit 4096.
### 🛠️ Stability & Reliability
- **No More Console Flooding:** Added smart warning throttling that groups identical errors together
- **Offhand Slot Fixed:** Properly handles offhand items using the official API
### 💬 Messages & Communication
- **Sharper Chat Messages:** All replant feedback messages are now clearer and more grammatically correct.
- **Smarter Version Detection:** The `/replenish version` command now shows if you're running a development build or stable release, plus more detailed Java info.
### 📦 Configuration Changes
- **Project Website:** Added plugin metadata link so users can easily find more info.
### 🚫 Removed
- **Decorative Flowers Removed:** Torchflowers and pitcher plants are now treated as flowers, not replantable crops. Only crops grown from seeds on farmland will be replanted.
---
### Compatibility
- Requires a Bukkit, Spigot, or Paper server.
- ✅ `26.2` - Replenish actively develops for and supports this version.
- ⚠️ `1.17.1`, `1.18.2`, `1.19.4`, `1.20.6`, `1.21.11` and `26.1` - these versions are still supported, but are not a priority, and may be dropped in a future release.
**Full Changelog**: https://github.com/Mitra-88/Replenish/compare/5.4.1...6.0.0
release
Replenish++ 5.4.1
5.4.129 июн. 2026 г.10Minecraft: 26.2bukkit, paper, purpur, spigot
Что нового
## **Replenish v5.4.1 – "Faster & More Reliable"**
**Release Date:** 2026-06-29
### ⚡ Better Performance
* **Smoothest Experience Yet:** Replenish now runs faster and uses less memory, especially during large harvests. Crops are replanted more quickly with less strain on your server.
### 🛠️ Stability Fixes
* **No More Crashes:** Fixed several issues that could cause the plugin to crash or freeze, especially in busy servers.
* **Fixed Replant Loops:** Resolved a rare bug where certain crops would get stuck trying to replant over and over.
* **More Reliable Seed Tracking:** The plugin now handles inventory changes better, preventing seeds from being missed when replanting.
* **Safer Reloads:** The console now warns you if reloading the config interrupts any pending replanting tasks.
### 💬 Improved Messages
* **Clearer Error Messages:** When a decorative flower can't be replanted, the message now clearly says "placed flower" instead of the confusing "decorative block."
**Full Changelog**: https://github.com/Mitra-88/Replenish/compare/5.4.0...5.4.1
release
Replenish++ 5.4.0
5.4.028 июн. 2026 г.13Minecraft: 26.2bukkit, paper, purpur, spigot
Что нового
## **Replenish v5.4.0 – "Smarter Farming"**
**Release Date:** 2026-06-29
### 🌱 More Crops Supported
* **More Vanilla Crops:** Replenish now supports **Torchflowers**, **Pitcher Crops**, and **Beetroots**.
* **Copper Tools:** **Copper Axes** and **Copper Hoes** are now fully supported.
### ⚡ Better Performance
* **Runs More Efficiently:** Reduced the amount of work Replenish performs behind the scenes, especially during large harvests.
* **Lower Resource Usage:** Uses less memory and processes crop replants more efficiently.
* **Smoother on Busy Servers:** Optimized several internal systems to keep farming responsive, even with lots of players harvesting at once.
### 🛠️ Fixes & Improvements
* **Fixed Rare Replant Loops:** Resolved an issue that could cause certain crops to repeatedly attempt replanting.
* **Safer Reloads:** The console now warns if pending replant tasks are interrupted during a configuration reload.
### 🔄 Stay Up to Date
* **Automatic Update Checks:** Replenish can now notify server owners when a newer version is available.
**Full Changelog**: https://github.com/Mitra-88/Replenish/compare/5.3.0...5.4.0