Sueta

sCrates — Advanced Crate System ⭑ 26.3 ✅

1.8

The Best Free Crates Plugin.

·Plugin

sCrates
Premium crates with cinematic 3-phase animations, holograms & a full in-game editor
Paper | 1.12.x → 26.x | Java 21+

★ About
sCrates is a feature-complete crate plugin built to give your players a premium crate experience without giving you a headache. Every crate opens in three sequential phases — world effects, a cinematic main animation and a reward reveal — with real-time holograms through DecentHolograms, a deep rarity system, an in-game visual reward editor and a public developer API for third-party integrations.
Every crate lives in its own YML file and everything reloads live: no server restart, no downtime, no players yelling at you.

★ Features

  • ✔ Unlimited crates — each with its own YML configuration file
  • ✔ 43 opening animations in CSGO / CrazyCrates style (3 sequential phases)
  • ✔ 13 ambient idle effects (Circle, Spiral, Astroid and more) that play continuously when nobody is opening
  • ✔ Physical, virtual and hybrid keys with a secure transaction system
  • ✔ Real-time multiline holograms via DecentHolograms with configurable height
  • ✔ 3D item display rendering for animations (1.19.4+, automatic fallback on older versions)
  • ✔ Configurable 3D scale, spin speed and billboard mode per crate
  • ✔ Custom blocks with Custom Model Data (1.14+) & optional glowing crate blocks
  • ✔ Rarity system: Common / Rare / Special / Legendary / Unique
  • ✔ Reward types: ITEM / MONEY / EXPERIENCE / COMMAND
  • ✔ In-game visual reward editor — edit GUIs in real time, no restarts
  • ✔ Reward preview before opening & reward selection mode with reroll support
  • ✔ Shift + Right-click bulk opening (opens all available keys at once)
  • ✔ Configurable broadcast on crate open with customizable per-crate events
  • ✔ Per-IP anti-abuse limit & anti-dupe protection during animations
  • ✔ Per-player opening statistics, history & global top leaderboard
  • ✔ OfflinePlayer support in commands and statistics
  • ✔ 30+ included languages — every message fully customizable
  • ✔ SQLite & MySQL backends — JDBC libraries auto-loaded, zero extra downloads
  • ✔ Persistent crate locations — placed crates survive server restarts
  • ✔ Bedrock support via Geyser / Floodgate
  • ✔ WorldGuard region protection & Vault economy
  • ✔ PlaceholderAPI placeholders
  • ✔ Public developer API for third-party plugins
  • ✔ Automatic update checker with admin join notifications
  • ✔ Full tab-completion on every subcommand & hierarchical permission nodes
  • ✔ Fully customizable sounds, particles and messages

★ Crate Types

  • PHYSICAL — a physical block in the world that requires a key to open
  • VIRTUAL — opened from command or menu, no physical block required
  • HYBRID — a physical block that can also be opened remotely via command

★ Reward Types

  • ITEM — custom items with enchantments, lore and Custom Model Data
  • MONEY — money via Vault (requires Vault installed)
  • EXPERIENCE — experience points
  • COMMAND — runs console commands with the %player% placeholder

★ Rarity System
Every reward belongs to a rarity tier that controls its display, colors and feel:

  • Common — the everyday rewards
  • Rare — a nice step up
  • Special — limited or seasonal items
  • Legendary — the chase items players grind for
  • Unique — one-of-a-kind rewards for special events

★ Animation System
Every crate opens in three sequential phases — pick one effect from each:

  • Phase 1 — pre-open world effects (blasting, lightning, rainbow, sonic-boom...)
  • Phase 2 — main animation with 3D item display (csgo-gui, snake-gui, swirl, spinner...)
  • Phase 3 — reward reveal (firework, helix, fire-spiral, physical-item...)
  • Idle — 13 ambient effects that play continuously above the crate when nobody is opening
Full animation list

Phase 1 (First): default, blasting, chicken-jockey, crack, cyclone-heart, fire, froggo-boom, key-opener, lightning, rainbow, sonic-boom

Phase 2 (Second): none, ball, compact, creeper, fire, csgo-gui, rotating-head, snake-gui, spotlight-gui, swirl, ring-carousel-gui, spinner

