Skip to main content
← All guides

Virtual Crates Players Can Open Anywhere with InfiniteCrates

By , the developer behind these plugins ·

A crate that lives in a menu instead of at spawn changes how players use it: no walk, no block, no key item to lose. InfiniteCrates adds that as a third crate type next to stationary and lootbox crates, and ships the crate models, key models and GUI animations it opens with. This guide sets it up and is honest about the one client-side requirement.

What a virtual crate is

With InfiniteCrates, players run /crates and get a virtual crate menu they can open anywhere: no walking to a crate block, no holding the right key. The virtual crate is a crate type of its own that lives in that menu with no physical block, and it sits alongside the two classic types, which stay fully available: the stationary block crate and the placeable lootbox. Keys follow the same split, existing either as inventory items or as a per-player virtual balance.

The plugin supports Spigot and Paper 1.20.6 through 26.2, requires no other plugin, and costs €21.99 (price at time of writing) as a one-time purchase with free lifetime updates. It is one of three crate plugins we sell; the crates comparison argues which fits which server, and the section at the end of this guide covers the choice against Advanced Crates specifically.

The client-side requirement: the included texture pack

InfiniteCrates is built around textures that ship with the plugin at no extra cost: 26 crate models with variations for slot machines, roulette wheels, cakes and crates, 7 model crate keys that tell tiers apart at a glance, 4 GUI inventory textures, and 25 GUI animations. Crates can be modelled as players, skins, mobs, blocks or BBModels. Openings range from full model animations to quick openings and traditional GUI openings.

The one requirement to plan for: the crate model animations need the included texture pack applied on the client. Nothing else is required, but a server whose players will not apply a pack should lean on the quick and GUI openings and treat the model animations as the upgrade for players who do. Decide this before you design crates, because it shapes which openings you show off.

Setting up the first virtual crate

The in-game editor handles the whole setup without a YAML file: create crates and rewards from scratch, drop a reward item into the editor GUI and it is saved to the files instantly, lay out the reward preview menus in the same editor, and customise any configuration file from inside the game.

  • Create the crate in the editorName it, then drop rewards into the GUI; each drop is saved to the files immediately.
  • Choose the virtual typeA virtual crate has no block to place; it appears in the /crates menu for every player.
  • Pick the openingFull model animation, quick opening or GUI opening, using the included models, key models and GUI animations.
  • Hand out keysGive keys as items or as a virtual balance; a virtual balance is the natural fit for a crate players open from a menu.
  • Test as a playerRun /crates from somewhere other than spawn and open the crate; that is the whole point.

Keeping block crates too

Virtual crates do not replace the others. A stationary crate is a block crate opened by right-clicking with a key, with a left-click to view the rewards. A lootbox is a placeable item that opens once placed on the ground, with a left-click while holding it to view rewards, and you can cap how many lootboxes can be placed at the same time and how close together they can sit. Shift-right-click opens any crate immediately, and animation skipping is built in for players who have seen the show enough times.

A common layout is a virtual crate for the everyday tier that players earn by voting or playtime, and a stationary crate at spawn for the rare tier, so the rare openings still happen where other players can watch.

Rewards and rerolls

The reward system is shared with Advanced Crates and is worth configuring deliberately: a random number generator for reward values, one-time-only rewards that can be won only once, unique rewards that never repeat within the same opening, a separate special pool, linked rewards where landing on one reward pays out several, and reward actions that run commands or send messages on specific rewards. A final message lists everything the player received, broadcast globally or shown to the player only.

Rerolls are permission-based, with ladders that give some ranks more rerolls than others. For a virtual crate this is the setting that turns a menu into a habit, because the reroll prompt appears right where the player already is.

Performance: packets and a separate thread

Every animation is calculated on a different processor core from the one running your server, and all animations are sent as packets rather than spawned as entities, so the server tick loop never processes animation data. The plugin is designed for large playerbases on that basis: the heavy work stays off the main thread as player counts grow. Holograms for crates and rewards are built in, so there is no hologram plugin to install either.

InfiniteCrates or Advanced Crates?

Both crate plugins share the async packet-based core, the in-game editor and the reward system. InfiniteCrates is built around its included textures, 26 crate models, 7 key models, 4 GUI textures and 25 GUI animations, plus the /crates virtual selector, and it targets 1.20.6 and newer. Advanced Crates runs 17 packet-based animations without a resource pack and supports 1.8 and newer.

So the choice is mostly two questions: do you run 1.20.6 or newer, and will your players apply a texture pack? Two yeses point at InfiniteCrates; a no on either points at Advanced Crates. The crates hub lists both with their Minecraft ranges and current versions.

Related plugins

InfiniteCrates
Virtual crate selector, 26 crate models and 25 GUI animations included. Open crates anywhere.
Advanced Crates
17 packet-based async animations. In-game editor. Zero dependencies.

More guides on these plugins

Virtual Crates with InfiniteCrates [Setup Guide] | InfinitePlugins