Geyser icon indicating copy to clipboard operation
Geyser copied to clipboard

Invisible items in the inventory

Open cerus opened this issue 2 years ago • 6 comments

Describe the bug

Certain items (typically containers with lots of nbt data) will not be visible to Bedrock players. They can have these large items in their inventory, but it won't be displayed to them. So far this has happened with shulker boxes and barrels.

I dumped an example item that causes this issue in this gist: https://gist.github.com/cerus/86ee2c47b5c033a0c017a4e520bda15c A modified version of the item that can be displayed can also be found in the dump.

The example item has a size of around 127K bytes. I tried creating a stone item with lots of nbt data (160K bytes) and for some reason this can be displayed by the Bedrock client, so I assume this only affects containers.

To Reproduce

  1. Create a container (barrel, shulkerbox, ...) with lots of nbt data
  2. Give the item to a Bedrock client
  3. The client will not see the item

Expected behaviour

I expect that the Bedrock client will be able to see the item

Screenshots / Videos

Screenshot

Server Version and Plugins

Server:

This server is running Paper version git-Paper-792 (MC: 1.16.5) (Implementing API version 1.16.5-R0.1-SNAPSHOT)
You are 2 version(s) behind
Previous version: git-Paper-790 (MC: 1.16.5)

Proxy: [06:10:27] [main/INFO]: Enabled Waterfall version git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:ba3bbcc:483

Plugins:
WorldEdit, WorldGuard, Floodgate, LuckPerms and lots of private plugins

Geyser Dump

No response

Geyser Version

Geyser version 2.0.3-SNAPSHOT (git-master-137eb3e)

Minecraft: Bedrock Edition Device/Version

1.18.12.01 on Linux using https://github.com/minecraft-linux/mcpelauncher-manifest and 1.18.32 on Android

Additional Context

No response

cerus avatar Jun 01 '22 11:06 cerus

Could you please dump the NBT by holding the broken item in your hand and running /paper dumpitem? The output will also post to the console. Thanks!

Camotoy avatar Jun 01 '22 12:06 Camotoy

Could you please dump the NBT by holding the broken item in your hand and running /paper dumpitem? The output will also post to the console. Thanks!

Here's the dump: https://gist.githubusercontent.com/cerus/305344fef6fc73b98249f579ae1fda95/raw/53ac390d2446351c7e1ae589f5f45df7c74cba3a/nbt-dump

cerus avatar Jun 01 '22 12:06 cerus

Sorry for the delay - the most recent dump seems to have included the chat colors that Paper uses for making the output pretty. Would you be able to get one with those stripped? Thanks.

Camotoy avatar Jun 14 '22 02:06 Camotoy

@Camotoy here I made a datapack to give yourself the item. bukkit_datapack.tar.gz

Kas-tle avatar Jun 14 '22 02:06 Kas-tle

The bug has been confirmed. Issue: Caused by: java.lang.IllegalArgumentException: Reached depth limit

The NBT tag is very large.

Camotoy avatar Jun 14 '22 03:06 Camotoy

Hey, is there any update on this? Are you planning on fixing this or is it out of scope?

Thanks!

cerus avatar Jul 19 '22 08:07 cerus

Does this issue still occur on the latest version of Geyser? If that's the case, send a new Geyser dump.

onebeastchris avatar Jun 06 '23 00:06 onebeastchris

Does this issue still occur on the latest version of Geyser? If that's the case, send a new Geyser dump.

Will test this out once we update Geyser in a couple of days, I'll keep you updated

cerus avatar Jun 08 '23 14:06 cerus

Closing this due to no response, feel free to create a new issue with reproduction steps in case it still persists :)

onebeastchris avatar Jul 17 '23 00:07 onebeastchris