Code analysis by @unknown can be found in this comment.
Marker-ArmorStands should not be able to be interacted with, but despite that, pistons can push them.
Screenshots for visualization/proof attached.
Steps to reproduce:
Place a piston, sticky or regular, pointing upwards
summon an ArmorStand on top of that piston, with:
/summon ArmorStand ~ ~ ~ {Marker:1b,NoGravity:1}
The piston can push the Marker-ArmorStand upwards.
This affects all directions:
For horizontal directions make sure you summon it above the ground, standing on the ground and summoning it causes it to be underneath the piston head.
Pushing downwards only works if the hitbox of the ArmorStand (which is for Marker:1b ArmorStands about the height of the base plate) it at the position of the piston head.
I can understand that it is "works as intended" that NoGravity:1-ArmorStands can be pushed by pistons, as they are entities, but it should not be the case for Marker:1-ArmorStands.
From a mapmaker's perspective, it'd be a desirable outcome if Marker:1-ArmorStands could not be interacted with at all, aside from commands.
So a pushing with pistons shouldn't be possible at all.
Related issues
Attachments
Comments


Confirmed for
16w15b
This affects all directions. For horizontal directions make sure you summon it above the ground, standing on the ground and summoning it causes it to be underneath the piston head. Pushing downwards only works if the hitbox of the ArmorStand (which is for Marker:1b
ArmorStands about the height of the base plate) it at the position of the piston head.

Please link to this comment in the description
The following is based on decompiled version of Minecraft 1.9 using MCP 9.24 beta. All method and class names are the names used in the decompiled version.
The reason why this happens is probably because the EntityArmorStand
class is not overriding the method net.minecraft.entity.Entity.getPushReaction()
.
// Added this method
@Override
public EnumPushReaction getPushReaction()
{
if (this.hasMarker()) {
return EnumPushReaction.IGNORE;
}
else {
return EnumPushReaction.NORMAL;
}
}

@unknown Thank you }=)

You are welcome 🙂
But can you please restructure the report a little bit. Instead of using that many horizontal lines headings could make riding it easier. You don't have to quote what I wrote about how to reproduce it, combining it with what the report already contains would be helpful.
As MC-94007 described the NoGravity:1b
situation I guess you can leave this part out of the summary.
It would be good if instead a mod could create a "Relates to" link to MC-94007.

It was a mod adding your comment as quote in there, I just changed the order inside my comment 😸
Thanks for the advice, will change it!
Wish there'd be some sort of PM system here, so we don't have to write in here for such things.
I'm always scared I get a meta-discussion-scolding although I only mean it well.
-Thanks again!

Confirmed fixed for the AS being pushed from below - the AS now just falls through.
Will do the other tests later, but it looks good so far, thank you }=)