3 ms·
In Minecraft you can dig blocks. When you click to dig a block, it just calls the RPC method CPacketPlayerDigging with the coordinates of the block. The serve
by rvnx 5y ago
In Minecraft you can dig blocks.
When you click to dig a block, it just calls the RPC method CPacketPlayerDigging with the coordinates of the block.
The server replies "Block of type ABC is too far".
So, of course, you now know that at (X,Y,Z) you have a block of type "ABC".
This RPC has no rate-limiting, so yes, you can know the whole map.
The fact that you can dig any block on the map, seems like a shortcut taken by developers of the server to save time or resources.
I'd even say it's almost intended behaviour.
Tech details: https://2b2t.miraheze.org/wiki/Nocom https://2b2t.miraheze.org/wiki/Nocom
- leijurv 5y agoNot quite a shortcut, it was actually to patch a bug in vanilla minecraft that causes desync, see https://news.ycombinator.com/item?id=29621262 https://news.ycombinator.com/item?id=29621262 And it may seem silly that it tells you that it's block type ABC, but the reason is to tell your client to put it back as block ABC, instead of air. (in other words, it has to "undo" your client claiming to have mined that block [which replaces whatever it is with air]).
- rvnx 5y agoI don't know why the server would give information about far-away chunks (maybe some tolerance due to possible desync why not) instead of an error code "you are too far" :/
- leijurv 5y agoWell, read https://news.ycombinator.com/item?id=29621262 https://news.ycombinator.com/item?id=29621262 if you want to know why this ended up happening :)