PerfectLootContainers

Turn any vanilla container (chest, barrel, ...) into a fully configurable loot container, with loot tables, cooldown or one-time looting, per-player or shared loot, a wand to assign and clone configurations, an admin UI, robust persistence, and proximity-culled glow particles.

Version1.1.0
PlatformHytale Server Plugin
LanguagesEN, FR, ES, DE, IT

Private commission - not available for sale

Installation

  1. Stop your server
  2. Drop PerfectLootContainers-1.1.0.jar in UserData/Mods/
  3. Start the server
  4. Use /plc help

Getting Started

  1. Create a loot table: /plc table create starter
  2. Edit it: /plc table edit starter, hold an item and click Add entry from held item, then set quantities, weights and the rolls range
  3. Place any vanilla container (it can be empty, its real contents are not used)
  4. Get the wand: /plc wand, put it in your hotbar and select it
  5. Press F (the use/interact key) on the container, then in the Loot tab pick your table
  6. Switch to an empty hand and press F on the container to loot it

Features

Commands

All commands require the perfectlootcontainers.admin permission.

CommandDescription
/plc helpShow the command list
/plc infoShow counts and debug state
/plc wandGive yourself the Loot Wand
/plc table create <name>Create a loot table
/plc table edit <name>Open the loot table editor
/plc table listList loot tables
/plc table remove <name>Delete a loot table
/plc listList every loot container
/plc tp <#>Teleport to a loot container
/plc reloadReload tables and containers
/plc setlang <code>Set language (EN, FR, ES, DE, IT)
/plc debug [on|off]Toggle verbose console logging

Wand interactions

ActionResult
Press F on a container (wand in hand)Open the configuration menu
Sneak + F on a configured containerCopy its config to your clipboard
Sneak + F on an empty containerPaste the copied config onto it

Permissions

PermissionDescription
perfectlootcontainers.adminAll /plc commands and configuration menus

Separately, an individual container can require any permission node to be opened (set in its Access tab). That gates looting, not commands.

Loot Tables

A loot table is a reusable pool of items. Many containers can share one table.

Example: weights 70 / 20 / 10 give per-roll chances of 70%, 20%, 10%. Rolls 1 to 3 means each open yields between 1 and 3 items.

Editor controls: Min/Max rolls, Add entry from held item, per-entry -Q/+Q (quantity), -W/+W (weight), X (remove), and paging (6 entries per page).

Configuring Containers

Press F on a container with the wand in hand to open a tabbed menu (fixed size, footer always visible):

Looting behavior

Cloning a setup

Configure one container, sneak + F on it to copy, then sneak + F on empty containers to paste the same config (table, mode, scope, cooldown, particles, color, permission, key, conditions). Ideal for placing many identical containers fast.

Conditions & Gating

Three independent gates stack (all must pass): permission, key item, and open conditions.

ConditionValuePasses when
WORLDworld nameplayer is in that world
HOUR_RANGEfrom-to (0-23)current server hour is in range (e.g. 20-2 wraps midnight)
GAMEMODEcreative or adventureplayer is in that gamemode
PERMISSIONpermission nodeplayer holds the node

Up to 5 conditions, combined with AND, each invertable (IS / NOT). The key item is only required and consumed on a fresh open, not when grabbing loot already rolled.

Particles

Floating glow particles mark loot containers. They are sent only to players within about 28 blocks and are throttled, so performance stays clean even with very large numbers of containers. Color is configurable per container (gold, turquoise, red, purple, green, blue, white) and can be toggled off.

Data & Files

Data lives in UserData/Saves/<world>/mods/KatsuyaTV_PerfectLootContainers/ as plain JSON:

FileContents
config.jsonlanguage and debug flag
loottables.jsonall loot tables
containers.jsonall container assignments
sharedstate.jsonshared-scope looting state
playerdata/<uuid>.jsonper-player looting state

State is written on chest close, on disconnect and on shutdown. Edit JSON only while the server is stopped, then use /plc reload or restart.

FAQ

Nothing happens when I press F with the wand

The wand only works in your active hand. Move it to your hotbar and select it. Enable /plc debug on to see its location in the console.

The loot window is empty

The table has no entries, all weights are 0, or the rolls range is 0 to 0. Add entries and set a roll range of at least 1.

The container does not refill

One-time containers loot once. In Cooldown mode the timer starts only after the container is fully emptied.

A player cannot open a container

Checked in order: access permission, conditions, cooldown/one-time, key. With debug on, the console prints the exact reason.