Phase 3 (Third): default, fire-spiral, firework, helix, none, physical-item, smoke-spiral

Ambient (Idle): Circle, Astroid, Spiral and 10 more

★ 3D Model Support
Per crate in its YML:

  • enabled — toggle 3D item display rendering for animations
  • scale — uniform scale multiplier (1.0 = normal, 2.0 = double size)
  • spin-speed — continuous rotation in degrees per tick
  • billboard — whether the 3D item should always face the player

On Paper 1.19.4+ animations render as real 3D floating items; older versions automatically fall back to the classic rendering — no configuration needed.

★ Player Interaction

  • Left-click — preview rewards
  • Right-click — open the crate (consumes a key)
  • Shift + Right-click — bulk open (opens all available keys at once)
  • /scrates open — open virtual crates remotely

★ Commands
Main command: /scrates — aliases: /crates, /crate

General
  • /scrates — Opens the main GUI menu
  • /scrates help — Shows the full help message
  • /scrates reload — Reloads the entire configuration
  • /scrates list — Lists all active crates
  • /scrates info <crate> — Shows detailed info of a crate
  • /scrates debug — Shows debug information
  • /scrates update — Manually check for plugin updates
Crate Management
  • /scrates create <name> — Creates a new crate
  • /scrates delete <name> — Deletes an existing crate
  • /scrates place <crate> <world> <x> <y> <z> [facing] — Place a crate at specific coordinates
  • /scrates attach <crate> — Attach a crate to the targeted block
  • /scrates detach — Detach a crate from the targeted block
  • /scrates editor — Opens the in-game visual editor
Key Management
  • /scrates give <player> <crate> <amount> — Gives virtual keys of a crate
  • /scrates givekey <player> <key> <amount> — Gives a specific physical key
  • /scrates givekeyall <key> [amount] [-s] — Gives a key to all online players
  • /scrates setkey <key> <player> <amount> — Set a player's exact virtual key count
  • /scrates takekey <key> <player> [amount] [-s] — Take virtual or physical keys from a player
  • /scrates checkkeys <player> — Inspect all virtual keys of a player
  • /scrates keys [player] — Shows the virtual keys of a player
Crate Items & Player Interaction
  • /scrates givecrate <crate> <player> [amount] [-s] — Give a physical crate item to a player
  • /scrates givecrateall <crate> [amount] [-s] — Give a physical crate item to every online player
  • /scrates open <crate> — Opens a virtual crate directly
  • /scrates preview <crate> — Previews the rewards of a crate
  • /scrates resetcooldown <crate> <player> [-s] — Reset a player's open-cooldown for a crate
Rewards & Statistics
  • /scrates givereward <crate> <reward> <player> — Give a specific crate reward to a player
  • /scrates giverandom <crate> <player> [-s] — Give a random crate reward to a player
  • /scrates top [limit] — Shows the top openers across all crates
  • /scrates history [player] [limit] — Shows recent openings for a player

The -s flag (where applicable) silently suppresses the target player's notification. All commands support intelligent tab-completion — your fingers will thank you.

★ Permissions

Base permissions (default: true)
  • scrates.use — Use the /scrates command and open crates
  • scrates.preview — Preview crate rewards
  • scrates.top — View the top openers leaderboard
  • scrates.history — View own opening history
Administrative permissions (default: OP)
  • scrates.admin — Full administrative access (includes all below)
  • scrates.reload — Reload configuration
  • scrates.keyall — Distribute keys to all online players
  • scrates.editor — Open the in-game editor
  • scrates.debug — View debug information
  • scrates.list — List all crates
  • scrates.keys.all — Claim keyall rewards
  • scrates.history.others — View other players' opening history
  • scrates.place — Place a crate at coordinates
  • scrates.attach — Attach a crate to the targeted block
  • scrates.detach — Detach a crate from the targeted block
  • scrates.setkey — Set a player's virtual key count
  • scrates.takekey — Take virtual keys from a player
  • scrates.checkkeys — Inspect a player's virtual keys
  • scrates.givecrate — Give a physical crate item
  • scrates.givecrateall — Give a crate item to all online players
  • scrates.resetcooldown — Reset a player's crate cooldown
  • scrates.givereward — Give a specific crate reward
  • scrates.giverandom — Give a random crate reward
  • scrates.info — View detailed crate information

