Перейти к содержимому
Mineforgian

IG: Item Clumps

Item Clumps completely redesigns how dropped item entities behave in the world, combining them into lightweight, virtual mega-stacks to maximize both server performance and client-side frame rates.

Загрузки
2K
Подписчики
9
Обновлён
22 июля 2026 г.
Лицензия
LGPL-3.0-or-later

Опубликован 20 мая 2026 г.

Requires Fabric API Java License Minecraft 26.2+

📦 Item Clumps (Server Only): The "Instant Gratification" Update

No Backports: I will NOT backport this mod to older Minecraft versions (1.21, 1.20, etc.). Please do not ask.

In vanilla Minecraft, dropped items merge, but they strictly cap at a maximum stack size of 64. If a high-efficiency mob farm, automated quarry, or massive TNT explosion drops thousands of items, the game is forced to tick and render hundreds of individual ground entities. This leads to heavy client-side frame drops, rendering lag, and severe server TPS decay.

Item Clumps (Server Only) changes this foundation by breaking the 64-item stack limit for ground entities entirely server-side. It aggressively condenses identical items into single, lightweight virtual mega-stacks of up to 9,999 items by default. Vanilla clients can connect to servers running this mod without having to install it!


🎥 Showcase Video

Click the player above to watch the mod showcase in action!


✨ Features

🚀 Server-Side Stack Size Virtualization

Bypasses the 64-item ground stack cap. Identical items merge into single entities containing up to 9,999 items by default (configurable up the full 32-bit integer limit of 2,147,483,647 both in the GameRules screen and via commands).

[!NOTE] MegaCount Strategy: In this server-side only version, the true virtual count is stored directly in the standard vanilla ItemStack count. Because Minecraft 26.x serializes stack counts using standard VarInts/integers rather than bytes, vanilla clients natively support, sync, and display these larger counts on item entities.

🏷️ Vanilla-Compatible Count Tags

Renders a custom name tag (e.g., Oak Log x450) above clumps when the count exceeds a normal stack. Uses vanilla's native custom name tags (setCustomName / setCustomNameVisible) on the server so that vanilla clients display the count tag without needing any client-side mod.

⏱️ Vanilla Despawn Timer Rules

To match vanilla merging logic, when two stacks merge, the resulting clump inherits the age of the youngest item in the merge (taking the smaller age value, as age ticks upwards). This extends/resets the despawn window for the combined clump exactly like vanilla, ensuring you don't lose items prematurely.

📦 Smart Inventory Integration

Walking over a clump smoothly transfers items to your inventory in max stack chunks. The mod dynamically calculates the exact amount of free space in your inventory and takes only what fits, keeping the remainder safely in the ground clump instead of deleting or de-syncing them.

⚙️ Hopper Drip-Feeding

Hoppers extract items from virtual clumps one by one at standard vanilla transfer speeds. This ensures your redstone automation, sorting systems, and item-elevator pipelines function exactly as they did in vanilla, keeping the game balanced.

📐 Vanilla Physics Alignment

