[SPIGOT-1653] Placed Skulls revert to Skeleton Skulls on chunk load Created: 02/Mar/16  Updated: 11/Dec/17  Resolved: 02/Mar/16

Status: Closed
Project: Spigot
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Simon Malone Assignee: Unassigned
Resolution: Cannot Reproduce Votes: 1
Labels: 1.9, skull
Environment:

net.minecraft.server.v1_9_R1



 Description   

This is printed to console:

[19:15:25] [Server thread/INFO]: Attempted to place a tile entity (net.minecraft.server.v1_9_R1.TileEntitySkull@79da0d0f) at 0,0,0 (BEDROCK) where there was no entity tile!
[19:15:25] [Server thread/INFO]: Chunk coordinates: -288,-896
[19:15:25] [Server thread/WARN]: java.lang.Exception
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.Chunk.a(Chunk.java:724)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.Chunk.a(Chunk.java:702)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.ChunkRegionLoader.loadEntities(ChunkRegionLoader.java:373)
[19:15:25] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.chunkio.ChunkIOProvider.callStage2(ChunkIOProvider.java:42)
[19:15:25] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.chunkio.ChunkIOProvider.callStage2(ChunkIOProvider.java:1)
[19:15:25] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.util.AsynchronousExecutor.skipQueue(AsynchronousExecutor.java:337)
[19:15:25] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.util.AsynchronousExecutor.getSkipQueue(AsynchronousExecutor.java:295)
[19:15:25] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.chunkio.ChunkIOExecutor.syncChunkLoad(ChunkIOExecutor.java:16)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:131)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:113)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.World.getChunkAt(World.java:298)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.ChunkCache.<init>(SourceFile:36)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.NavigationAbstract.a(SourceFile:110)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.Navigation.a(SourceFile:52)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.Navigation.a(SourceFile:75)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.PathfinderGoalMeleeAttack.a(SourceFile:42)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.PathfinderGoalSelector.a(SourceFile:94)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityInsentient.doTick(EntityInsentient.java:642)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityLiving.n(EntityLiving.java:1903)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityInsentient.n(EntityInsentient.java:487)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityMonster.n(EntityMonster.java:24)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityZombie.n(EntityZombie.java:175)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityLiving.m(EntityLiving.java:1759)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityInsentient.m(EntityInsentient.java:243)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityMonster.m(EntityMonster.java:28)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.EntityZombie.m(EntityZombie.java:232)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.World.entityJoinedWorld(World.java:1579)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.World.g(World.java:1554)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.World.tickEntities(World.java:1394)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.WorldServer.tickEntities(WorldServer.java:627)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.MinecraftServer.D(MinecraftServer.java:792)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.DedicatedServer.D(DedicatedServer.java:400)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.MinecraftServer.C(MinecraftServer.java:660)
[19:15:25] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.MinecraftServer.run(MinecraftServer.java:559)
[19:15:25] [Server thread/WARN]: at java.lang.Thread.run(Thread.java:745)



 Comments   
Comment by Simon Malone [ 10/Mar/16 ]

I was running Dynmap with the said fork yes, I'm testing now with the latest official release

Comment by PseudoKnight [ 10/Mar/16 ]

So few people are reporting, so I figured it had to be something specific. A plugin? By I don't have any plugins that mess with chunk loading ... except dynmap. So I double checked something. Simon, are you running dynmap? It appears this may have been caused by a fork of dynmap for 1.9 by firstEncounter. It was out a day earlier than the dev.bukkit.org release. His PR wasn't pulled, though, and I didn't notice it was a different commit until now. One of the differences had to do with TileEntity. I had the fixed version ready to be uploaded, but my test server had the broken version.

Comment by PseudoKnight [ 10/Mar/16 ]

Ug, dragon heads too? That's a killer.

Comment by Simon Malone [ 09/Mar/16 ]

Unfortunately it happens in all worlds on my end, incl. newly generated chunks. It has happened on more than one occasion with the dragon heads at the front of the end ships, so it is neither limited to player placed skulls nor pre-1.9 chunks

