Inventory Shuffle
A client-side Fabric mod that scrambles the layout of every container and inventory screen the instant it opens. Open a chest, your inventory, a furnace, a villager trade window - and the slots, the background panel, and the buttons all jump to fresh random positions. Your clicks still land: the mod moves the real slot coordinates that vanilla uses for hit-testing, so hovering and clicking follow the slots wherever they end up.
What it does
- On every container/inventory screen open, it displaces every slot by an independent random offset, the background panel origin, and every button / clickable widget.
- Each element is clamped to stay on screen, so nothing scrolls off where you cannot reach it.
- Re-shuffles on window resize, always offsetting from the original vanilla layout (offsets do not compound).
- Purely client-side and purely cosmetic-layout: no gameplay data changes, no server component.
Loader and version
- Loader: Fabric
- Minecraft: 1.21.x - this jar is built with official Mojang mappings against 1.21.11 and declares
minecraft >=1.21.1.
- Requires: Fabric Loader >= 0.19.2, Fabric API, Java 21+
- Environment: client only (will not load on a dedicated server)
Compatibility note
A single Fabric jar is version-specific: the mod mixes into the client GUI API (AbstractContainerScreen#init, the Slot.x/Slot.y fields via AccessWidener, and AbstractWidget setX/setY), and those click/hover methods and slot fields change between versions. The >=1.21.1 declaration is permissive but only verified on 1.21.11 - other Minecraft versions may need their own per-version Fabric build rather than this one jar.
Config
A file config/inventoryshuffle.properties is written on first launch:
| Key |
Default |
Meaning |
enabled |
true |
Master on/off switch. |
maxOffset |
12 |
Max displacement magnitude in GUI pixels (0-80). |
shufflePanel |
true |
Also move the background panel origin. |
shuffleButtons |
true |
Also move clickable widgets (buttons). |
Set maxOffset=0 (or enabled=false) to effectively disable the shuffle.
Install
Drop InventoryShuffle-1.0.0.jar into your client's mods/ folder alongside Fabric Loader and Fabric API.
Original concept by u/CitricAcrid on Reddit (r/Minecraft). Built by BeansNToast.