Sueta

[1.21 - 26.2] AquaCrates | Fully In-Game Crates & Keys • Ro

2026-09-01

crates, crate, keys, key, rewards, gui, in-game editor, physical keys, physical crates, roll animati

·Plugin

AquaCrates
GUI crates, keys, holograms, and an in-game editor
Paper 1.21.x (incl. 1.21.11) · 26.1 · 26.2

AquaCrates is a crate plugin built around physical crates, keys, and a GUI roll animation. Players right-click a crate with a key to open it, left-click to preview prizes.

Everything is configured in-game from /aquacrates editor: create crates, link keys, set Nexo models, place crates in the world, edit holograms, and add rewards from the item in your hand.

Rewards keep custom data. Nexo items and AdvancedEnchantments stay on prizes because they are saved as the real ItemStack.

Does not register /crates, so you can migrate off CrazyCrates without a command clash.

Features

  • In-game crate and key editor
  • Physical crates you place as blocks or Nexo furniture
  • Physical or virtual keys
  • GUI prize roll with sounds and particles
  • Holograms on the crate (TextDisplays)
  • MiniMessage names, lore, and hologram lines
  • Reward weights, commands (%player%), give-item toggle
  • Global and per-player prize limits
  • Require / deny permission on individual prizes
  • Open cooldown
  • Offline key delivery (queued until they join)
  • Staff dupe alerts when a player holds too many keys

Crate modes
Set per crate in the editor under Mode.

Normal (default)
Uses that crate's own prizes and model.

Rotational
One placed crate cycles through other crates on a timer (1m, 15m, 1h, 12h, 24h, ...).
When it swaps, the active crate's rewards and model are used, and the hologram updates.
Hologram line: Rotates in: {time}

Limited
A timed crate (1m, 10m, 1h, 12h, 24h, 1w, 2w, 1mo, 3mo, ...).
When the timer ends, nobody can open it until you set or restart the timer.
Hologram line: Limited Ends In: {time}
Chat: This limited crate has ended.

How players use it

  • Right-click crate with a key → roll
  • Left-click crate → prize preview
  • Admin sneak + break → pick the physical crate back up

Dependencies

  • Required: Paper 1.21+ (1.21.11, 26.1, 26.2)
  • Optional: PlaceholderAPI, Nexo, AdvancedEnchantments

Commands
Aliases: /aquaticcrates, /acrates

/aquacrates
/aquacrates editor [crate]
/aquacrates keys [crate|key]
/aquacrates create <id>
/aquacrates give <player|all> <key> [amount]
/aquacrates giveall <key> [amount]
/aquacrates physical <player> <crate> [amount]
/aquacrates open <crate>
/aquacrates list
/aquacrates reload
/aquacrates threshold [crate] [amount]
  • give - keys. Offline players get them when they join.
  • physical - placeable crate block/item.
  • threshold - dupe-alert amount per key. 0 = off.

Permissions

aquacrates.use     - Use /aquacrates (default: true)
aquacrates.open    - Open crates (default: true)
aquacrates.admin   - Editor, give, create, reload, place/break crates (default: op)
aquacrates.alert   - See [Potential Dupe] key alerts (default: op)

PlaceholderAPI
Expansion: aquacrates
Replace tide / monthly / event with your crate or key id.

Keys

%aquacrates_keys%
%aquacrates_keys_total%
%aquacrates_total%
%aquacrates_keys_<id>%
%aquacrates_key_<id>%
%aquacrates_<id>%
%aquacrates_has_<id>%
%aquacrates_name_<id>%
  • keys / keys_total / total — how many keys the player has (all types)
  • keys_tide / key_tide / tide — how many of that key
  • has_tide — true / false
  • name_tide — display name of the key or crate

Rotational crates

%aquacrates_rotational_time_<id>%
%aquacrates_rotational_time_raw_<id>%
%aquacrates_rotational_active_<id>%
%aquacrates_rotational_active_name_<id>%
%aquacrates_rotational_next_<id>%
%aquacrates_rotational_interval_<id>%
  • time - time until next swap (e.g. 11h 5m)
  • time_raw - seconds remaining
  • active - current child crate id
  • active_name - current child display name
  • next - next child id
  • interval - configured interval (e.g. 24h)

Limited crates

%aquacrates_limited_time_<id>%
%aquacrates_limited_time_raw_<id>%
%aquacrates_limited_ended_<id>%
%aquacrates_limited_active_<id>%
%aquacrates_limited_duration_<id>%
  • time - time left (or Ended)
  • time_raw - seconds left
  • ended - true if the timer ran out
  • active - true if limited and still openable
  • duration - configured length (e.g. 2w)

Hologram placeholders
Used in crate hologram lines (editor or crates/<id>.yml):

{title}          - crate / active crate name
{stars}          - stars line
{key}            - required key name
{crate}          - crate id
{time}           - rotates in / limited ends in
{rotational_time}
{limited_time}
{limited_ended}
{active}         - active child id
{active_crate}
{active_title}   - active child name

Setup

  1. Drop AquaCrates.jar into plugins/
  2. Restart (or load) on Paper 1.21+
  3. /aquacrates editor → create a crate → link a key → add rewards
  4. Give yourself a physical crate and place it, or /aquacrates physical <player> <crate>
  5. Right-click with a key to test

Notes

  • MiniMessage is used for names, lore, holograms, and messages (gradients, <#hex>, etc.).
  • Placeholders can be turned off with placeholders.enabled: false in config.yml.
  • Remove CrazyCrates if it still eats keys on click.


Similar projects

Plugin →