mojira.dev
MC-91528

End crystal replacing blocks with fire/able to place end crystal inside blocks including bedrock (End dimension only)

16w02a: You can no longer place end crystals inside blocks. However, it is still possible for blocks (obsidian landing platform, obsidian towers, lit end portal, unlit end portal) to be generated in locations where the user has previously placed an end crystal. The end crystal will then replace these blocks with fire. It should instead only replace air and fire with fire.

One such example is demonstrated in the two attached screenshots. In before.png, a piece of bedrock was removed from the unlit end portal. Note that this is possible in survival and that it also is possible for users in older (pre-1.9) worlds to place an end crystal at 0,0 where the end portal will be moved to after summoning another dragon. In after.png, the ender dragon was killed and a lit portal was placed over the unlit portal. The end crystal placed fire inside itself, removing one block of bedrock from the newly placed bedrock frame. Note that without the end crystal the bedrock frame would have been repaired.


Old description:

End crystals keep placing fire at their location even if they are inside a block such as bedrock or end portals. This causes issues like MC-92352 when the game places blocks inside end crystals, especially blocks that are supposed to be unbreakable such as bedrock or end portals. Other affected structures include the obsidian pillars.


Code analysis by @unknown can be found in this comment.

Linked issues

Attachments

Comments 17

If this is not a bug this will sucks example factions servers with bedrock walls
or jails for vanilla servers without protection

all servers can easely prevent you from getting end crystals in these area's using /clear

all ender crystals need fire at their location, that's just the way ender crystals always have worked

don't get me wrong, this might still be an issue, but just bear that in mind

Confirmed for

  • 15w44a

Happens when you click on the bottom block of a two block high obsidian or bedrock tower. The reason for this is that it is placed then at the position of the upper block and because it creates a fire block, it replaces the upper block.

ProfMobius (Thomas Guimbretiere)

Can you confirm it in the next snapshot ? I couldn't reproduce it using the current codebase.

ProfMobius (Thomas Guimbretiere)

Finally managed to reproduce.

This issue only occurs in the End.

7 more comments

Please link to this comment in the description

The following is based on a decompiled version of Minecraft 1.9 using MCP 9.24 beta.

The reason for this is that the method net.minecraft.entity.item.EntityEnderCrystal.onUpdate() is only testing if the block the fire should be placed at is not already a fire block. To make this more efficient it should call the method net.minecraft.block.BlockFire.canPlaceBlockAt(World, BlockPos) as well to make sure that the fire block is not removed every tick because the position is invalid.

Is this still an issue in the latest snapshot 16w44a? If so please update the affected versions.

This is an automated comment on any open or reopened issue with out-of-date affected versions.

Is this still a problem in Minecraft 1.11?

gaspoweredpick

This seems to be fixed in 1.13.2 and 19w09a. See my screenshots.

Jack McKalling

Yes, indeed fixed, checked in 19w35a.

End Crystal remains in position, overlapping the newly (re)generated bedrock block, however it does not replace the block with fire anymore, nor does it set the block on fire.

Adrian kili

Jens Bergensten

Confirmed

(Unassigned)

Minecraft 15w44a, Minecraft 15w44b, Minecraft 15w45a, Minecraft 15w46a, Minecraft 15w47a, Minecraft 15w47b, Minecraft 15w47c, Minecraft 15w49b, Minecraft 16w02a, Minecraft 16w06a

Minecraft 15w49a

Retrieved