Server documentation
LeanCore
ActiveHytale • Version 1.7.0
Instalación, comandos, config, permisos, perfil LITE, retención predictiva, modelo de movimiento, HUD, heatmap y zone pin de LeanCore.
Instalación, comandos, config y permisos de LeanCore.
Descripción general
LeanCore está hecho para reducir el uso de heap de la JVM en servidores Hytale. A medida que los jugadores exploran, cada zona que tocan mantiene sus chunks y entidades residentes en memoria, y el engine es lento para liberarlos, así que el heap sube y se mantiene alto mucho después de que todos se han ido. LeanCore decide qué sigue cargado y qué se libera, modelando dónde están los jugadores, hacia dónde van y qué partes del mapa realmente vuelven a visitar. Cuánto libera depende del mundo, y la descarga de chunks solo empieza tras /leancore probe. El solo integrado usa perfil LITE con gobernador real, vista adaptativa, reclaim AFK y aprendizaje de demanda activado por defecto. STANDARD y FULL añaden bandit, holdout y rutas completas cuando están habilitados. Desde 1.6.0, un modelo de movimiento por jugador hace retención predictiva de zonas (unload inclinado lejos de hacia dónde va el jugador, vista actual/prevista nunca descargada) y un modelo de reuse-distance + supervivencia ajusta la dormancia por zona. Incluye Activity Sense, /leancore savings, puerta de probe, bootstrap dedicado, diagnóstico [diag] siempre activo, snapshot v8 (gzip + poda, compatible con v7) y dispatch en world thread. Requiere servidor Hytale >=0.5.6. No afecta FPS, GPU ni TPS del cliente.
Instalación
- Descarga LeanCore-1.7.0.jar en la pestaña Files de CurseForge
- Coloca el JAR en la carpeta mods/ del servidor
- Inicia el servidor. Config en mods/durkz_LeanCore/LeanCore.json
- Ejecuta
/leancore probesi dependes del unload de chunks (LITE o STANDARD/FULL) - Concede acceso HUD/admin al staff (ver Permisos)
- Ejecuta
/leancore memoryy/leancore statustras un minuto
Perfiles en host integrado
| Jugadores | Perfil | Tick | Qué ejecuta |
|---|---|---|---|
| 1 (solo local) | LITE | 30s (60s idle) | Gobernador lite, vista adaptativa, unload AFK, lite learning |
1 + embeddedStandardProfile | STANDARD | 15s | Dogfood local sin tick FULL 5s |
| 2–8 (amigos) | STANDARD | 15s | Clasificador; govern/learning/HUD si están activos |
| 9+ (local denso) | FULL | 5s | Runtime completo según config |
| JVM dedicada | FULL | 5s | Runtime completo según config |
Config: localHostMode: "AUTO" (por defecto). "PASSIVE" desactiva ticks en segundo plano. dedicatedServerMode: true en host JVM dedicado.
Log (solo): LeanCore 1.7.0 setup (localHostMode=AUTO). y Runtime started profile=LITE. Amigo entra → profile LITE -> STANDARD.
Perfil LITE (solo integrado)
| Función | Comportamiento |
|---|---|
| Vista adaptativa | 100% en COMFORT hasta presión de chunks o heap; cortes suaves en WATCH; agresivo solo en TIGHT/CRITICAL |
| Señales dobles | Tier de heap JVM + presión de chunks (loaded / view budget) |
| Unload AFK | Zonas dormant/frozen en idle; puerta de probe; no requiere governEnabled |
| Aprendizaje | liteLearningEnabled=true por defecto; demand ajusta cortes de vista; sin bandit en LITE |
| Presupuesto de tick | Trabajo pesado en muestra de heap (~60s), dispatch en world thread |
STANDARD/FULL: view-radius y unload siguen requiriendo governEnabled, learningEnabled y unloadEnabled como antes.
Características
- Perfiles de runtime:
LITE,STANDARD,FULL - Gobernador LITE en solo: vista adaptativa, degradación, unload AFK, demand learning
- Tiers de heap: COMFORT, WATCH, TIGHT, CRITICAL con rollback
- Dormancia de zonas: HOT, WARM, DORMANT, FROZEN
- Retención predictiva (1.6,
motionModelEnabled): el modelo de movimiento por jugador inclina el unload lejos del rumbo; vista actual/prevista nunca descargada - Modelo de reuse-distance + supervivencia (1.6,
zoneReuseModelEnabled): aprende zonas revisitadas y ajusta umbrales de dormancia por zona - Diagnóstico siempre activo (
diagnosticLogEnabled): resúmenes de inicio/cierre y logs de decisión[diag]por perfil - Boost cinematográfico de vista (1.6,
motionViewRadiusBoostEnabled, opt-in): sube la distancia de visión para quien se mueve rápido; desactivado por defecto - Session savings, puerta de probe, HUD, heatmap, zone pin
Comandos
Comando principal: /leancore
| Comando | Acceso | Descripción |
|---|---|---|
/leancore status | Todos | Perfil, preset, tier, flags lite, puerta unload |
/leancore memory | Todos | Instantánea de heap |
/leancore savings | Todos | Heap de sesión, gobernador lite/standard |
/leancore learn | Todos | Diagnósticos; LITE muestra solo demand model |
/leancore learn player | Todos | Features, posterior, EMAs de actividad |
/leancore probe | Todos | Probe S1–S5 |
/leancore status
/leancore memory
/leancore savings
/leancore zones
/leancore learn
/leancore learn player
/leancore probe
/leancore hud on|off|status
/leancore heatmap [limit]
/leancore zone pin|unpin|pins
Permisos
| Permiso | Descripción |
|---|---|
durkz.leancore.hud | HUD de memoria (/leancore hud …) |
durkz.leancore.admin | Heatmap, zone pin, herramientas admin |
Configuración (LeanCore.json)
Ruta: mods/durkz_LeanCore/LeanCore.json
| Clave | Por defecto | Descripción |
|---|---|---|
localHostMode | AUTO | AUTO, PASSIVE o FULL |
governEnabled | false | Gobernador STANDARD/FULL |
learningEnabled | false | Aprendizaje STANDARD/FULL |
unloadEnabled | false | Unload STANDARD/FULL |
unloadProbeGateEnabled | true | Bloquea unload hasta que pase el probe |
liteMemoryGovernorEnabled | true | Gobernador lite en solo |
liteLearningEnabled | true | Demand model + persistencia en solo |
liteViewRadiusEnabled | true | Vista adaptativa en solo |
liteUnloadEnabled | true | Reclaim AFK en solo |
liteUnloadIdleSeconds | 180 | Idle antes de barridos lite |
motionModelEnabled | true | Modelo de movimiento + retención predictiva |
zoneReuseModelEnabled | true | Reuse-distance + supervivencia; umbrales de dormancia por zona |
motionViewRadiusBoostEnabled | false | Boost cinematográfico de vista (opt-in) |
diagnosticLogEnabled | true | Logs [diag] de sesión/decisión siempre activos |
dormantAfterMinutes | 8 | WARM → DORMANT |
frozenAfterMinutes | 20 | → FROZEN |
Snapshot: mods/durkz_LeanCore/learning.state.gz (v8, gzip; lee v7). HUD: mods/durkz_LeanCore/hud.state.
Recomendado
- Solo / local:
localHostMode: AUTO. LITE activado por defecto. - Dedicado o amigos: activa govern/learning/unload según necesites; ejecuta
/leancore probeantes del unload por política.
Verificación
- Log:
LeanCore 1.7.0 setupyprofile=LITEen solo /leancore status:profile LITE, flags lite activos/leancore savings:lite governor ONtras ~60s en solo- Amigo entra →
profile LITE -> STANDARD - Con unload habilitado,
/leancore probe→ puerta abierta
Licencia
MIT License. Copyright (c) 2026 DurkzPRG