Pattern Provider pushes incomplete batches of ingredients, completely ignoring the state of the target inventories
AlisonHuang777 opened this issue ยท 7 comments
Describe the bug
footage1.mp4
footage2.mp4
Note1: Both of the tests have a (activated) Repeating Command Block in the background executing kill @e[type=minecraft:item]
to clear any dropped items.
Note2: I have to significantly lower the resolution of the footages in order to make their size less than 10MB.
How to reproduce the bug
See the footages submitted.
Expected behavior
The Pattern Provider should not push incomplete batches of ingredients under any circumstances, as the Guide suggests.
Additional details
Versions:
- Minecraft 1.20.1
- NeoForge 47.1.99
- AE2 15.0.21
- Create 0.5.1.f
Playing Prominence II Classic modpack v2.5.5, with modifications: https://gist.github.com/AlisonHuang777/d7b6cd3edf14da526dda8b70a7914cd9
Which minecraft version are you using?
1.20
On which mod loaders does it happen?
Forge
Crash log
https://gist.github.com/AlisonHuang777/972df9dba887fa43c9b3e4107a505cb1
I don't completely get what you're saying, but I assume that you mean this bug is known and there is no known way to fix this?
Also I though Pattern Provider will check whether there is enough space left for all the items which is going to be inserted.
this is a limitation of forges transfer api:
you can only simulate the insert of individual stacks, and all of the stacks can individually be inserted, but once some of them are inserted, inserting the rest will fail.
there is also no way to undo the first insertions
Is it even possible to do that? As I had used /data
command to get the NBT data of several different containers, and I had not see anything related to how big the container is.
I don't completely get what you're saying, but I assume that you mean this bug is known and there is no known way to fix this?
yes
Is it even possible to do that? As I had used
/data
command to get the NBT data of several different containers, and I had not see anything related to how big the container is.
it isn't possible to check that using the api
Wait, so that means with current API, the only thing you can do is try to insert something into a container, and the API will tell you whether the operation is successful or not?
And you also cannot execute an insertion and an extraction operation to the same target in the same gametick?
We can only check "can you accept ". Checking each dye separately works, however it's not possible to check that all dyes could fit at once in a way that will work for all possible types of inventories. So we really can't fix this issue.
In your case, a workaround is to enable blocking mode.