No description
Find a file
L4stIdi0t b51353cd5f Refine container highlight box: drop 1.21.10 fallback, polish close-range pulse
- Remove ContainerFallbackRenderer and version-detection shim; target 1.21.11+ only
- Close range: box peaks at exact block size, pulses gently inward (slow 1.5s period)
- Far range: box scales up to 1.5× block size with smaller pulse amplitude
- Color-by-type and double-chest combined box already in place

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 17:11:42 +02:00
1.21.x Refine container highlight box: drop 1.21.10 fallback, polish close-range pulse 2026-05-25 17:11:42 +02:00
.gitignore Add container highlight renderer with wallhack-style gizmo boxes 2026-05-25 13:40:24 +02:00
icon_c_quick_empty.svg Add sort/quick-action button UI for 1.21.x and 26.x 2026-05-24 12:32:43 +02:00
icon_c_quick_fill.svg Add sort/quick-action button UI for 1.21.x and 26.x 2026-05-24 12:32:43 +02:00
icon_c_quick_stack.svg Fix malformed SVG tag in quick stack icon file 2026-05-24 13:16:14 +02:00
icon_c_sort.svg Add sort/quick-action button UI for 1.21.x and 26.x 2026-05-24 12:32:43 +02:00
README.md Initial commit: InventoryManagement Fabric mod 2026-05-23 13:35:49 +02:00

InventoryManagement

A client-side Fabric mod that keeps your inventory organized automatically — and gives you powerful tools to manage chests and nearby containers without ever opening a menu you didn't ask for.

Supports Minecraft 26.x and 1.21.x.


Features

Auto-sort on pickup

Every time you pick up an item your inventory is re-sorted in the background. No button press, no delay. Items are grouped by category and placed on a consistent side of your hotbar and main inventory:

Zone What goes there
Hotbar left (slots 02) Tools (pickaxe, axe, shovel, hoe, shears)
Hotbar center (slot 3) Weapon (sword / trident)
Hotbar right (slots 48) Freely used / overflow
Main inventory top rows Blocks and building materials
Main inventory bottom rows Food, potions, miscellaneous
Offhand Never touched by auto-sort

Categories and slot assignments are configurable in the mod config.

Sorting buttons

Small vanilla-styled buttons appear inside any inventory screen. They use sprite references from the vanilla GUI atlas so they inherit whatever texture pack you have loaded automatically — no custom textures shipped by the mod.

Button Action
Sort Re-sorts your main inventory into the configured zone layout
Quick Empty Moves every non-hotbar item into the nearest containers in range
Quick Stack Stacks items from your inventory into matching stacks already in nearby containers
Quick Fill Pulls items from nearby containers to top up existing partial stacks in your inventory

Chest sorting

Open any chest and the sort button appears in the chest UI. Clicking it sorts the chest contents using the same category rules. Works on single chests, double chests, barrels, and any container that exposes a standard slot layout.

Open the search UI (/invmanage or the ModMenu config button) to search across all chests the mod has scanned nearby. Results show the container's position, dimension, and how many of the matching item it holds.

Search radius is adjustable inside the search UI with a slider:

Preset Description
Same room Containers within ~16 blocks in the same enclosed space (default)
Nearby ~32 blocks radius, ignores walls
Extended ~64 blocks radius
Custom Free slider up to 128 blocks

The chest index is built from containers you have opened. It is cached locally per world/server and updated the next time you open a container.

Quick stack to nearby containers

One keybind (default V) scans containers within the configured radius and pushes every item from your inventory that already has a matching stack somewhere in those containers. Essentially "deposit like items" from every Terraria player's wishlist.

Smart packet throttle

Every slot-click, sort, or stack operation the mod performs sends packets to the server. Sending too many too fast can look like automation and get you kicked or flagged by anti-cheat.

The throttle system works like this:

  • All outgoing inventory packets are queued and dispatched at a configurable rate (default: 8 packets / second).
  • If you are kicked from the server while the queue is active, the mod records the current server address and the speed that was in use at the time of the kick.
  • On your next connection to that server the limit is automatically lowered by one step (steps: 20 → 15 → 10 → 8 → 5 → 3 packets/second). It keeps stepping down on each kick until the queue stops triggering disconnects.
  • The learned limit is stored per server address and persists across sessions. You can review and reset individual entries in the config.