EDIT: Thanks for the link PseudoKnight, I did not find that bug report due to the generic name

Comment by PseudoKnight [ 09/Mar/16 ]

This happens even when just flying away from a chunk and back. It happens for all skull types. They revert to skeleton skulls and default rotation. It's inconsistent/random, though. Not all skulls will do this when loading. But it still happens frequently. The NBT shows nothing unusual before/after this occurs, so somewhere it it's not loading the correct position for the TileEntity.

I think it might have to do with the world not being the main world. I can recreate it on a secondary world, but not the main one. Is it the same for you, Simone Malone?

Here's a similar report
SPIGOT-1597

Comment by Simon Malone [ 08/Mar/16 ]

It is still happening in the latest build:

[00:48:52] [Server thread/INFO]: Attempted to place a tile entity (net.minecraft.server.v1_9_R1.TileEntitySkull@4e813b18) at 0,0,0 (BEDROCK) where there was no entity tile!
[00:48:52] [Server thread/INFO]: Chunk coordinates: 1600,-992
[00:48:52] [Server thread/WARN]: java.lang.Exception
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.Chunk.a(Chunk.java:724)
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.Chunk.a(Chunk.java:702)
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.ChunkRegionLoader.loadEntities(ChunkRegionLoader.java:373)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.chunkio.ChunkIOProvider.callStage2(ChunkIOProvider.java:42)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.chunkio.ChunkIOProvider.callStage2(ChunkIOProvider.java:1)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.util.AsynchronousExecutor.skipQueue(AsynchronousExecutor.java:337)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.util.AsynchronousExecutor.getSkipQueue(AsynchronousExecutor.java:295)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.chunkio.ChunkIOExecutor.syncChunkLoad(ChunkIOExecutor.java:16)
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.ChunkProviderServer.getOrLoadChunkAt(ChunkProviderServer.java:101)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.CraftWorld.loadChunk(CraftWorld.java:275)
[00:48:52] [Server thread/WARN]: at org.dynmap.bukkit.NewMapChunkCache.loadChunks(NewMapChunkCache.java:847)
[00:48:52] [Server thread/WARN]: at org.dynmap.bukkit.DynmapPlugin$BukkitServer$6.call(DynmapPlugin.java:458)
[00:48:52] [Server thread/WARN]: at org.dynmap.bukkit.DynmapPlugin$BukkitServer$6.call(DynmapPlugin.java:445)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftFuture.run(CraftFuture.java:89)
[00:48:52] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350)
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.MinecraftServer.D(MinecraftServer.java:729)
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.DedicatedServer.D(DedicatedServer.java:400)
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.MinecraftServer.C(MinecraftServer.java:660)
[00:48:52] [Server thread/WARN]: at net.minecraft.server.v1_9_R1.MinecraftServer.run(MinecraftServer.java:559)
[00:48:52] [Server thread/WARN]: at java.lang.Thread.run(Thread.java:745)
[00:49:12] [Server thread/INFO]: Unknown command. Type "/help" for help.
[00:49:23] [Server thread/INFO]: [World]Goche ยป Is it worth a try to smack an enderman in the face with the new update and see what happends?
[00:49:44] [Server thread/INFO]: This server is running CraftBukkit version git-Spigot-3104eb1-bf43ca6 (MC: 1.9) (Implementing API version 1.9-R0.1-SNAPSHOT)
[00:49:44] [Server thread/INFO]: You are running the latest version

It happened a few minutes after leaving the chunks by going into the nether.

Comment by Simon Malone [ 03/Mar/16 ]

Did you try placing the skulls (outside the spawn chunks), making sure that the chunks were unloaded and then entering them again? It seems to take some time (I know that makes little sense in the sense of coding (maybe some garbage collection?)). We get this repeatedly and this was not an issue before we updated.

Comment by Thinkofname [ 02/Mar/16 ]

Can't reproduce (tested with multiple heads)

Generated at Fri Apr 11 15:30:00 UTC 2025 using Jira 10.3.3#10030003-sha1:d220e3fefc8dfc6d47f522d3b9a20c1455e12b7b.