KnightMiner / Inspirations

Mod adding various smaller features to Minecraft
MIT License
44 stars 18 forks source link

Duplication of dropped items from broken blocks using 2+ Collectors #227

Open BreadBxsket opened 2 years ago

BreadBxsket commented 2 years ago

Describe the bug When redstone runs over multiple collectors in a specific fashion (see picture), and a block placed in the middle of the collectors is broken, multiple collectors can collect the dropped item. If only one block is broken before checking the collector inventories, only one block can be removed, and all others will disappear. If two blocks are broken before removing from the collector, ~all~ most blocks can be removed, placed, and used as real blocks.

The linked video contains a full example of how this bug is performed. Note for video: In the video, I use repeaters with a 3-tick delay, but this isn't necessary. In creative, I performed this with 1-tick delay repeaters, but it is easier to accomplish in a survival example with a 3-tick delay.

Screenshots or crash report (if relevant) Redstone: 2021-11-27_22 35 15

Mod list and Mod Folder: Screenshot_23

Video Example: https://youtu.be/UjpNlmY1KLk

Versions (please complete the following information):

Other mods required None

List any other mods required to reproduce this issue. Test by running the game with minimal mods.

This test was done with a fresh profile on Curseforge Launcher, with only Inspirations and Mantle installed.

KnightMiner commented 2 years ago

Thank you for the detailed report. However, providing details does not exempt you from following the issue template. Please add in the information you missed from the issue template. Additionally, I do not really understand what you are saying. Is the block broken inside the collectors? When you say two blocks broken, do you mean at the same time? How is that possible with just Inspirations? If not at the same time, are you sure there is a dupe and not just the items from the second block?

I can say vanilla does not thread block updates, so it does not make sense something like this would cause a dupe bug. Each collector will run one after another, so the item entity is already removed by the time the final collector runs. Ghost items also don't make sense as nothing in the code runs client side, its all serverside. Thus, I need more information, as I cannot see this happening without performance mods.

BreadBxsket commented 2 years ago

I've updated the report with the template, an image of both my mod list and mod folder, and a video showing how to perform the dupe.

KnightMiner commented 2 years ago

Ah, I see. There are no ghost items here. All collectors grabbed the "same" item stack. The reason for the duplication is because you modified the "same" stack so both copies got updated. Probably just missing a copy call somewhere, or an isAlive check