Il tuo server Minecraft è lento e la console mostra un bel "Can't keep up!" in loop? Prima di toccare a qualsiasi cosa, ci sono due concetti da comprendere: i tick e il main thread. Sono loro a dettare il ritmo di tutto ciò che accade nel gioco lato server.
Questa guida ti spiega come Minecraft suddivide il tempo, perché non tutto può funzionare in parallelo e a che punto i TPS iniziano a scendere. L'idea è di darti le chiavi per comprendere cosa succede sotto il cofano e individuare rapidamente da dove proviene il problema.

I tick, cosa sono esattamente?
Minecraft funziona su un ciclo che si ripete continuamente. Ogni giro di questo ciclo si chiama tick. Ad ogni tick, il server ricalcola tutto ciò che accade nel mondo.
Concretamente, ad ogni tick il server deve:
- Leggere e elaborare le azioni dei giocatori (movimenti, clic, blocchi posati o distrutti)
- Aggiornare le posizioni di tutte le entità
- Restituire queste informazioni a ogni giocatore connesso
- Gestire la generazione dei mob, la loro IA e i loro movimenti
- Calcolare la redstone
- E un sacco di altre meccaniche di gioco
Un server che funziona normalmente punta a 20 tick al secondo, ovvero un tick ogni 50 millisecondi. È questo ritmo che garantisce un gameplay fluido.
Per approfondire la definizione tecnica, la pagina Tick di gioco del Minecraft Wiki è una buona risorsa.
Il main thread: perché un solo core fa tutto il lavoro
Ecco il punto che sorprende molte persone. La grande maggioranza dei calcoli di gameplay in Minecraft passa attraverso un solo thread di esecuzione: il main thread. In pratica, significa che un solo core CPU gestisce la maggior parte del lavoro in ogni istante.
Prendi un esempio semplice: affinché uno zombie attacchi un giocatore, il server deve verificare la posizione dello zombie, calcolare la distanza, trovare un percorso, verificare la linea di vista, applicare i danni… e tutto questo deve avvenire in ordine, sullo stesso thread. Finché questi calcoli non sono completati, il tick non può avanzare.
È per questo motivo che una CPU con buone prestazioni mono-core (single-core) fa una grande differenza su un server Minecraft, molto più del numero totale di core. Soprattutto quando hai molte entità o redstone.
Quando tutto va bene: il server respira
In un funzionamento normale, ogni tick viene calcolato in meno di 50 ms. Se il server termina un tick in anticipo, aspetta semplicemente il successivo per mantenere il ritmo.
Ad esempio, se un tick richiede solo 15 ms, rimangono 35 ms di margine prima del successivo. Risultato: i giocatori non avvertono alcun ritardo, i mob reagiscono istantaneamente, la redstone si attiva immediatamente e i TPS rimangono stabili a 20.
Quando lagga: il tick supera i 50 ms
Il problema inizia non appena un tick richiede più di 50 ms per essere calcolato. Poiché i tick non vengono eseguiti in parallelo, il successivo è ritardato. E se questo si ripete, il ritardo si accumula.
Dal lato del giocatore, questo si traduce in sintomi molto riconoscibili: i mob si teletrasportano, i blocchi distrutti riappaiono prima di scomparire, la redstone reagisce lentamente, le interazioni hanno un ritardo visibile.
Il famoso messaggio "Can't keep up!" appare quando il server accumula più di 2000 ms di ritardo nel trattamento dei tick. E se il blocco dura troppo a lungo (di solito più di 60 secondi), il watchdog considera che il server sia andato in crash e interrompe il processo.
Da sapere: Un server può tecnicamente "funzionare" pur essendo ingiocabile. I giocatori avvertono il lag molto prima che si verifichi un vero crash.
Perché i tick diventano troppo lunghi
La causa numero uno è un sovraccarico del main thread. Troppe cose da calcolare in troppo poco tempo. E poiché tutto deve essere ricalcolato 20 volte al secondo, la minima fonte di carico si moltiplica molto rapidamente.
I colpevoli classici:
- Troppi entità attive: 500 zombie in un'area, sono 500 volte i calcoli di IA, di pathfinding e di collisione ad ogni tick
- Le fattorie di mob mal progettate: una fattoria che accumula centinaia di entità in uno spazio ridotto genera un carico colossale
- La redstone intensiva: un circuito complesso che gira in loop può monopolizzare il main thread da solo
- I chunk caricati permanentemente: tramite hoppers, chunk loaders o giocatori AFK in aree dense
- Le collisioni di massa: 50 polli in uno spazio 2x2, sembra banale, ma lato server è un incubo di calcoli di collisione ad ogni tick
Consiglio: Se il lag appare solo quando i giocatori sono in una zona specifica, controlla in priorità se c'è una fattoria, un circuito redstone pesante o una concentrazione anomala di entità in quel punto.
I TPS: la salute del server in un numero
I TPS (Ticks Per Second) misurano quanti tick il server riesce a produrre ogni secondo. A 20 TPS, tutto funziona. Non appena il server accumula ritardo, i TPS scendono e il gioco rallenta.
Una formula semplice per visualizzare l'impatto:
(1000 - ritardo in ms) / 50 = TPS
Esempio concreto: se il tuo server accumula 250 ms di ritardo in un secondo, ottieni (1000 - 250) / 50 = 15 TPS. In gioco, 15 TPS si avverte già molto chiaramente. Sotto 10, è praticamente ingiocabile.
Trovare la causa con Spark
Sapere che il server lagga è una cosa, trovare esattamente perché è un'altra. Lo strumento più efficace per questo è Spark. Permette di profilare il main thread e vedere precisamente cosa consuma tempo ad ogni tick.
Spark ti mostra quale plugin, quale entità o quale meccanica di gioco richiede più tempo. È spesso il primo passo per risolvere un problema di lag in modo mirato invece di procedere a tentoni.
Buono a sapere: Se sei da OuiHeberg, Spark è installabile in pochi secondi dal pannello. Un profilo di pochi minuti è generalmente sufficiente per identificare il colpevole.
In sintesi
I tick sono il metronomo del tuo server Minecraft, e il main thread è l'unica via attraverso cui la maggior parte dei calcoli deve passare. Non appena un tick supera i 50 ms, i TPS scendono e il lag si installa. Le cause più frequenti sono le entità in massa, la redstone intensiva e le aree sovraccariche.
Comprendere questo meccanismo è la base per diagnosticare e risolvere i problemi di prestazioni. E con uno strumento come Spark, puoi passare dal "lagga" al "ecco esattamente perché" in pochi minuti.
Hai bisogno di un server Minecraft con buone prestazioni mono-core per mantenere i tuoi TPS al massimo? OuiHeberg offre piani di hosting ottimizzati per Minecraft, pensati per gestire il carico anche sui server più ambiziosi.
Hai bisogno di un server Minecraft?
Scopri le nostre offerte di hosting Minecraft a partire da 9,98€/mese con installazione automatica delle mod.