To match vanilla merging rules and prevent glitches, clumping operates on a configurable horizontal block radius, but respects vertical space. Items will not merge if they are separated vertically by 1 block or more (e.g., items resting on top of a block won't merge with items below it).


⚙️ Config

[!IMPORTANT] Config vs. In-Game GameRules: The global configuration file only defines default values for new worlds at creation time. If you have already created/opened a world, changing the config file will have no effect. You must change the settings in-game using the Edit Game Rules UI screen or the /gamerule command. The mod works out of the box with zero setup. All parameters are managed in-game using the Native Minecraft Game Rules system.

  • In-Game: Use /gamerule item_clumps: for core settings.
    • item_clumps:enable_clumping (Default: true) - Toggles the clumping mechanic. When disabled, items behave exactly like vanilla.
    • item_clumps:max_clump_size (Default: 9999) - The maximum quantity of items a single clumped entity can contain. (Disabled automatically if Stack Size Adjuster is loaded).
    • item_clumps:render_labels (Default: true) - Toggles the rendering of the floating custom count tag above virtual clumps.
    • item_clumps:merge_radius (Default: 1) - The horizontal block radius items will search to find matching items to merge.
    • item_clumps:label_min_count (Default: -1) - Minimum item count before the clump label displays. Set to -1 to use the default vanilla stack limit.

Item Clumps Game Rules Screenshot

[!IMPORTANT] Recommended Mod: Since this mod adds several GameRules, we highly recommend using Collapsible Game Rules to keep your settings menu clean and organized.


📦 Installation & Environment

🖥️ Environment Support

  • Server-side only: All functionality is done server-side and is compatible with vanilla clients.
    • Works in singleplayer too

📥 Install Instructions

  1. Install Fabric API.
  2. Download item-clumps-*.jar and place it in your mods folder.

🧩 Compatibility

Feature Fabric (26.2+)
Singleplayer
Multiplayer (LAN/Server)
Empty Dimensions

🎮 Version Compatibility & Support

  • Minecraft 26.2+: Current public release — Active & Supported.
  • Minecraft 26.1.2: Discontinued

☕ Support

If you enjoy the Instant Gratification collection, consider fueling the next update!

Ko-fi SocioBuzz Saweria


📜 Credits

Role Author
Creator Rifaditya (Dasik)
Collection Instant Gratification
License GNU GPLv3

[!IMPORTANT] Modpack Permission Policy: You are free to include this mod in any modpack. However, cross-platform redistribution of this project or its files is strictly prohibited. Modpacks hosting this project's files must be published on the same platform (Modrinth).


Made with ❤️ for the Minecraft community

Part of the Instant Gratification Collection

Ченджлог

1.0.21+26.2Релиз26.2 · 22 июля 2026 г.

[1.0.21+26.2] - 2026-07-15

Fixed

  • Fixed compatibility mismatch with Magnet mod version 26.2. The reflection helper now queries for the new ig_magnet$isMagnetized method signature first, falling back to the 26.1 ig$isMagnetized signature, preventing items from clumping while in magnet flight.
  • Fixed properties synchronization during partial merges. The target item entity now inherits pickupDelay and age from the merged entity, preventing items from bypassing pickup delays or despawning prematurely.
1.0.20+26.2Релиз26.1.2, 26.2 · 14 июля 2026 г.

[1.0.20+26.2] - 2026-07-14

Fixed

  • Fixed ModMenu configuration screen factory initialization. Replaced the obsolete ClothConfigScreenHelper reference (which was deleted in 1.0.18 during YACL migration) with YaclScreenHelper and updated the initialization helper to GuiHelper.getOptionalYaclFactory, restoring functionality to the client-side config screen when ModMenu is installed.

[1.0.19+26.2] - 2026-07-11

Removed

  • Removed live GameRule sync on config save. Changing config values now only defines default settings for new worlds, allowing each world to maintain independent GameRule settings.
  • Switched config screen Option descriptions to use dedicated config-specific translation keys with the §6Notice:§r warning notice.
1.0.18+26.2Релиз26.1.2, 26.2 · 10 июля 2026 г.

[1.0.18+26.2] - 2026-07-07

Added

  • Migrated client configuration GUI screen from Cloth Config to YetAnotherConfigLib (YACL).
  • Aligned ground clumping limits dynamically to match Stack Size Adjuster's custom limits when both mods are installed.
  • Hidden/disabled the redundant "Max Clump Size" GameRule and config options when Stack Size Adjuster is loaded.
1.0.17+26.2Альфа26.1.2, 26.2 · 8 июля 2026 г.

[1.0.17+26.2] - 2026-07-07

Fixed

  • Fixed a math integer overflow bug in tryToMerge where merging ground item entities under massive stack sizes (millions/billions) could overflow to negative stack counts, causing infinite loops and game crashes.
1.0.16+26.2Альфа26.1.2, 26.2 · 7 июля 2026 г.

[1.0.16+26.2] - 2026-07-06

Added

  • Added label_min_count Config and dynamic GameRule setting. Default value is -1 which uses vanilla default stackable limits. If set to a positive integer, clump labels will only render when the stack size is larger than that number.
1.0.15+26.2Релиз26.1.2, 26.2 · 6 июля 2026 г.

1.0.15+26.2

Released: July 6, 2026

Fixed

  • What: Fixed missing ground item count labels when used alongside Stack Size Adjuster.
  • Why: The Stack Size Adjuster mod overrides getMaxStackSize() to return custom larger limits (e.g. 640). Item Clumps was checking stack.getMaxStackSize() to determine if count was above limit, which failed because the count (e.g., 100) was less than 640.
  • How: Modified ItemEntityMixin.java to fetch default max stack size from components (stack.getOrDefault(DataComponents.MAX_STACK_SIZE, 1)) bypassing the overridden getMaxStackSize().
1.0.14+R-26.2Релиз26.2-rc-1, 26.2-rc-2, 26.2 · 6 июня 2026 г.

1.0.14+R-26.2

Changed

  • ModMenu GUI Refactor: Migrated configuration screen loading in ModMenuIntegration to use the reflection-based GuiHelper.getOptionalFactory from DasikLibrary for safe server/client classloader isolation.
  • New World Warning: Added a warning text description at the top of the general Cloth Config category to alert users that options only adjust new world defaults.
  • Dependencies: Bumped dasik-library minimum dependency to version 1.8.2.

1.0.12+R-26.2Релиз26.1.2, 26.2-pre-4 · 5 июня 2026 г.

[1.0.12+R-26.2]

Summary

The production Release version enabling multi-version compatibility.

  • Multi-Version Compatibility: Widened dependencies and verified codebase APIs to support both Minecraft 26.1.2 and 26.2 (compiled against 26.2-pre-3).
  • Core Optimizations Stabilized: Production-grade verification of copyWithCount API optimization, tryToMerge fast-path optimizations, and optional cloth-config / modmenu GUI configurations.

[1.0.11+A-26.2]

Summary

The "tryToMerge Fast-Path Checks" update.

  • tryToMerge Optimization: Reordered checks in tryToMerge inside ItemEntityMixin.java to perform cheap item/target compatibility comparisons first. Mismatching items now exit instantly before doing expensive Map-based GameRule lookups or reflection calls.

[1.0.10+A-26.2]

Summary

The "copyWithCount API Optimization" update.

  • copyWithCount Optimization: Replaced two-step .copy() and .setCount() calls inside ItemEntityMixin (merging/pickups) and HopperBlockEntityMixin (hopper extraction) with a single call to the native copyWithCount(int) API. This reduces total object allocation overhead in JVM heap memory.

[1.0.9+A-26.2]

Summary

The "Magnet Mod Compatibility" update.

  • Magnet Compatibility: Added dynamic reflection-based check for the magnet mod during item merges (tryToMerge). Prevents items from clumping while in-flight under magnet attraction, ensuring smooth physics paths and preventing visual warping or loss of velocity.

[1.0.8+A-26.2]

Summary

The "Search Radius Optimization" update.

  • ModifyArgs Redirect Optimization: Replaced the @ModifyArgs injection targeting AABB.inflate() in ItemEntityMixin with a @Redirect call. This prevents array/object allocations at runtime, improving garbage collection behavior during item clumping checks.

[1.0.7+A-26.2]

Summary

The "Pickup Loop Optimization" update.

  • smartPickup Optimization: Refactored smartPickup in ItemEntityMixin to use Minecraft's native single-batch inventory addition. This eliminates chunk-by-chunk iteration, list splitting, and multiple object allocations when picking up mega-clumps.

Комментарии

Загружаем…