cavallium / CoordinatesObfuscator

Hide the real coordinates to the players
GNU Affero General Public License v3.0
35 stars 11 forks source link

Vanilla worldborders experience cosmetic and functional issues #2

Closed Sabinno closed 2 years ago

Sabinno commented 4 years ago

This plugin does not support vanilla world borders and, both cosmetically and functionally, breaks them severely. The red vignette is perpetually present on worlds with tightly confined worldborders. At the edges of the worldborder, the worldborder wall cannot be seen. Additionally, the client does not stop the player from traveling beyond the worldborder. Could the worldborder data sent to the player potentially be shifted with coordinates to resolve this?

https://wiki.vg/Protocol#World_Border

cavallium commented 4 years ago

Unfortunately there is no way to fix the world border, because it almost always start from 0,0, so if you fix it in any way, the player can calculate the offset of the real coordinates.

cavallium commented 4 years ago

If you find a solution that is mathematically secure I'll fix this.

Sabinno commented 4 years ago

I can certainly see where you're coming from, having thought it over myself.

However, the likelihood of a Minecraft player performing some kind of packet analysis to determine relative coordinates based on the worldborder info is... Just about zero. Not even hacked clients (e.g. Wurst) check that kind of stuff afaik.

I definitely understand the importance of mathematical security for this plugin, but we're not talking about securing passwords -- we're talking about obscuring world coordinates within a video game.

I feel like an option to enable worldborder shifting would be fantastic, as it saves me from having to install yet another plugin just for a feature that already exists in vanilla Minecraft.

cavallium commented 4 years ago

The problem is that reading the worldborder packet is the easiest thing in the world. It contains the precise coordinates. It's about doing a simple subtraction.

cavallium commented 4 years ago

The easiest thing that you can do is reducing the worldborder radius to 29 million, that's a very small number compared to the already enormous maximum world size.

AoElite commented 3 years ago

How about just adding a configuration option to fix this?

cavallium commented 3 years ago

Yes, it's feasible, but I don't have time to do that. If someone opens a pull request with that feature I'll merge it.

Gaming32 commented 2 years ago

I feel like a use case for this without causing security harm are for when the plugin wouldn't be used for security with #11.

cavallium commented 2 years ago

The latest release (v1.4.6) fixes the world border issues