Esta guía va directo al grano con pasos claros y concisos para optimizar tu servidor de Minecraft. Si crees que falta algo, cuéntanos. Si buscas una guía más extensa, te recomendamos la guía oficial de Paper para servidores con plugins: https://paper-chan.moe/paper-optimization/
Las recomendaciones que siguen son las que usamos en eventos grandes y comunidades. Según el fork de Paper o las especificaciones del servidor (en esos casos solemos usar máquinas con muchos recursos), puede variar; pero en general la clave está en los parámetros indicados aquí. Todo se basa en nuestra experiencia.
Primero verás recomendaciones generales aplicables tanto a servidores con mods como con plugins. Luego hay secciones independientes con ajustes específicos para cada tipo.
Recomendaciones generales
Distancias de simulación y renderizado
📌 Se configuran en el archivo server.properties.
- simulation-distance: determina cuánto del entorno está activo alrededor del jugador. Un valor menor reduce la carga del servidor. Recomendado entre 4 y 6.
- view-distance: define cuántos chunks son visibles. Mantén este valor igual a
simulation-distance.
server.properties
simulation-distance=5view-distance=5Pre-generación de chunks
Casi obligatoria para servidores de supervivencia donde los jugadores exploran constantemente. Pre-generar reduce picos de carga al descubrir terreno nuevo. (Sigue tu guía de pre-generación preferida.)
Evita plugins/mods en beta
Asegúrate de que todos los plugins o mods estén actualizados y sean compatibles con la versión de tu servidor. Evita versiones beta o inestables que suelen causar problemas de rendimiento.
Puerto de conexión para Voice Chat
Si usas el mismo puerto para juego y voice chat, el servidor no podrá manejar ambos tipos de conexión: los paquetes de voz (UDP) tienen prioridad sobre los de juego (TCP), provocando timeouts, lag o picos de ping.
Configura el voice chat en otro puerto distinto al de acceso del servidor. Crea un puerto adicional desde la pestaña Network del panel y asócialo en la configuración del plugin/mod de voz. Si lo necesitas, abre un ticket de soporte para que te lo configuremos.
Reinicios periódicos
Reiniciar el servidor de forma programada ayuda a liberar RAM y evitar bloqueos o reinicios inesperados. Programa una tarea desde el panel o solicita ayuda vía ticket.
Servidores con plugins (Paper y forks)
Optimización de entidades
📌 Se configura en bukkit.yml, spigot.yml y config/paper-world-defaults.yml. Recomendaciones:
bukkit.yml
spawn-limits: monsters: 20 animals: 5 water-animals: 2 water-ambient: 2 water-underground-creature: 3 axolotls: 3 ambient: 1ticks-per: animal-spawns: 400 monster-spawns: 10 water-spawns: 400 water-ambient-spawns: 400 water-underground-creature-spawns: 400 axolotl-spawns: 400 ambient-spawns: 400 autosave: 6000spigot.yml
world-settings: default: view-distance: 5 simulation-distance: 5 mob-spawn-range: 3 nerf-spawner-mobs: true entity-activation-range: animals: 16 monsters: 24 raiders: 40 misc: 8 water: 8 villagers: 16 flying-monsters: 40 tick-inactive-villagers: false entity-tracking-range: players: 32 animals: 32 monsters: 32 misc: 24 display: 32 other: 32config/paper-world-defaults.yml
anticheat: anti-xray: enabled: falsecollisions: fix-climbing-bypassing-cramming-rule: true max-entity-collisions: 2entities: armor-stands: do-collision-entity-lookups: false tick: false spawning: despawn-ranges: ambient: hard: 48 soft: 24 axolotls: hard: 48 soft: 24 creature: hard: 48 soft: 24 misc: hard: 48 soft: 24 monster: hard: 48 soft: 24 underground_water_creature: hard: 48 soft: 24 water_ambient: hard: 48 soft: 24 water_creature: hard: 48 soft: 24 per-player-mob-spawns: trueenvironment: optimize-explosions: truemisc: update-pathfinding-on-block-update: falsetick-rates: behavior: villager: validatenearbypoi: 60 acquirepoi: 120 sensor: villager: secondarypoisensor: 80 nearestbedsensor: 80 villagerbabiessensor: 40 playersensor: 40 nearestlivingentitysensor: 40Usa las Aikar’s Flags
📌 Actívalas desde la pestaña Startup del panel del servidor.
Son flags de Java que ayudan a optimizar el uso de RAM y la recolección de basura. Se añaden al comando de inicio del servidor. Más info en la documentación de Paper: https://docs.papermc.io/paper/aikars-flags/
Plugins recomendados
- Spark: herramienta para detectar cuellos de botella. Ejecuta
/spark healthpara generar un informe rápido. (Mira también nuestra guía de Spark.) - Chunky: pre-generación eficiente de chunks.
- WorldGuard:
/stoplaglimita tareas del servidor en momentos críticos (ten en cuenta que afecta la jugabilidad).
Evita plugins que “optimizan” entidades como ClearLag. Es preferible usar los límites y despawn de Paper. El borrado masivo periódico obliga a regenerar entidades y suele aumentar el uso de CPU/RAM provocando caídas de TPS.
Servidores con mods
Si vas a aplicar estas recomendaciones en un modpack, verifica primero si ya incluye optimizaciones. Muchos modpacks populares las traen y no hace falta agregarlas manualmente.
Mods de optimización
No necesitarás todos los mods listados y algunos pueden no ser compatibles con distintos loaders (Fabric, Forge, Quilt, NeoForge). Revisa compatibilidad con tu versión/loader.
- ServerCore: mejora el rendimiento y ofrece ajustes similares a un servidor con plugins.
- AI Improvements: optimiza la IA de mobs (pathfinding, etc.), reduciendo carga de CPU. No requiere cliente.
- In Control!: controla el spawn de mobs/entidades para evitar generación innecesaria. No requiere cliente.
- Phosphor: mejora el rendimiento de iluminación, especialmente en mundos grandes. Úsalo junto con Lithium. No requiere cliente.
- Lithium: optimiza generación de chunks, pathfinding y otros sistemas del juego.
- FerriteCore: reduce el uso de RAM optimizando estructuras de datos del mundo.
- Chunk-Pregeneration: pre-generación eficiente de chunks para servidores con mods.
- Redirector: optimiza el acceso a valores constantes (como enums) reemplazándolos por referencias estáticas, mejorando el rendimiento y reduciendo el uso de memoria. Funciona en cliente y servidor, pero no requiere que los clientes tengan el mod.
Configurar ServerCore
Después de subir el mod ServerCore y arrancar el servidor por primera vez, apágalo y habilita la optimización dinámica para ajustar parámetros en tiempo real según el estado del servidor.
config/servercore/config.yml
features: lobotomize-villagers: enabled: truedynamic: enabled: truePara una optimización más agresiva, consulta la documentación del mod: https://github.com/Wesley1808/ServerCore/blob/main/docs/config/OPTIMIZED.md
Sobre mods asíncronos
Algunos mods pueden ser asíncronos (usan hilos distintos de CPU), mientras que otros son síncronos (comparten hilos con Minecraft). Muchos mods síncronos en un servidor con poca RAM pueden generar problemas de rendimiento.
Identificar la causa del lag
Recomendamos el mod Spark para monitorear el servidor (servidor y cliente). Puedes seguir una guía de uso de Spark para interpretar los reportes y localizar cuellos de botella.
