Antes de tocar YAML o instalar plugins, averigua si el problema está en los ticks del servidor, en la red o en el cliente de un jugador. Los 20 TPS indican que el servidor mantiene su ritmo objetivo en el intervalo medido; el MSPT ayuda a saber cuánto tarda en procesar ticks y cuánto margen queda respecto al presupuesto de 50 ms por tick. Ninguna combinación de valores garantiza eliminar el lag en todos los mundos.
1. Mide primero, durante el problema
- Anota la versión de Minecraft, build de Paper, Java, complementos instalados, número de jugadores y cuándo aparecen los tirones.
- En la consola o con permisos de operador, usa
/spark tpspara consultar TPS y CPU; en builds que incluyen spark,/spark healthmuestra un informe de salud. Si no está disponible, comprueba la documentación de tu build e instala spark desde la fuente oficial. - Cuando los ticks lentos persisten, toma un perfil durante la carga problemática con
/spark profiler start --only-ticks-over 50, deja que capture el periodo y termina con/spark profiler stop. Revisa el informe antes de decidir qué cambiar. - Repite la medición en un periodo comparable. Una captura corta fuera del pico no identifica necesariamente el cuello de botella.
Un MSPT superior a 50 ms significa que esos ticks exceden el ritmo necesario para 20 ticks por segundo; los valores de TPS también dependen del intervalo promediado. La CPU, un plugin, generación de chunks, entidades o almacenamiento pueden estar implicados. El perfil ayuda a enfocar la investigación; no demuestra por sí solo que una opción concreta sea la causa.
2. Prueba primero las distancias, con copia de seguridad
Si el informe apunta a carga de chunks o demasiada actividad alrededor de jugadores, prueba una reducción moderada de view-distance o simulation-distance en server.properties. Haz una copia del archivo y del mundo, cambia solo una opción, reinicia el servidor y repite la misma medición. Una menor distancia puede reducir el terreno visible o las zonas donde granjas y entidades siguen activas; informa a los jugadores y verifica las mecánicas que usan.
# Ejemplo de parámetros editables en server.properties
# No son valores universales; prueba un cambio a la vez.
view-distance=8
simulation-distance=6Paper documenta estas propiedades y sus valores predeterminados en su referencia oficial. El valor elegido debe considerar hardware, jugadores simultáneos, estilo de juego y límites del proveedor de hosting.
3. No copies configuraciones de entidades de otra versión
Los archivos y opciones de configuración de Paper cambian entre versiones. No pegues bloques de paper-world-defaults.yml, spigot.yml o purpur.yml sin confirmar primero el nombre y la ruta de la opción en la documentación correspondiente a tu build. Ajustes de activación, aparición y ticks de aldeanos pueden afectar granjas, comportamiento de criaturas y plugins; copia el archivo actual antes de editar y modifica solo la clave investigada.
Evita porcentajes del tipo “reduce 40% el MSPT” salvo que hayas medido ese resultado con versiones, mundo, jugadores y procedimiento documentados. Los resultados de una prueba no se trasladan automáticamente a otro servidor.
4. Verifica y revierte
- Repite la misma prueba después de cada cambio y registra la configuración anterior y nueva.
- Si las métricas no mejoran o las granjas dejan de funcionar como se espera, restaura el archivo desde la copia.
- Si el perfil señala un plugin o una tarea concreta, revisa su documentación o busca una actualización compatible antes de alterar reglas globales.
- Si los MSPT están bajos pero una persona sigue viendo saltos, revisa ping, pérdida de paquetes y FPS en ese cliente: bajar la carga del servidor podría no corregir un problema local o de red.
Documentación
- PaperMC: referencia de server.properties.
- PaperMC: referencias de configuración por versión.
- spark: sintaxis de comandos y perfiles.
Esta guía es un procedimiento de diagnóstico, no un benchmark propio. Registra las versiones y mediciones si publicas resultados para tu servidor.