Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for LucasTHCR

Dynamic view & simulation distance adjustment per world — automatic, MSPT-aware, and fully configurable in a single conf

Report ViewDistanceTweaks?

R

2.5-RELEASE

ViewDistanceTweaks v2.5

Dynamic view distance and simulation distance adjustment per world — lightweight, fully configurable, and built for performance-critical servers.

Changelog

  • Fixed per-player fixed view distance not working at all: the viewdistancetweaks.fixed.<value> permissions were only evaluated after the main engine had passed its start-delay and startup-grace period, and were skipped entirely while the plugin's master switch was off. With the default config that meant the permission did nothing for roughly the first 7 minutes after every restart. It is now handled independently of the main engine.
  • Fixed the override silently never being installed when the world already happened to sit at the same value: the check that decided whether an update was needed could not tell "this player has a fixed override" apart from "this player is simply following the world", so no override was ever applied and the player quietly drifted back to the world's distance on the next adjustment. This is why the feature appeared to work for some players but not others.
  • Fixed revoking the permission having no effect: players stayed pinned to their old fixed view distance until they relogged, even after the permission was removed or the feature was switched off in the config. They are now handed back to their world's normal distance right away.
  • Fixed the permission-prefix option being case-sensitive, so any prefix containing uppercase letters matched no permission at all.
  • Fixed out-of-range permission values (e.g. viewdistancetweaks.fixed.64) throwing internally and taking the whole feature down — values are now clamped to the valid 2–32 range.
  • Fixed unsupported servers failing silently: if the per-player view distance API is unavailable, a clear warning is now logged instead of the feature quietly doing nothing.
  • Fixed fixed-view players not being re-applied after respawning, and added proper cleanup of tracking data on disconnect.
  • /vdt reload now applies changed per-player-fixed-view settings immediately instead of waiting for the next check cycle.
  • The plugin is now enabled by default in a freshly generated config.yml.

Dependencies

Support

Join our Discord: dc.gg/paperstream

Author: LucasTHCR

Information

Author
LucasTHCR
Published
August 7, 2026
Downloads
0

Platforms

Paper
Paper
1.21–26.2