BlueMap

BlueMap

85.1k Downloads

Add option to allow high detail only near players

StoneLabs opened this issue ยท 7 comments

commented

Is your feature request related to a problem? Please describe.
Not a problem. Just a feature request.

Describe the solution you'd like
Add an option to only load high-resolution terrain near players. At a certain distance from players, the terrain should be low-res. This would be nice for balancing on survival servers and preventing the map from being too OP.

The low-detail area could simply use the low-res terrain that is currently loaded before the full-res one. The server will in turn only send the high detail area if the location is near a player.

Example implementation
image

Thanks, Stone

commented

preventing the map from being too OP

This is only feasible to be implemented client-side. Which means its easily (with little js knowledge) reversible for any client.
=> Players that really want to see the map further from their positions will be able to do so, just by putting a command in their browsers js-console..

With that in mind, is this feature still worth the effort? :)

commented

Sure, but most people won't make the effort to bypass it. And I think (could be wrong ofc), it's not that complicated to implement.

I think it would be a great feature! Especially if you're only playing with a small group of friends like me. :)

commented

It is quite expensive to implement..

There is currently quite a complicated system that makes sure that new map-tiles are loaded when the camera moves, in a circular pattern from in->out while still being somewhat responsive to rapid camera-movement changes..

Implementing this, means to repeat that process for each player-marker while still checking for the camera-position..
This introduces a lot of potential for bugs and tiles not being loaded where they should ^^'

commented

I could be wrong, I haven't looked through the code. But wouldn't it suffice to simply abort the render of the high res chunk at the last stage if the distance from any player is less than the specified radius given by the server?

e/ the camera position-based loading can be kept. Meaning only loading high-res geometry around the camera (as it currently is) IF it is within player distance.

commented

Yes, and then the player moves, and the tiles won't load where the player moved until you move the camera away and back again ^^

commented

Mhm i see good point

commented

So basically: i like the idea, but its complicated to do properly, so if we keep this issue open, it would be very low priority on the unfortunately quite big TODO-list :/