ModsJava
CompressCoreRK
Event-driven resource compression with tiers, cascades and ItemEdit currency support.
⬇ Download on SpigotCompressCoreRK
Safe, configurable and event-driven resource compression
Originally designed for FullPvP — adaptable to many game modes
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
About CompressCoreRK
CompressCoreRK was originally developed specifically for my own FullPvP server and its resource-based economy.
After testing and using it on my server, I decided to share it with the community for other server owners who may need an efficient, configurable and tier-based automatic compression system.
Although it was designed primarily for FullPvP, the plugin is not restricted to that game mode. Its chains, tiers, conversion amounts and currencies can be adapted to many different types of Minecraft servers.
The included default conversions represent the requirements of my server, but administrators can customize them through the configuration files.
Designed for FullPvP — Usable Everywhere
CompressCoreRK is especially useful for servers where players collect large quantities of resources and need to convert them into blocks or custom currencies automatically.
It can also be used in:
- FullPvP servers
- BoxPvP servers
- Prison servers
- Survival servers
- SkyBlock servers
- Grinding-based servers
- Custom economy servers
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
MAIN FEATURES
- Three default compressor tiers: T1, T2 and T3
- Higher tiers inherit every conversion from previous tiers
- Event-driven inventory processing
- Debounce and batch processing
- No global periodic player scan
- Multi-stage and cascading conversions
- Direct conversion of configured intermediate blocks
- ItemEdit ServerItem currency integration
- Original ItemEdit templates are cloned and preserved
- Generated currencies stack with original ItemEdit currencies
- Protected inventory baseline
- Deterministic compressor priority and tier resolution
- Main-hand, off-hand and inventory right-click toggling
- PDC-secured compressor identification
- Safe inventory simulation before every transaction
- Configurable chains and compressor definitions
- Validation, doctor and player debug commands
- Automatic configuration migration with timestamped backups
- Fortune-compatible Minecraft drops
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
COMPRESSOR TIERS
T1 — Resource Compressor
T1 processes the normal resource chains:
Code (Text):
RESOURCE → BLOCK → BASIC CURRENCY
Code (Text):
9 RAW_GOLD
→ 1 GOLD_BLOCK
→ 2 BASIC
T2 includes everything from T1 and adds:
Code (Text):
64 BASIC
→ 1 ADVANCED
T3 includes everything from T1 and T2 and adds:
Code (Text):
64 ADVANCED
→ 1 ELITE
Multiple compression engines are never executed simultaneously for the same player.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
DEFAULT CONVERSIONS
Gold
Code (Text):
9 RAW_GOLD
→ 1 GOLD_BLOCK
→ 2 BASIC
Code (Text):
9 RAW_IRON
→ 1 IRON_BLOCK
→ 2 BASIC
Code (Text):
9 EMERALD
→ 1 EMERALD_BLOCK
→ 4 BASIC
Code (Text):
9 RAW_COPPER
→ 1 COPPER_BLOCK
→ 3 BASIC
Code (Text):
9 DIAMOND
→ 1 DIAMOND_BLOCK
→ 4 BASIC
Code (Text):
9 ANCIENT_DEBRIS
→ 1 NETHERITE_BLOCK
→ 5 BASIC
Code (Text):
1 GOLD_BLOCK → 2 BASIC
1 IRON_BLOCK → 2 BASIC
1 EMERALD_BLOCK → 4 BASIC
1 COPPER_BLOCK → 3 BASIC
1 DIAMOND_BLOCK → 4 BASIC
1 NETHERITE_BLOCK → 5 BASIC
1 MAGMA_BLOCK → 12 BASIC
1 AMETHYST_BLOCK → 8 BASIC
1 BEACON → 64 BASIC
1 GILDED_BLACKSTONE → 16 BASIC
1 RED_GLAZED_TERRACOTTA → 10 BASIC
1 BROWN_GLAZED_TERRACOTTA → 15 BASIC
1 YELLOW_GLAZED_TERRACOTTA → 16 BASIC
1 WHITE_GLAZED_TERRACOTTA → 20 BASIC
1 BLUE_GLAZED_TERRACOTTA → 40 BASIC
For example, a GOLD_BLOCK obtained directly can be converted even if it was not previously created from RAW_GOLD.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ITEMEDIT CURRENCIES
CompressCoreRK does not manually recreate currency items.
Every server owner can design their own currencies using ItemEdit.
CompressCoreRK retrieves and clones the original ServerItem templates, preserving their name, lore, glow, components and exact ItemEdit identity.
Required ItemEdit IDs
Code (Text):
ID 1 = BASIC
ID 2 = ADVANCED
ID 3 = ELITE
First, hold the item you want to use as a currency in your main hand.
Customize its name:
Code (Text):
/ie rename <name>
Code (Text):
/ie lore add <description>
Code (Text):
/si save 1
Code (Text):
/si save 1 → BASIC
/si save 2 → ADVANCED
/si save 3 → ELITE
CompressCoreRK clones the original ItemEdit template. Generated currencies remain compatible and stack with the original currencies from your server.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
REQUIREMENTS
- Paper 1.21.x
- Java 21
- ItemEdit
- ItemEdit ServerItem IDs 1, 2 and 3 configured
Optional dependency: AutoPickup
AutoPickup is optional.
If you use AutoPickup, its AutoSmelt feature must remain disabled for chains that use RAW_GOLD, RAW_IRON and RAW_COPPER.
Code (Text):
/autosmelt
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
INSTALLATION
- Stop your server.
- Install ItemEdit.
- Place CompressCoreRK-1.0.0.jar inside the plugins folder.
- Start the server.
- Create ItemEdit ServerItems with IDs 1, 2 and 3.
- Run the validation command.
- Run the doctor command.
Code (Text):
/compressor validate
/compressor doctor
Supported configuration migrations create timestamped backup files automatically.
Do not install two different CompressCoreRK JAR versions simultaneously.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
COMMANDS
Code (Text):
/compressor help
/compressor status
/compressor list
/compressor info <id>
/compressor give <player> <id> [amount]
/compressor validate
/compressor doctor
/compressor debug [player]
/compressor reload
/compressor version
- /compressor status — Shows the global state and effective compressor.
- /compressor list — Lists available compressor definitions.
- /compressor info <id> — Shows information about a compressor.
- /compressor give <player> <id> [amount] — Gives a secured compressor item.
- /compressor validate — Validates the loaded configuration.
- /compressor doctor — Shows server, ItemEdit and internal status.
- /compressor debug [player] — Shows totals, baseline, eligibility and the latest transaction.
- /compressor reload — Reloads valid configuration safely.
- /compressor version — Shows the installed version.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW IT WORKS
CompressCoreRK uses an event-driven processing flow:
Code (Text):
Inventory event
→ Dirty player
→ Debounce
→ Processing queue
→ Inventory snapshot
→ Protected baseline
→ Compression ledger
→ Transaction simulation
→ Safe inventory commit
For example:
Code (Text):
90 RAW_GOLD
→ 10 GOLD_BLOCK
→ 20 BASIC
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
IMPORTANT NOTES
- COMMAND outputs are disabled by default and cannot be rolled back.
- ItemEdit currencies are never reconstructed manually.
- Silk Touch follows normal Minecraft loot behavior.
- Fortune uses Minecraft and Paper's normal drop calculation.
- CompressCoreRK does not force one resource per mined block.
- Only eligible quantities are processed according to the protected baseline.
- Moving, splitting or combining stacks does not make protected items eligible.
- If an output cannot be created or inserted safely, the input is not consumed.
- Only one effective compressor is used per player.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CONFIGURATION
- config.yml — General processing, performance and hook settings
- compressors.yml — Tiers, priorities, items and inherited chains
- chains.yml — Inputs, conversion amounts and outputs
- currencies.yml — ItemEdit currency mappings
- messages.yml — Plugin messages
- storage.yml — Storage-related settings
After changing the configuration, use:
Code (Text):
/compressor reload
/compressor validate
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SUPPORT AND BUG REPORTS
When reporting a problem, include the output of:
Code (Text):
/compressor validate
/compressor doctor
/compressor debug <player>
- Paper version
- Java version
- ItemEdit version
- AutoPickup version, if installed
- Relevant server console log
- Steps required to reproduce the problem
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Originally made for my FullPvP server.
Shared with the community for anyone who may find it useful.
Compress resources. Preserve identity. Protect performance.
CompressCoreRK is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 2 times (via Spigot). Download it and open it directly in the game.