I was just doing some redstoning, and i made a lava arrow trap and put a nether portal in front of it. when it shot, it stayed for 2 seconds then vanished. when i went through the portal the arrows then shot, and stayed there.
Note: Currently the arrow doesn't even go to the nether at all, after the delay mentioned here it gets stuck in the portal as mentioned in MC-96007.
Linked issues
is duplicated by 3
Attachments
Comments 32
Is this still a concern in the current Minecraft version? If so, please update the affected versions in order to best aid Mojang ensuring bugs are still valid in the latest releases/pre-releases.
This is why it happens:
In Minecraft 1.16.1 and earlier versions, thrown projects checks if the OUTLINE shapes of blocks, to find potential collisions and chances to be teleported ("hit" a nether_portal block, for example)(See ThrowableProjectile.tick()). A portal has its non-empty OUTLINE shapes though it has no collision box which can stop regular entity movement, so thrown projectiles can always detect if it can be teleported no matter how high their velocity is.
But in 1.16.2-pre1, something was changed. The OUTLINE shape get no longer used in collision checks, instead, the COLLIDER shape has been used since then (See ThrowableProjectile.tick() & ProjectileUtil.getHitResult()). However, portals has empty COLLIDER shapes, so the teleporting check became dead code. And entities only stays in some seperated points, thus if the velocity of a thrown projectile entity is greater than 1 bloch per tick, it may pass through the portal if it failed to be teleported in the Entity.handleNetherPortal() method.
Suggestions to solve it:
The change may be intended to fix MC-73844, simply changing it back is not a good idea. But a addional ray trace may be introduced when the speed of the entity is higher than 1 block pre tick, just like what falling_blocks of concrete powder do.
Can you please attach some screenshots of that setup? And add more details to the description.