Simple Storage Network

Simple Storage Network

56M Downloads

Dupe bug with mod interaction

DevTimur opened this issue ยท 6 comments

commented

One of the mods, Factory Tech got Autocrafting unit. You can put items in, but can't pull out using various hoppers, AE busses or itemducts. But your Storage link can pull items, but actually it dupes them...
https://i.gyazo.com/891c2087a9d2bf0ac230125598a0be51.gif
I will report same thing to developer of Factory Tech. Maybe he will use other method of "item extraction" lock (I'm not a coder, so i don't know how it's done)

commented

Bumping this as the Factory Tech dev, as I'm almost certain it's not on my end.

commented

Thanks for the patience on this i havent had time to look at it.

It uses kind of an oldschool method and not item capabilities if thats what youre getting at. I havent found any other mods this breaks on even storage drawers are ok but this is not forgotten

commented

I have another example of a mod interaction dupe with relation to Simple Storage Network, if you take an item buffer from Inductive Logistics mod and connect it to the network with a link cable, place any item inside the item buffer, lock the item buffer in its gui so that it remembers what items are set to each slot, now open the Simple Storage GUI and remove the item then the item will show as if it has 2.14B of that item and you can pull it out by the stackful. This only works if the item buffer slots are locked and the last 1 of an item is pulled out as this leaves a ghost image of the item in the item buffer with a 0 on it, yet somehow Simple Storage is able to still pull items out of the 0 stack. Had planned to write an issue for this, but this seems like it may be related. If not, let me know and I will open a seperate issue for this!

commented

Inductive logistics MIGHT be a different issue, just starting to investigate.

For factory tech, All I do is call

IItemHandler:extractItem

and it gives me out items

If you read the docs it says

    /**
     * Extracts an ItemStack from the given slot.
     * **_The returned value must be empty if nothing is extracted,_**
     * otherwise it's stack size must less than than amount and {@link ItemStack#getMaxStackSize()}.
     *
     * @param slot     Slot to extract from.
     * @param amount   Amount to extract (may be greater than the current stacks max limit)
     * @param simulate If true, the extraction is only simulated
     * @return ItemStack extracted from the slot, must be empty if nothing can be extracted.
     *         The returned ItemStack can be safely modified after, so item handlers should return a new or copied stack.
     **/
    @Nonnull
    ItemStack extractItem(int slot, int amount, boolean simulate);

However, it does not return an empty stack , even though nothing is extracted, breaking the contract of that interface

I will look into making a bug or PR for factory tech

commented

@psychofad hey sorry i forgot about your comment. Can you please open a new issue and also have some screenshots of your setup, im a noob at inductive logistics apparently i cant see how to do a setup like this

commented

ON factory tec the bug is on their end , as per my previous comment i just forgot to close this. Factory Tech dev is free to dm me if they have any questions