Stuck on «Loading terrain…» forever

Errors & Fixes Reviewed September 6, 2026 2 min read

Reaching «Loading terrain» means authentication worked and the server accepted you. What is failing is the handover — the server sending enough of the world for you to stand in it — and that has a small number of causes.

What to do

  1. Check the console for the join

    If it logged you joining, the server thinks you are in and something is stopping the world from arriving. If it did not, you never finished connecting.

  2. Ask whether the spawn area is broken

    A corrupt chunk where you appear stops the load with no error the client can show. If the player last logged out somewhere specific, that location is the suspect, not spawn.

  3. Lower the view distance temporarily

    A high view distance on a busy server means a great deal of terrain has to be generated and sent before anyone can move. Dropping it to 6 makes joins fast and tells you whether volume was the issue.

  4. Watch memory during the join

    If the server is at its ceiling, chunk loading crawls. The join is not broken; it is queued behind a garbage collector that never finishes.

  5. Try a different player

    If everyone else joins fine, the problem belongs to that player's data, not to the server. Moving their .dat out of playerdata costs their inventory and confirms it in one attempt.

Narrowing it down

Who is stuckLook at
Everyone, alwaysSpawn chunks, memory, or a plugin blocking the join event
Everyone, only at peakMemory and chunk generation load
One player, alwaysTheir playerdata file and where they logged out
One player, onceTheir connection. Have them retry.
A plugin can hold the join open indefinitely

Anything that runs a check when a player joins — a database lookup, a web request, a permissions fetch — can hang, and the player waits on «Loading terrain» while it does. If the console shows the join and then nothing, look at what runs on join before you look at the world.

Pre-generating chunks removes this at spawn

Most of what a new player waits for is terrain being generated for the first time. Generating it in advance turns a first join from thirty seconds into two, and it is a one-off cost you pay once for every player who ever joins.

How to confirm it worked

A fresh account joins and can move within a few seconds, with the join line and no gap after it in the console.