# The Vault & Trading ## Stackable Ownership Cosmetics in CelestialCosmetics are not a simple on/off permission — they're **counted, stackable inventory**. A player's vault tracks exactly how many copies of each cosmetic they own, stored in SQLite and cached in memory for zero-latency reads. - Own 0, 1, or 50 copies of the same cosmetic. - Every duplicate from a [crate](Crates.md) win, an [Auction House](Auction-House.md) purchase, or a trade adds a real extra copy — nothing is ever wasted or converted into currency automatically. - The vault menu shows exactly how many copies you own on every item's tooltip. ## Two Kinds of Access | Access type | How you get it | Can equip? | Can withdraw/trade/sell? | |---|---|---|---| | **Owned copies** | Crates, trading, Auction House, admin `/cosmetics give` | ✅ | ✅ | | **Rank/Group access** | A LuckPerms permission granted to your rank or group | ✅ | ❌ | This distinction is the plugin's core anti-dupe protection: a permission granted to an entire rank is unlimited to *use*, but there's no real "copy" behind it to extract — so nothing can ever be duplicated out of a group permission. Only cosmetics you actually *own* as counted copies can be turned into physical items or sold. ## The Actions Menu Clicking any cosmetic in your vault opens a dedicated menu instead of equipping instantly: - **EQUIP** — always available if you have access (owned or rank-granted) - **WITHDRAW** — only shown if you own at least 1 real copy; pulls one copy out as a physical, tradeable item - **AUCTION** — only shown if you own at least 1 real copy; prompts a price in chat and lists it on the [Auction House](Auction-House.md) Power-user shortcuts still work directly from the vault list: **Shift+Click** extracts instantly, **Right-Click** jumps straight to the sell price prompt. ## Withdrawing (Extracting) Withdrawing takes 1 owned copy out of your vault and gives you a physical item containing the cosmetic's data. That item: - Can be placed in a chest, dropped, given away, or sold through any trade/shop plugin like a normal item - Shows the cosmetic's type and (for sets) every component it includes in its lore - Is claimed by **right-clicking** it — this adds 1 copy back into the claimer's vault and consumes the item If you withdraw your *last* copy of something you had equipped, and you have no other access to it (no rank grant), it's automatically unequipped so nothing stays active that you no longer technically hold. ## Claiming Right-click a cosmetic item to claim it. Claiming always works, even if you already own other copies — that's the point of stacking. There's no "you already own this" block. --- Next: [Auction House](Auction-House.md)