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

Per-world view and simulation distance, adjusted automatically from MSPT and chunk load.

Report ViewDistanceTweaks?

R

2.15.0-RELEASE

New: diagnostics mode

/vdt diagnose on writes down what the plugin sees and decides, so a problem can be looked at afterwards instead of only while it happens. One file per day in plugins/ViewDistanceTweaks/diagnostics, one JSON line per entry, no player names.

  • A sample every interval-seconds (60): MSPT, TPS, tick variance, free heap, players, and per world the distances, loaded chunks, players, the highest client view distance, terrain generation and the density bonus. On Folia also the MSPT of every player's region.
  • Every distance change with the rule behind it, the settings at start and after every /vdt reload.
  • extra-sample-above-mspt: an extra sample whenever MSPT goes above this value, at most every 10 seconds, so a short lag spike between two samples is not missed. Off by default.
  • /vdt diagnose note <text> adds your own line with a timestamp, for example when players report lag. /vdt diagnose status shows today's file and how much was written.
  • Switches for samples and changes, a world filter, a daily size limit, old days packed as .jsonl.gz and deleted after keep-days.
  • Off by default. /vdt diagnose on|off lasts until the next restart, diagnostics.enabled records from startup. Send the folder along with a bug report.

Changed

  • Decrease reasons name the rule that caused them. /vdt history, the console line and the diagnostics file used to say decrease (mspt=11.9, mode=mixed) even when MSPT had nothing to do with it. They now say what it was, for example decrease: client view cap (highest client 12 + 1 headroom) or decrease: MSPT above 47.0 + chunk budget.
  • The client view distance cap no longer pulls the simulation distance down. Because view distance may never be lower than simulation distance, one player with a low render distance used to slow down farms and redstone for everyone in that world. The cap now stops at the current simulation distance and only holds back increases above it.
  • The highest client view distance is held for three minutes. A player switching dimensions no longer makes a world jump down and back up.

Config update

Existing config files get the new diagnostics block added on the first start (config version 5), switched off. Nothing else needs to change.

Tested

Folia 1.21.11 with bots rendering 6 and 12 chunks: the cap lowered only the view distance, kept the simulation distance, held the higher value for three minutes after that bot left, and every change carried the right reason. Paper 26.3: config upgrade, all diagnostics options, notes, status, the world filter and the packing of old files. 247 automated tests.

Information

Published
October 24, 2026
Author
34Downloads

Platforms

Paper
Paper
1.21–26.3