The bug
Sometimes the client is uninformed about a block's state because it's only necessary for the server. Example: hoppers
When F3+I is used to request server-side block data, it fetches NBT from the server, but still copies the client-side block state, which is not always accurate.
How to reproduce
Place a hopper
Place a redstone block next to it
The
enabled
state is now set to false, but the client still thinks it's trueLook at the hopper and press F3+I
→ ❌ The copied block state contains "enabled=true
" from the client instead of "enabled=false
" from the server
Linked issues
Attachments
Comments 5
This also affects droppers and dispensers
-this is the same issue that has been unresolved for years where a hopper/dropper/dispenser's state doesn't update the client until a player interacts with it or relogs. F3+A also does not update this info. (can't make a texture pack that changes a hopper/dropper/dispenser's texture when the block's state changes... :/ )
That's MC-60242. This report would still be an issue even if that one is intended.
Can confirm for 1.20.2. Cannot reproduce with hoppers as of 1.20.2 Pre-release 1, however, it can still be reproduced with sugar cane, cactus and sapling with the following steps:
Place a sugar cane and put an observer next to it, and wait for the sugar cane to update.
When an update is triggered, run F3+I on the sugar cane, and copy the state to an "execute if" command.
Notice how the test fails, meaning that current state doesn't match the state got from F3+I.
Confirmed for 1.13.2-pre2.