Compatibility
Minecraft: Java Edition
1.21โ1.21.10
Platforms
Tags
Creators
Details
Licensed MIT
Published 9 months ago
Updated 9 months ago
Essential Utils
A Folia-optimized survival convenience plugin for Paper/Folia 1.21.8.
Adds smooth, lag-free mechanics like tree chopping, vein mining, and auto-farming.
โจ Features
-
๐ฒ Tree Assist (axe)
- Incrementally chops connected logs with per-block delay (smooth, no spikes).
- Leaf checks to avoid cutting adjacent trees.
- Optional auto-replant (saplings/propagules), retries with cooldown until successful.
- Durability decreases once per N blocks, not per block.
-
โ Vein Mine (pickaxe)
- Incrementally mines connected ore veins.
- Enforces Minecraft tool tier rules:
- If tier too low โ no break, alert shown (rate-limited).
- Delay per block scales with vein size.
- Durability decreases once per N blocks.
-
๐พ Auto Farm (hoe)
- Harvests only mature crops in a radius.
- No auto-replant (intentional).
- Optimized for local chunk scans.
-
โ Activation
- Hold Shift for 5 seconds โ arms tool (progress bar shown).
- Once armed, stays armed even after releasing Shift.
- Deactivates only when item is changed or player quits.
-
๐ก Safety
- Respects protections (future: WorldGuard/GriefDefender hooks).
- Requires loaded chunks.
- Folia region-safe scheduling only (no async hacks).
-
๐ Performance
- Centralized per-player tick budget.
- Strict per-feature caps.
- Smooth staggered breaking.
๐ Project Structure
src/main/java/net/ppekkungz/essentialUtils/
โโโ EssentialUtils.java
โโโ config/PluginConfig.java
โโโ state/StateManager.java
โโโ listener/ActivationListener.java
โโโ work/
โ โโโ WorkService.java
โ โโโ WorkItem.java
โ โโโ WorkQueue.java
โโโ features/
โ โโโ Feature.java
โ โโโ tree/TreeAssistFeature.java
โ โโโ vein/VeinMineFeature.java
โ โโโ farm/AutoFarmFeature.java
โโโ util/
โ โโโ HarvestUtil.java
โ โโโ Materials.java
โ โโโ Ores.java
โโโ indicator/
โโโ BossBarIndicator.java
โโโ ActionBarIndicator.java
โก Usage
- Drop
EssentialUtils-x.x.x.jarinto yourplugins/folder. - Run with Paper 1.21.8+ and Folia.
- Config (
config.yml) is generated on first run.
Commands
/eutils reload # reloads config.yml
Permission
essentialutils.admin # required for /eutils reload (default: op)
โ Config Highlights
activation:
holdSneakSeconds: 5
requireToolWhileHold: true
features:
treeAssist:
breakDelayTicks: 2
durabilityPerNBlocks: 8
replant:
enabled: true
retryCooldownTicks: 5
maxRetries: 10
veinMine:
breakDelayBaseTicks: 1
breakDelayExtraPer16: 1
durabilityPerNBlocks: 10
alertOnInsufficientTier: true
autoFarm:
replant: false
๐ Build
Requires:
- JDK 21
- Gradle (wrapper included)
Build with:
./gradlew build
Jar output:
build/libs/essential-utils-<version>.jar
โ TODO / Roadmap
- [x] Tree Assist (incremental, replant, durability-per-N)
- [x] Vein Mine (incremental, tier alerts, delay scaling, durability-per-N)
- [x] Auto Farm (mature crops only, no replant)
- [x] Activation (Shift-hold progress, persists armed, deactivates on item change)
- [x] Config reload (
/eutils reload) - [x] Folia-safe scheduling
- [x] Strict per-feature caps
- [ ] Protection hooks (WorldGuard/GriefDefender)
- [ ] BossBar indicators during ACTIVE
- [ ] Configurable durability rules per tool type
- [ ] Additional auto-farm crops (bamboo, sugarcane, kelp)
- [ ] Multi-language messages
- [ ] Metrics toggle (bStats)
- [ ] Per-player toggle commands (enable/disable features individually)
๐ License
MIT ยฉ 2025 ppekkungz


