Some chunks visually not loading for the client
Expected behavior
Expecting to see, chunks.
Observed/Actual behavior
Chunks visually missing:
Steps/models to reproduce
Fly around, find missing chunks.
Plugin and Datapack List
None
Paper version
This server is running Paper version 1.21.10-91-main@9934c17 (2025-10-27T18:27:20Z) (Implementing API version 1.21.10-R0.1-SNAPSHOT) You are running the latest version Previous version: 1.21.10-88-2a1871b (MC: 1.21.10)
Other
Started after this commit onwards in build 88 to current: https://github.com/PaperMC/Paper/commit/2a1871bba6d4406c61c872a2977f62e3d8863efc
Vanilla client and modded (Lunar) one. Tried with and without shaders / fabric. Not related to render distance as simulation is 10 and no ticked is 16. Chunk threads are set to -1, no problems from that either.
Here is my spark report for some additional server info https://spark.lucko.me/v4Q1f3PrcM
hey all i faced the same issue it seem it is desync issue of client and server
let say client render distance is 32
then when the client joined sometime the server wont give out 32 chunk
hence caused this issue
it seem setting render distance from 32 to 10 then back to 32 fixed it
so it seem it is more likey a desync issue
BTW thx
https://namemc.com/profile/HeroSuperDylan.1
https://namemc.com/profile/Sculk_Cadet.1
for lmk it is likey a desync issue
When it happens again, please run /paper debug chunks and attach the file created by that. The chunks dump is created in <server main folder>/debug/.
Can confirm exact same behaviour on latest 1.21.10 commit too. After players enter a server, chunks outside of their view distance have a high chance of not visually loading, though they can still walk on and highlight these invisible blocks. Sometimes previously loaded chunks will be affected when flying away and returning.
Setting the server's view-distance in server.properties to 32 seems to be "working" as a hacky fix.
Can reproduce this, Still happening in 1.21.11 too. Even with vd=32, I still can get to happen quite a lot. The only fix that works for me is relogging, even changing the view-distance in the client settings or via the API does not make the chunks load sadly.
Here is a chunk dump from one such occassion: https://pastes.dev/Ye1jNo3l8Z
Few more observations:
- The loading issue is visual and client-side only. The chunks have proper collisions, allow swimming and spawn mobs. I recall issues similar to this having to do with the chunk send order.
- It happens more often if the client view distance is higher than the server view distance
- Setting the client view distance to a lower value after the issue happened will at least allow you to continue loading new chunks. The chunks that originally failed to load will however never load until you relog.
- Changing the global config chunk-loading settings seem to have no effect, nor does turning off
auto-config-send-distance - Thread count does not matter, it happens both on system with just two and with 16 CPU threads. It also happens on both Windows and Linux systems.
- The client log gets spammed with the following:
[23:59:38] [Render thread/WARN]: Ignoring chunk since it's not in the view range: 173, -187
[23:59:38] [Render thread/WARN]: Ignoring chunk since it's not in the view range: 153, -179
[23:59:38] [Render thread/WARN]: Ignoring chunk since it's not in the view range: 183, -177
[23:59:38] [Render thread/WARN]: Ignoring chunk since it's not in the view range: 161, -187
[23:59:38] [Render thread/WARN]: Ignoring chunk since it's not in the view range: 171, -190
[23:59:38] [Render thread/WARN]: Ignoring chunk since it's not in the view range: 161, -188
Additionally here is a Thread dump. Not really seeing anything noticeable in there, the chunk I/O and loading threads all just seem to be waiting on work.
I can also confirm that it only happens with the changes from https://github.com/PaperMC/Paper/commit/2a1871bba6d4406c61c872a2977f62e3d8863efc. Reverted those in my fork and so far the issue seems to be gone.
I would propose that the problematic commit was temporarily reverted given how impactful this issue is to gameplay.
I ended up doing a bunch of testing against 23 builds between 1.21.5 & 1.21.10 by forcing the issue to appear via going through a nether portal and setting the player's view distance. Anything before build 85 (https://github.com/PaperMC/Paper/commit/d98142efca60d6e4a6b207082c912c6a894c1558) didn't appear to have the issue. Unfortunately I wasn't able to recreate the bug without any plugins nor via the steps that OP mentions.
The commit (https://github.com/PaperMC/Paper/commit/2a1871bba6d4406c61c872a2977f62e3d8863efc) is likely unrelated to the issue as I've been running a fork with that commit removed yet the problem still persisted.
PlayerList#sendLevelInfo seems to be sending the level's view distance instead of the player's. Since it's being called after the player join event and right after adding the player to the chunk map it can override any custom view distance set, causing the visual glitch.
PlayerList#sendLevelInfo seems to be sending the level's view distance instead of the player's. Since it's being called after the player join event and right after adding the player to the chunk map it can override any custom view distance set, causing the visual glitch.
You're absolutely correct. I ended up doing a test by moving that method to above ServerLevel#addDuringTeleport & that fixed the visual issue. No idea what side effects the change causes though.
Please test on https://github.com/PaperMC/Paper/commit/89fdae86cee1df09e0df6ee46c4e26f77944cfe3 and see if it occurs again.
For reference use build 52 or higher of 1.21.11. https://fill-ui.papermc.io/projects/paper/version/1.21.11?build=52
Please test on 89fdae8 and see if it occurs again.
Appears to have fixed the issue. I wasn't able to recreate the issue despite how little it took to happen before.