Configuración avanzada del servidor de Hytale
Esta guía cubre la configuración avanzada del servidor de Hytale, incluidos los ajustes del mundo, los argumentos de línea de comandos y la arquitectura de malla de servidores.
Importante: Haz siempre una copia de seguridad de los archivos de tu servidor antes de cambiar la configuración. Detén tu servidor antes de editar cualquier archivo de configuración.
Ubicación de los archivos de configuración
| Archivo | Ubicación | Propósito |
|---|---|---|
config.json |
Carpeta raíz del servidor | Configuración principal del servidor |
permissions.json |
Carpeta raíz del servidor | Roles y permisos de jugadores |
bans.json |
Carpeta raíz del servidor | Lista de jugadores baneados |
whitelist.json |
Carpeta raíz del servidor | Lista de jugadores permitidos |
config.json |
universe/worlds/[WorldName]/ |
Configuración por mundo |
Configuración del servidor (config.json)
El config.json principal en la raíz de tu servidor controla la configuración global del servidor:
{
"Version": 3,
"ServerName": "Hytale Server",
"MOTD": "",
"Password": "",
"MaxPlayers": 100,
"MaxViewRadius": 32,
"LocalCompressionEnabled": false,
"Defaults": {
"World": "default",
"GameMode": "Adventure"
},
"ConnectionTimeouts": {
"JoinTimeouts": {}
},
"RateLimit": {},
"Modules": {},
"LogLevels": {},
"Mods": {},
"DisplayTmpTagsInStrings": false,
"PlayerStorage": {
"Type": "Hytale"
}
}
| Ajuste | Descripción | Recomendado |
|---|---|---|
ServerName |
Nombre visible que se muestra a los jugadores | El nombre de tu servidor |
MOTD |
Mensaje del día | Mensaje de bienvenida corto |
Password |
Contraseña del servidor (vacío = sin contraseña) | Déjalo vacío para que sea público |
MaxPlayers |
Máximo de jugadores simultáneos | Según la RAM (normalmente 20-50) |
MaxViewRadius |
Distancia de visión de los jugadores (en chunks) | 12 para el rendimiento |
LocalCompressionEnabled |
Activar la compresión de red local | false |
Defaults.World |
Nombre del mundo por defecto en el que aparecen los jugadores | "default" |
Defaults.GameMode |
Modo de juego predeterminado para jugadores nuevos | "Adventure" o "Creative" |
Consejo de rendimiento: el manual oficial de Hytale recomienda limitar MaxViewRadius a 12 chunks (384 bloques) tanto por rendimiento como por jugabilidad. El valor predeterminado de 32 equivale aproximadamente a 64 chunks de Minecraft y aumentará considerablemente el uso de RAM.
Editar los archivos de configuración
Para clientes de Survival Servers
- Inicia sesión en tu panel de control
- Haz clic en Detener para apagar tu servidor
- Haz clic en Archivos de configuración o usa Acceso FTP
- Edita el archivo que quieras y guarda
- Haz clic en Iniciar para reiniciar tu servidor
Para servidores autoalojados
- Detén tu servidor (escribe
stopo pulsaCtrl+C) - Abre el archivo de configuración en un editor de texto
- Haz tus cambios y guarda
- Inicia tu servidor
Configuración del mundo (universe/worlds/[WorldName]/config.json)
Cada mundo tiene su propio archivo de configuración. A continuación se muestra la estructura documentada de la configuración del mundo:
{
"Version": 4,
"UUID": {
"$binary": "j2x/idwTQpen24CDfH1+OQ==",
"$type": "04"
},
"Seed": 1767292261384,
"WorldGen": {
"Type": "Hytale",
"Name": "Default"
},
"WorldMap": {
"Type": "WorldGen"
},
"ChunkStorage": {
"Type": "Hytale"
},
"ChunkConfig": {},
"IsTicking": true,
"IsBlockTicking": true,
"IsPvpEnabled": false,
"IsFallDamageEnabled": true,
"IsGameTimePaused": false,
"GameTime": "0001-01-01T08:26:59.761606129Z",
"ClientEffects": {
"SunHeightPercent": 100.0,
"SunAngleDegrees": 0.0,
"BloomIntensity": 0.30000001192092896,
"BloomPower": 8.0,
"SunIntensity": 0.25,
"SunshaftIntensity": 0.30000001192092896,
"SunshaftScaleFactor": 4.0
},
"RequiredPlugins": {},
"IsSpawningNPC": true,
"IsSpawnMarkersEnabled": true,
"IsAllNPCFrozen": false,
"GameplayConfig": "Default",
"IsCompassUpdating": true,
"IsSavingPlayers": true,
"IsSavingChunks": true,
"SaveNewChunks": true,
"IsUnloadingChunks": true,
"IsObjectiveMarkersEnabled": true,
"DeleteOnUniverseStart": false,
"DeleteOnRemove": false,
"ResourceStorage": {
"Type": "Hytale"
},
"Plugin": {}
}
| Ajuste | Descripción |
|---|---|
Seed |
Semilla de generación del mundo |
IsPvpEnabled |
Permitir combate jugador contra jugador |
IsFallDamageEnabled |
Los jugadores reciben daño por caída |
IsGameTimePaused |
Congelar el ciclo día/noche |
IsSpawningNPC |
Activar la aparición de mobs |
IsAllNPCFrozen |
Congela a todos los NPC en su sitio |
IsTicking |
La simulación del mundo está en ejecución |
IsBlockTicking |
Actualizaciones de bloques (cultivos, líquidos) |
IsSavingPlayers |
Guardar datos de los jugadores |
IsSavingChunks |
Guardar cambios del mundo |
SaveNewChunks |
Guardar en disco los chunks recién generados |
IsUnloadingChunks |
Descargar chunks vacíos |
ClientEffects |
Ajustes de efectos visuales (sol, bloom, rayos de sol) |
DeleteOnUniverseStart |
Eliminar el mundo al iniciar el servidor |
DeleteOnRemove |
Eliminar los archivos del mundo al quitarlo |
Pregeneración del mundo
La pregeneración crea el terreno por adelantado, lo que reduce el lag cuando los jugadores exploran.
Método 1: Exploración dentro del juego
- Arranca tu servidor e inicia sesión como administrador
- Vuela por el mapa para generar chunks
- El servidor guarda los chunks a medida que exploras
Método 2: Mods de pregeneración
- Añade un mod de pregeneración a tu carpeta
mods/ - Configura el tamaño del área y el punto central
- Ejecuta el comando de pregeneración
Método 3: Línea de comandos
java -jar HytaleServer.jar --help
Comprueba si hay opciones de pregeneración integradas.
Arquitectura de malla de servidores (redes multiservidor)
Hytale tiene soporte integrado para conectar varios servidores entre sí sin proxies de terceros como BungeeCord.
Estas funciones se implementan a través de la API de Java del servidor:
| Función | Método API | Descripción |
|---|---|---|
| Recomendación de jugadores (Player Referral) | PlayerRef.referToServer(host, port, payload) |
Transfiere jugadores entre servidores con una carga opcional de 4KB |
| Redirección de conexión | PlayerSetupConnectEvent.referToServer(host, port) |
Redirección durante el handshake, antes de la conexión completa |
| Servidor de respaldo al desconectarse (Disconnect Fallback) | Próximamente | Reconexión automática al servidor de respaldo si el servidor falla |
Seguridad: las cargas útiles (payloads) de referencia pasan por el cliente y pueden manipularse. Firma las cargas útiles criptográficamente (por ejemplo, HMAC con un secreto compartido) para que los servidores receptores puedan verificar su autenticidad.
Proxies personalizados: Crea servidores proxy con Netty QUIC. Las definiciones de paquetes están disponibles en HytaleServer.jar en com.hypixel.hytale.protocol.packets.
Argumentos de línea de comandos
java [JVM options] -jar HytaleServer.jar [server options]
Opciones de la JVM
| Opción | Descripción | Ejemplo |
|---|---|---|
-Xms |
Asignación de memoria inicial | -Xms4G
|
-Xmx |
Asignación máxima de memoria | -Xmx4G
|
-XX:+UseG1GC |
Usa el recolector de basura G1 | Recomendado para 8 GB o más |
-XX:AOTCache |
Usar la caché AOT para un arranque más rápido | -XX:AOTCache=HytaleServer.aot
|
Opciones del servidor
| Opción | Descripción | Predeterminado |
|---|---|---|
--assets <path> |
Ruta a Assets.zip (obligatorio) | None |
--bind <ip:port> |
Dirección y puerto de escucha | 0.0.0.0:5520 |
--auth-mode <mode> |
authenticated o offline |
authenticated |
--backup |
Activar copias de seguridad automáticas | Desactivado |
--backup-dir <path> |
Ubicación de almacenamiento de las copias de seguridad | ./backups |
--backup-frequency <mins> |
Intervalo de copias de seguridad en minutos | 60 |
--disable-sentry |
Desactivar los informes de fallos | Activado |
--allow-op |
Permitir comandos de operador | Desactivado |
--accept-early-plugins |
Cargar plugins experimentales (sin soporte) | Desactivado |
Ejemplos de scripts de lanzamiento
Production server (Windows - start.bat):
@echo off java -Xms6G -Xmx6G -XX:+UseG1GC -XX:AOTCache=HytaleServer.aot -jar HytaleServer.jar --assets Assets.zip --backup --backup-frequency 60 pause
Servidor de producción (Linux - start.sh):
#!/bin/bash java -Xms6G -Xmx6G -XX:+UseG1GC -XX:AOTCache=HytaleServer.aot -jar HytaleServer.jar --assets Assets.zip --backup --backup-frequency 60
Servidor de desarrollo:
java -Xms4G -Xmx4G -jar HytaleServer.jar --assets Assets.zip --auth-mode offline --disable-sentry
Configuración del firewall
Hytale usa el protocolo QUIC sobre UDP (no TCP).
Windows PowerShell:
New-NetFirewallRule -DisplayName "Hytale Server" -Direction Inbound -Protocol UDP -LocalPort 5520 -Action Allow
Linux (iptables):
sudo iptables -A INPUT -p udp --dport 5520 -j ACCEPT
Linux (ufw):
sudo ufw allow 5520/udp
Véase también
- Guía para crear un servidor de Hytale
- Cómo unirte a un servidor de Hytale
- Cómo instalar mods en un servidor de Hytale
- Sitio web oficial de Hytale
- Soporte y documentación de Hytale
- Alquila un servidor de Hytale en Survival Servers