★ Placeholders (PlaceholderAPI)
Main identifier: %scrates_<provider>_<params>%

  • %scrates_player_name% • %scrates_player_uuid% — player info
  • %scrates_keys_<crate_id>% — amount of virtual keys of that crate
  • %scrates_<crate_id>_name% — display name of the crate
  • %scrates_<crate_id>_type% — crate type (PHYSICAL / VIRTUAL / HYBRID)
  • %scrates_<crate_id>_animation% — ID of the configured animation
  • %scrates_<crate_id>_rewards% — amount of configured rewards

Hologram tags (used inside crate hologram text): {crate_name}, {crate_id}, {rewards_count}, {opens_count}, {online_players}, {current_date}, {current_time}

★ Configuration
One file per job — all of them live in plugins/sCrates/:

FilePurpose
config.ymlGeneral configuration (database, prefix, performance)
animations.ymlAnimation definitions
keys.ymlKey configuration
effects/ambient.ymlAmbient idle effects
effects/open.ymlOpening effects
messages.ymlGlobal messages
crates/<id>.ymlOne crate per file
locations.ymlPersistent placed crate locations (auto-managed)
lang/<locale>.ymlLanguage files

★ Setup (60 seconds)

  1. Drop the jar in /plugins (make sure DecentHolograms is installed too) and restart the server.
  2. Create your first crate: /scrates create <name>.
  3. Look at a block and run /scrates attach <name>.
  4. Run /scrates reload — and you're done.
  5. Players right-click to open, left-click to preview.
Example crate file — crates/vote.yml
display-name: "&#F39C12&lVote Crate"
type: PHYSICAL
rarity: RARE
hologram:
  enabled: true
  height: 1.8
  lines:
    - "&#F39C12&l%crate_name%"
    - "&7Requires a &fVote Key"
block:
  glowing: true
  custom-model-data: 1001
display-3d:
  enabled: true
  scale: 1.5
  spin-speed: 3.0
  billboard: true
animations:
  first: fire
  second: csgo-gui
  third: firework
  ambient: spiral
rewards:
  diamonds:
    type: ITEM
    chance: 40.0
    display-name: "&bDiamonds x16"
    items:
      - "DIAMOND:16"
  vip-rank:
    type: COMMAND
    chance: 10.0
    commands:
      - "lp user %player% parent settemp vip 30d"

★ Networks & Storage
SQLite works out of the box with zero configuration — a local file, nothing to install. For BungeeCord / Velocity networks, switch to MySQL in config.yml on every server pointing to the same database: keys and statistics sync instantly across your whole network.
JDBC libraries are automatically loaded via the libraries field in plugin.yml, so you don't have to download anything extra.

★ Developer API
sCrates exposes a public API that lets other plugins:

  • ✔ Register crates dynamically
  • ✔ Hook custom rewards
  • ✔ Listen to opening events
  • ✔ Access the KeyManager and CrateManager
  • ✔ Integrate their own placeholders

★ Update Checker
sCrates automatically checks for updates on startup by querying the Spigot API. Admins ( scrates.admin) are notified on join when a new version is available. You can also manually check with /scrates update.

★ Compatibility

  • Paper 1.12.x → 26.x — all major Paper forks supported
  • No NMS — public Bukkit / Spigot API only
  • Java 21 or higher
  • 3D Display entities on 1.19.4+ (automatic fallback on older versions)

★ Dependencies

  • DecentHolograms — required (holograms)
  • Vault — optional (MONEY rewards)
  • PlaceholderAPI • WorldGuard • Geyser / Floodgate — optional

★ Languages
30+ locales included: en_US, es_ES, es_AR, es_MX, pt_BR, fr_FR, de_DE, it_IT, nl_NL, ru_RU, uk_UA, pl_PL, sv_SE, no_NO, da_DK, fi_FI, cs_CZ, el_GR, ro_RO, hu_HU, tr_TR, ar_SA, he_IL, hi_IN, ja_JP, ko_KR, zh_CN, zh_TW, th_TH, vi_VN, in_ID — every single message fully customizable.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Need help? Join our Discord
discord.gg/fNHvsWFaGZ

Similar projects

Plugin →