Server compatibility — built-in disabled list

Certain servers run their own anti-cheat or have rules that explicitly ban inventory automation. The mod ships with a built-in list of known servers where all automation features are silently disabled the moment you connect. Only the manual sort button and chest search UI remain available.

Built-in blocked servers (maintained in the mod, updated with releases):

Server Reason
mineplex.com Anti-cheat + server rules
hypixel.net Anti-cheat (Watchdog) + server rules
cubecraft.net Anti-cheat + server rules
hivemc.com Anti-cheat + server rules
mccentral.org Anti-cheat + server rules
minehut.com (lobbies) Shared anti-cheat across hosted servers
funcraft.net Anti-cheat + server rules
playmc.games Anti-cheat + server rules

Matching is done on the resolved hostname. IP addresses that resolve to a blocked hostname are also blocked. Subdomains of a blocked host are blocked (e.g. lobby.hypixel.net matches hypixel.net).


Configuration

Accessed via ModMenu or /invmanage config. All options are stored client-side.

Auto-sort

Option Default Description
Enable auto-sort on pickup true Triggers a sort every time the pickup event fires
Sort hotbar false Whether auto-sort is allowed to rearrange hotbar slots
Category layout (see above) Which item categories map to which inventory zones

Blacklist

Fine-grained control over what the mod never touches automatically. Any item or tag on the blacklist is skipped by auto-sort, quick stack, and quick empty.

Built-in presets (toggle individually):

  • Never touch offhand — offhand slot is always left alone (on by default)
  • Never auto-stack tools — tools are sorted but never moved into containers by quick stack / quick empty
  • Only stack non-rare tools — allows common tools to be stacked out but protects enchanted or renamed tools
  • Never auto-stack enchanted items — anything with an enchantment is treated as protected
  • Never auto-stack named items — anything with a custom name is treated as protected
  • Custom item blacklist — free text field accepting item IDs and tags (minecraft:diamond_sword, #minecraft:swords, etc.)

Quick stack / nearby containers

Option Default Description
Default search radius Same room Starting radius for quick stack and search
Max scan radius 64 Hard cap on the slider in the search UI
Include locked containers false Whether to attempt containers that require a key/permission mod

Packet throttle

Option Default Description
Packets per second 8 Maximum inventory packets dispatched per second
Auto-lower on kick true Reduces the limit for a server automatically if you are kicked while the queue was active
Minimum auto-limit 3 Floor the auto-throttle will never go below
Learned limits (per server) View and reset per-server learned speed limits. Each entry shows the server address, the current learned limit, and how many kicks have been recorded for it
Reset all learned limits One-click button to wipe all saved kick history and revert every server to the default rate

Server blacklist

Option Default Description
Built-in blocked list enabled Toggle the entire built-in blocked server list on or off. Disabling it does not affect your custom list
Custom blocked servers (empty) Additional server addresses where the mod is fully disabled. Accepts hostnames, IPs, and wildcards (*.example.com). One entry per line
Block subdomains true Whether a block on example.com also blocks play.example.com, lobby.example.com, etc.
Show disabled notice true Displays a brief chat message on join when the mod is disabled for the current server, so you know it is not working and why

When the mod is disabled on a server the following are turned off entirely:

  • Auto-sort on pickup
  • Quick stack / quick empty / quick fill keybinds
  • Packet queue (no automated packets are sent at all)
  • Chest scan / index updates

The sort button in open container screens and the read-only chest search UI (no stack operations) remain available.


How the UI is built

All UI elements are drawn using vanilla Minecraft's Screen and widget system with vanilla sprite and texture identifiers — no custom texture files are bundled. Buttons reference sprites like container/slot_highlight_back, tab sprites from container/creative_inventory/tab_top_selected_1, and the generic chest sheet at textures/gui/container/generic_54.png. This means any resource pack that retextures the vanilla GUI automatically retextures this mod's UI as well, for free.

Item manipulation uses handleCreativeModeItemAdd (creative mode only) for the ChaosCrate-style give flow, and standard slot-click packet emulation for survival-mode container interactions.


Building

Each version lives in its own subdirectory with its own Gradle wrapper.

# 26.x
cd 26.x && ./gradlew build

# 1.21.x
cd 1.21.x && ./gradlew build

Both build tasks automatically deploy the output jar to your ModrinthApp Dev profile.


License

MIT