[Mod Interaction] PneumaticCraft Drones are having trouble detecting block breaks when dealing with Sand from Lava/Starlight interactions.
MuteTiefling opened this issue ยท 4 comments
Minecraft Version
1.12.2
Forge Version
14.23.5.2838
Mod Version
PnC: 1.12.2-0.11.7-375
AS: 1.12.2-1.10.20
Describe your problem, including steps to reproduce it
I'm using the following code to dig sand generated by Astral Sorcery's Lava/Liquid Starlight interaction. https://gist.github.com/MuteTiefling/4df0eafd1a8927b1b5b550bafd8f23e5
If I give the drone a flux bore with anywhere from Efficiency 0 to 4, it will dig up the sand as expected, collecting it by way of a magnet upgrade, and go drop it off in a chest whenever it has a stack of sand on it.
However, if I give the drone an Efficiency 5 Flux Bore, it is fast enough to 'insta-mine'. At this point, it seems unable to tell that it has actually broken a block and will sit there digging sand in an infinite loop. Even enabling the 'limit block interactions' on the Dig Area widget appears to be ignored in this case.
Any other comments?
Desht was unable to reproduce with a block placer placing sand, however I suspect that the block placer may well be going a tiny bit slower than the Starlight/Lava interaction. I think it may be the sheer speed at play here that's causing this interaction.
Here's a link to a video of this in action: https://streamable.com/tt4rn
@Doomgull Posting it here in hopes that you guys can work together to figure it out. It appears to be strictly due to how AS is placing that new sand in the world as standard block placing machines don't reproduce the issue.
It uses the vanilla fluid block neighbor update trigger to set the block state for the position checked to sand/ice/ore/whatever is chsnging. If whatever detector is being used isn't seeing that as well, not really sure how that is an AS issue, again.
Here is the class as proof if you want to take it back to pneumaticraft: https://github.com/HellFirePvP/AstralSorcery/blob/master/src/main/java/hellfirepvp/astralsorcery/common/block/fluid/FluidBlockLiquidStarlight.java