mojira.dev
MC-2110

Projectiles shot at a Nether Portal appear behind it before disappearing to The Nether

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

Attachments

Comments 32

Mortvert (Mort Imert)

Can you please attach some screenshots of that setup? And add more details to the description.

I made a file because i tried putting up the screenshots but that did not seem to work.

Here are some of the pictures

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.

Yes, the glitch is still in 1.4.5 if you want me to put up the file of the world i can do so.

22 more comments

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 confirm in 1.19.

Can confirm in 1.19.3 and 23w04a

Can confirm in 23w05a

Can confirm in 23w06a

john smith

(Unassigned)

Confirmed

Platform

Low

Projectiles, Rendering

Minecraft 1.4.2, Snapshot 13w03a, Minecraft 1.7.1, Minecraft 1.7.2, Minecraft 1.7.4, ..., 1.19.3, 23w04a, 23w05a, 23w06a, 1.21 Pre-Release 1

Retrieved