Links
Tags
Creators
Details
All versions
1.1.0-Beta
Beta
A Best Crates 1.1.0 (1.21/1.21.11)4 months ago 26
Compatibility
Minecraft: Java Edition
1.21.x
Platform
Paper
Changes
Changelog
All notable changes to the ABestCrates project are documented in this file.
[1.1.0] - 2026-06-20
Added
- Two crate modes:
GAMBLE— rolls a reward using weights and rarity multipliers.CHOOSE— allows the player to select a reward without gambling.
- Crate particle effects:
RING,SPIRAL,HELIX, andDYSON_SPHERE. - A personalized virtual key counter displayed below each crate hologram.
- Global and per-crate options for enabling the virtual key display.
- Placeable crate items that are automatically linked to their crate definition.
- The
/abc givecrate <player> <crate> <amount>command. - The
abestcrates.crateitempermission. - A command-free key distribution workflow in the GUI:
- select a physical or virtual key,
- select a crate,
- select a player,
- enter the amount in chat.
- Multiple key requirements for a single crate.
- Vault economy costs for opening crates.
- Per-player and per-crate opening cooldowns.
- Permission requirements for individual crates.
- Optional pushback for players who do not meet crate requirements.
- Milestones that grant bonus rewards for consecutive openings of the same crate.
- Global and per-player reward limits.
- Required and blocked permissions for individual rewards.
- An automatically scalable reward weight system.
- Configurable rarity-based weight multipliers in
config.yml. - Item rewards containing up to 27 items with a dedicated GUI editor.
- Unlimited commands assigned to a reward.
- Dedicated reward roll logging in
reward-rolls.log. - Opening counts, cooldowns, limits, and player streaks stored in
player-data.yml. - Custom preview and opening GUI titles for every crate.
- A PlaceholderAPI expansion with the following placeholders:
%abestcrates_virtual_<crate>%%abestcrates_physical_<crate>%%abestcrates_total_<crate>%%abestcrates_opened_<crate>%
Expanded
- The crate GUI editor with crate modes, effects, key counters, costs, cooldowns, permissions, pushback, key requirements, milestones, and GUI titles.
- The reward GUI editor with rarity, weight, commands, item bundles, permissions, broadcasts, fireworks, and limits.
- The reward system with functional item, command, and mixed reward types.
- Mass Open with multiple key requirements, reward limits, economy costs, and rarity weights.
- The key system with safe splitting of large physical key amounts into multiple stacks.
- Crate ID renaming to also update key requirements, crate items, and keys held by online players.
- Custom item support by preserving complete Bukkit
ItemStackmetadata, including data from Nexo, ItemsAdder, Oraxen, ExecutableItems, and MMOItems. - Holograms with owner-only virtual key information.
- Crate block protection and automatic visual refreshing after configuration changes.
Integrations
- Added optional Vault integration for crate opening costs.
- Added optional PlaceholderAPI integration with version
2.11.6as aprovideddependency. - Added soft dependencies for Vault, PlaceholderAPI, Nexo, ItemsAdder, Oraxen, ExecutableItems, and MMOItems.
Configuration
- Added the
virtual-key-displaysection. - Added the
particlessection. - Added the
mass-open.max-at-oncesafety limit. - Added configurable rarity multipliers.
- Added messages for costs, cooldowns, milestones, CHOOSE crates, permissions, and crate items.
- Preserved compatibility with the previous
crates.ymlformat; existing single-item rewards are automatically loaded by the new reward system.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:HuFreMHp:qXU0Irsr"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:HuFreMHp:qXU0Irsr"
}

