Un servidor de Minecraft calcula el mundo 20 veces por segundo: son los TPS (ticks por segundo). Si no le da tiempo, bajan de 20 y todo va a cámara lenta: los bloques tardan en romperse, los mobs dan saltos, las granjas fallan. Eso es lag del servidor, que no es lo mismo que el ping (tu conexión).
1. Mide antes de tocar nada
Las versiones recientes de Paper traen spark de serie (en las antiguas, instálalo como plugin):
/spark tps: TPS y MSPT (milisegundos que tarda cada tick). Por debajo de 50 ms va sobrado; si pasa de 50, los TPS empiezan a caer./spark profiler starty, tras unos minutos con gente jugando,/spark profiler stop: te da un enlace con un informe de qué se come el tiempo (un plugin, una granja, entidades...).
Si en la consola ves a menudo Can't keep up! Is the server overloaded?, el servidor va por detrás. Al arrancar es normal; si es constante, sigue leyendo y mira también el consumo de tu VPS.
2. Usa Paper, no el servidor oficial
Paper (o derivados como Purpur) corrige muchos problemas de rendimiento del servidor de Mojang sin cambiar el juego. Si juegas con mods (Fabric, Forge, NeoForge), Paper no vale; en Fabric, el mod Lithium mejora mucho el rendimiento.
3. El comando de arranque recomendado
La documentación de Paper recomienda los llamados flags de Aikar, que ajustan cómo Java libera memoria para evitar tirones. Para un VPS de 8 GB con Linux (6,5 GB para Minecraft):
java -Xms6500M -Xmx6500M -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar paper.jar --nogui
Cambia solo los dos primeros valores según tu memoria (cómo calcularlo). Si le vas a dar más de 12 GB, la documentación de Paper ajusta algunos valores: usa su generador de comandos de arranque.
Más RAM no es más velocidad. Minecraft hace casi todo el trabajo en un solo núcleo del procesador. Pasada la memoria que necesita, darle más no sube los TPS.
4. Baja las distancias
En server.properties:
simulation-distance: hasta dónde «funciona» el mundo alrededor de cada jugador (mobs, cultivos, redstone). Es lo que más pesa: entre 6 y 8 va bien para casi todo.view-distance: hasta dónde se ve. Entre 8 y 10 es un buen equilibrio.
5. Pregenera el mundo
Generar terreno nuevo mientras la gente explora es de lo más pesado, sobre todo con élitros. Con el plugin Chunky lo generas por adelantado, mejor cuando no haya nadie:
/worldborder set 10000
/chunky radius 5000
/chunky start
El borde evita que se genere terreno más allá de lo pregenerado.
6. Lo que más lag suele causar
- Demasiadas entidades: granjas enormes, animales amontonados, objetos tirados por el suelo.
- Redstone en bucle: relojes que no paran nunca.
- Plugins pesados o mal hechos: el informe de spark te dice cuál.
- Un mundo sin pregenerar con muchos jugadores explorando a la vez.
Si después de todo esto el procesador del VPS sigue al 100 % con gente jugando, el servidor se ha quedado pequeño: mejora el plan sin migrar nada.