El lag en un servidor de Minecraft arruina la experiencia de todos. Bloques que tardan en romperse, mobs que se teletransportan y chunks que no cargan. La buena noticia: casi siempre tiene solucion.
Entender el TPS
TPS significa ticks por segundo. Minecraft funciona a 20 TPS. Si el TPS baja de 20, el servidor no puede procesar todo a tiempo y los jugadores notan el lag. Por debajo de 15 TPS el juego se vuelve molesto, y por debajo de 10 es practicamente injugable.
Comprueba tu TPS con /tps (Paper) o /spark tps (con el plugin Spark).
Causas principales de lag
1. Demasiadas entidades
Granjas de mobs, animales acumulados y items en el suelo son la causa numero uno. Cada entidad consume un ciclo de calculo en cada tick.
Soluciones:
- Limita las entidades por chunk en
paper-world-defaults.yml. - Reduce el tiempo de despawn de items (
item-despawn-rate). - Instala un plugin de limpieza como ClearLag o usa los limites nativos de Paper.
2. Generacion de chunks
Cada vez que un jugador explora un area nueva, el servidor genera chunks al vuelo. Esto es costoso en CPU, especialmente con mods que modifican la generacion del mundo.
Soluciones:
- Pre-genera el mundo con Chunky antes de abrir el servidor.
- Reduce la distancia de vision del servidor (
view-distance) a 8 o 10.
3. Plugins pesados
Algunos plugins consumen mas recursos de lo esperado. Dynmap genera mapas del mundo en segundo plano, WorldEdit puede colapsar el servidor con operaciones grandes, y plugins de economia con bases de datos lentas bloquean el hilo principal.
Soluciones:
- Usa
/spark profilerpara identificar que plugins consumen mas tiempo. - Desactiva o reemplaza plugins problematicos.
- Configura Dynmap para renderizar solo cuando el servidor tiene TPS alto.
4. RAM insuficiente
Si el servidor usa toda la RAM disponible, el recolector de basura de Java trabaja constantemente, causando picos de lag periodicos.
Soluciones:
- Aumenta la RAM del plan.
- Usa los Aikar flags para optimizar la recoleccion de basura.
5. Redstone y hoppers
Los circuitos de redstone complejos y las cadenas de hoppers generan actualizaciones constantes. Una granja automatica con cientos de hoppers puede consumir mas CPU que 20 jugadores.
Soluciones:
- Limita los hoppers por chunk en la configuracion de Paper.
- Usa composters o water streams como alternativas a los hoppers.
Herramientas de diagnostico
- Spark: profiler ligero que muestra exactamente que consume CPU y memoria.
- Timings (Paper): informe detallado de tiempos por tick.
- /gc: muestra el uso de memoria y la actividad del recolector de basura.
Lista rapida de optimizacion
- View distance: 8
- Simulation distance: 6
- Pre-generar el mundo (Chunky)
- Limitar entidades por chunk
- Aikar flags activos
- Spark instalado para diagnostico
El lag tiene solucion en la mayoria de los casos. Empieza por diagnosticar la causa exacta con Spark y aplica los ajustes correspondientes.