promotional bannermobile promotional banner
premium banner
Make chests bound to the player who placed them; only the owner/whitelisted players can open a bound chest. Workbenches only use materials from chests allowed by the interacting player.

Description

Support me on Ko-fi

Arisu's Bound Chests!

This is a server mod that binds placed chests to the player who placed them, restricts opening to the owner and whitelisted players only, and filters workbench materials so only your authorized chests are used when you open a bench.

image

Current features:

  • Chest binding - Placed chests are automatically bound to you and saved to disk;
  • Public & private access - Toggle each chest between public (anyone) and private (owner + whitelist only);
  • Chest management - Ctrl F while aiming at the chest opens the access UI: add/remove players, toggle public/private, or claim unclaimed chests;
  • Unbind on break - Breaking a bound chest removes it from the bindings;
  • Crafting filter - Workbenches only use materials from chests you own (requires optional ByteBuddy agent);
  • Admin override - Players with OP can edit any chest’s access (boundchests.admin permission);
  • Exclude specific workbenches - Some benches, like the furnace dont see chests, but filter is still applied, generating noise in the console - just filter them off in the config. You can also set benches that will not use the crafting filter if you wish;
  • WIP: Locking workbenches - While you can claim and lock workbenches, this still doesnt prevent access on them. I am still deciding wether this makes sense to add fully (maybe doors too).

Setup

  1. Chest binding works out-of-the-box! just place chests and it binds to the player for ownership after installing the mod.

For the crafting filter (workbenches use only your chests):

  1. Download ByteBuddy Agent 1.18.4 and place it in your Server folder (next to HytaleServer.jar)
  2. Start the server with:
-javaagent:byte-buddy-agent-1.18.4.jar --add-opens java.base/java.lang=ALL-UNNAMED

P.S.: I am currently trying to figure out a less intrusive way to load the filter without the need of ALL-UNNAMED. I've kept the filter functionality optional so you can run the mod without it, but this is the main feature that differentiates my mod from other lock mods. If hytale ever exposes a way to manipulate the workbench API without patching I will rework this.


Configuration

Edit config.json in the mod’s data folder (mods/com.arisu.boundchests_/):

Option Default Description
excludedBenchIds ["Furnace"] Bench IDs that skip the crafting filter (use all nearby chests)

Data & Files

Path Purpose
mods/com.arisu.boundchests_/bindings.json Chest positions bound to player UUIDs
mods/com.arisu.boundchests_/config.json Bench exclusions for crafting filter

Tip: Backup bindings.json if migrating/updating. It holds all chest bindings.