duping Multiblock structures (thermal wrench)
jottafan opened this issue ยท 4 comments
Minecraft Version
1.16.
tried on modpacks: Stacia expert, and enigmatica 6 expert
Immersive Engineering Version
latest for MC1.16
Expected Behavior
i expect the breaking of a single block in a multiblock machine to break the single block without rebuilding the whole thing depending on its orientation.
("support has ended" so i guess its too late for this one")
but was told to make a new post:
(quote::) Please open a new issue rather than necroposting on an old one.
In that new issue, please elaborate on "by turning/wrenching". What mod are you using to do that?)
Actual Behavior
By wrenching (with thermal:crescent_hammer) a block in a IE multiblock then break it. U dupe the whole machine minus the single block u turned.
also happens with "carry on" mod. "accidently" pick up a block and accidently put it back in the wrong orientation. break it to make it right. boom u have 2 machines inside eachother. I bet that if u pick up a block and put it somewhere else it would rebuild the whole thing.
the rebuilding that happens also overwrite anything thats already in its way. broke my nearby mutliblock-machine by trying this out again. :D
https://www.curseforge.com/minecraft/mc-mods/carry-on
Steps to reproduce
1 make sure the multiblock has formed and rendered.
2 change orientation/pick up one of the blocks.
3 break that block.
4 get the loot, and dont tell them u cheated.
Debug Crash Log
e
I would put the blame for this one on Thermal. Their Crescent Hammer forcefully rotates blocks by searching for the first property that could be rotatable and modifying that instead of going through the Block#rotate()
method. IE is not the only mod where this causes issues, I have had one of my mods crash because this would create invalid (by internal definition) state combinations. This is also an issue in 1.18.
You would have to put the blame on carry_on aswell then.
I dont understand enough code to know but; i havent seen this happen to any others mod's multiblock machines. This happens with IE + any mod thats able to rotate/move a block. i saw older github posts were blame also were put on the other mods for rotating/moving it. causing the same thing to happen. So my real question is: is this really any other mods fault that breaking 1 block rebuilds the whole thing, overwriting exisiting blocks in that area also duping everything?
lets say a new mod comes along and moves or rotate things. same would happen again and again.
(again, i have no clue how your multiblocks really works other than what i see ingame so i wouldnt know if this question is legit at all :P)
Components of IE multiblocks are inherently not rotatable. AFAIK they even have certain marker tags to mark them as unrotatable and unmovable for mods that respect those tags. If a mod intentionally circumvents all safety measures without a way the other mod can prevent it and also circumvents the methods explicitly intended to let the influenced block decide how to handle rotation (if at all), then the blame is fully on the mod with the rotation or movement tool.
Both Thermal and Carry On are not behaving to specification.
Thermal's forced rotation is bad implementation on their end. Report to them.
Carry On should respect the forge:immovable
and forge:relocation_not_supported
block entity tags, and it clearly isn't. Report to them.
Our support for 1.16.5 has ceased, and I don't believe there is much for us to do here anyway. We make use of existing, specified methods to make sure people don't break out multiblocks this way, and it's other mods that are explicitely ignoring those limits.