1.1.0
Compatibility
Required content
Changes
1.1.0 — no more wrong item thrown on servers
Fixed
-
On dedicated servers the mod could throw out the wrong item — most visibly the sword you were holding instead of the rotten flesh that triggered the eject, after which the client and the server disagreed about the held item.
Two separate causes, both fixed:
-
Hotbar stacks were ejected by selecting the slot, calling the vanilla drop, and restoring the previous selection — all within one tick. Selecting a slot only changes client-side state, and the packet that tells the server about it is sent from the use and attack paths, not from the drop path. The server therefore never heard about the switch and resolved the drop against the slot it still believed was selected. Every slot now ejects through a single container click that names the slot explicitly, so there is no held-slot state left to get out of sync.
-
The client predicts a pickup and updates its inventory before the server has processed the same pickup. Ejecting inside that window made the server drop whatever it still believed was in the slot. A blacklisted stack now has to sit still — same slot, same item — for a short settle time before it is thrown back out, and anything changing underneath restarts the timer.
-
Added
- New setting "Eject delay", default 250 ms (5 client ticks). Cycles through
0 / 100 / 250 / 500 / 1000 / 2000 ms on the settings screen, and is stored
as
ejectDelayTicksin config/pickupfilter.json. 0 ms restores the old, racy behaviour. The value is clamped to 40 ticks. - Mod icon, so the mod is recognisable in the Mod Menu list.
Notes
- This only affects the dedicated-server fallback (Path B). Singleplayer and LAN worlds still block the pickup outright through the pickup mixin and were never affected by the race.
- Existing config files load unchanged; the new key is written on the next save with its default.
1.0.0 — first release
- Blacklist any item and stop collecting it, even with a free inventory.
- Singleplayer and LAN: the pickup is cancelled outright, so the item stays on the ground and there is no inventory blip.
- Dedicated servers: item pickup is decided by the server and cannot be vetoed by a client mod, so blacklisted items are picked up and immediately thrown back out through a normal vanilla drop.
- Settings screen with the blacklist as a clickable item grid, an item picker, a master toggle, a "clear all" with confirmation, and Mod Menu support.
- Loop protection: one eject per tick, and a 3-second per-item cooldown so a re-collected stack does not bounce in and out.
- Armour and offhand slots are never ejected.
- Built for Minecraft 26.2 / Fabric, Java 25. Requires Fabric API.
Optional dependencies
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:whZIYBvg:VAj40FrX"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:whZIYBvg:VAj40FrX"
}

