mojira.dev
MC-233189

The Owner tag of ender pearl works unexpected

Expected behavior

When Ender Pearl is thrown by a player, its Owner tag should be equal to the UUID of its thrower. And when modify the Owner tag, its teleport target should be change to the entity who's UUID is match the Owner tag.

Actual behavior

  1. When the player throws Ender Pearl (Owner tag is automatically generated), change it to an Armor Stand, will eventually still teleport the player. ❌ Unexpected

  2. Using summon command with the Owner tag will be teleported its owner. ✔ Expected

Steps to reproduce

1. Place a repeat command block, always active, no condition. And type following command in the command block.

execute as @e[type=ender_pearl] run data merge entity @s {Motion: [0.0, 0.0, 0.0]}

the command will let the ender pearl stay in the air and not back to the ground.

2. Throw an ender pearl.

3. Place an armor stand.

4. Run this command for copy the UUID of the armor stand to the Owner of the ender_pearl.

data modify entity @e[type=ender_pearl,limit=1] Owner set from entity @e[type=armor_stand,limit=1,sort=nearest] UUID

5. Stop running the command block you placed on the first step. Now the pearl should be fallen. The Owner had changed, so the armor stand should be teleported. But you will be teleported.

Related issues

Comments

ampolive

Can confirm.

pine1needle

This issue is already being tracked at MC-226344.

pine1needle

Also, you wrote here that the Owner tag of the ender pearl is different each time the ender pearl is thrown, even though the pearl was thrown by the same player. This is incorrect. The Owner tag is always initially the same as the UUID of the player who threw the pearl. You believed it was different because there is an error in your commands. In step 3 of your reproduction steps, you put

data get entity @e[type=ender_pearl,limit=1] UUID

but it should have been

data get entity @e[type=ender_pearl,limit=1] Owner

instead.

migrated

There is another point, which is the UUIDs were different when a same player throw the pearl. in MC-226344, this point is not reported. This issue should be valid. But I am not so sure the issue can be confirmed. The bug was found when I building a Minecraft game world. It may be influenced by some commands in datapack of the world. I reported this bug when I decrease the influence of datapack as more as possibee.

The UUID tag is a fault when I edit the body. I corrected it.

pine1needle

It is intentional that the UUID of the ender pearl is different each time an ender pearl is thrown. UUIDs must be unique for each entity. If the UUID of the pearl was always the same when thrown by the same player, then if a player threw a second pearl before the first pearl landed, the two pearls would both have the same UUID, and thus the UUIDs would not be unique.

migrated

Actually, the "different UUID" I mean is the Owner of ender pearl. It is the mark of the owner. But when I tried to reproduce, it can't be confirm. I will edit the text and remove things about that. So this should be duplicate. Sorry about that 😞

migrated

(Unassigned)

Unconfirmed

Entities

1.17.1

Retrieved