firestarter / bulletin

0 stars 0 forks source link

Buying a player head kicks all players/"Server shutting down" #21

Closed apmarsenault closed 3 months ago

apmarsenault commented 3 months ago

Buying a player head after searching for one crashes the server. (Waiting on /headdb update?)

apmarsenault commented 3 months ago

Also, placing successfully purchased heads causes them to disappear from both world and inventory.

nkomarn commented 3 months ago
---- Minecraft Crash Report ----
// I let you down. Sorry :(

Time: 2024-05-15 10:12:23
Description: Exception ticking world

java.lang.IllegalStateException: Player name contained disallowed characters: 'Head Database'
    at com.mojang.serialization.DataResult$Error.getOrThrow(DataResult.java:275)
    at com.mojang.serialization.DataResult.getOrThrow(DataResult.java:79)
    at net.minecraft.world.level.block.entity.SkullBlockEntity.saveAdditional(SkullBlockEntity.java:127)
    at net.minecraft.world.level.block.entity.BlockEntity.saveCustomOnly(BlockEntity.java:142)
    at net.minecraft.world.level.block.entity.SkullBlockEntity.getUpdateTag(SkullBlockEntity.java:190)
    at net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket.create(ClientboundBlockEntityDataPacket.java:32)
    at net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket.create(ClientboundBlockEntityDataPacket.java:36)
    at net.minecraft.world.level.block.entity.SkullBlockEntity.getUpdatePacket(SkullBlockEntity.java:185)
    at net.minecraft.world.level.block.entity.SkullBlockEntity.getUpdatePacket(SkullBlockEntity.java:34)
    at net.minecraft.server.level.ChunkHolder.broadcastBlockEntity(ChunkHolder.java:344)
    at net.minecraft.server.level.ChunkHolder.broadcastBlockEntityIfNeeded(ChunkHolder.java:335)
    at net.minecraft.server.level.ChunkHolder.broadcastChanges(ChunkHolder.java:311)
    at net.minecraft.server.level.ServerChunkCache.tickChunks(ServerChunkCache.java:668)
    at net.minecraft.server.level.ServerChunkCache.tick(ServerChunkCache.java:486)
    at net.minecraft.server.level.ServerLevel.tick(ServerLevel.java:875)
    at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1785)
    at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:467)
    at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1577)
    at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1237)
    at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:326)
    at java.base/java.lang.Thread.run(Thread.java:1583)
nkomarn commented 3 months ago

This has been resolved by bytecode modifications to Head Database; this is a total bandaid fix but will carry us until the plugin receives an update to address this issue.