This isn't a bug in EnderIO per se, but it does affect it's usage with my mod. I'm making a mod called Demagnetize which applies the PreventRemoteMovement NBT tag to items around the Demagnetizer, which prevents them from being picked up from Item Magnets.
This behaviour works very well with the Electromagnet from this mod, but the Vacuum Chest also checks this NBT tag. As it isn't a magnet, it shouldn't be prevented from picking up these items; however removing this check would break compatability with Immersive Engineering's Conveyors, as it stops items being removed from conveyors. I have posted a similar issue on the CoFH issue tracker for the Vacuumulator, as it is the only other "Vacuum" block that checks this NBT tag.
I therefore propose that a check for an extra NBT tag be added, called AllowMachineRemoteMovement (or similar) that permits machines (but not item magnets) to remotely move items with it. It should only be checked if PreventRemoteMovement already exists on the EntityItem, to enable compatibility with existing mods.
If PreventRemoteMovement exists and AllowMachineRemoteMovement also exists, machines can remotely move items, but magnets cannot. If PreventRemoteMovement exists but AllowMachineRemoteMovement doesn't exist, neither machines nor magnets can remotely move items.
The Vacuum Chest doesn't pick up the items.
The Vacuum Chest should pick up items that have been Demagnetized, as it is not a magnet.
The main code that handles this is in EnderCore.
https://paste.ee/p/DB7Dt (probably not that useful though, there are no relevant errors in it)
It appears that this wasn't implemented correctly for the Vacuum Chest, and instead it runs the method shouldAttract(@Nullable BlockPos pullerPos, @Nullable Entity entity, boolean isMachine) with false on the isMachine argument, causing it to not suck any items "modified" by any demagnetization mod.
Is this intentional?
Darn, I messed up. Sorry and thank you.
Most helpful comment
Darn, I messed up. Sorry and thank you.