← Back to documentation

Server documentation

LeanCore

Active

Hytale • Version 1.7.0

Установка, команды, конфиг, права, профиль LITE, предиктивное удержание, модель движения, HUD, heatmap и zone pin для LeanCore.

Установка, команды, конфиг и права для LeanCore.


Обзор

LeanCore создан, чтобы снижать использование JVM heap на серверах Hytale. Пока игроки исследуют мир, каждая область, которой они касаются, держит свои чанки и сущности в памяти, а движок медленно их освобождает, поэтому heap растёт и остаётся высоким ещё долго после того, как все ушли. LeanCore решает, что остаётся загруженным, а что выгружается, моделируя, где находятся игроки, куда они направляются и в какие части карты они действительно возвращаются. Сколько именно памяти он освобождает, зависит от мира, а выгрузка чанков начинается только после /leancore probe. Embedded solo использует профиль LITE с реальным губернатором, адаптивным view, AFK reclaim и demand learning по умолчанию. STANDARD и FULL добавляют bandit, holdout и полные пути при включении. Начиная с 1.6.0, модель движения на игрока делает предиктивное удержание зон (unload смещается от направления игрока, текущий/прогнозируемый view никогда не выгружается), а модель reuse-distance + выживаемости подстраивает dormancy для каждой зоны. Включает Activity Sense, /leancore savings, probe gate, dedicated bootstrap, всегда включённую диагностику [diag], snapshot v8 (gzip + prune, совместим с v7) и dispatch на world thread. Требует сервер Hytale >=0.5.6. Не влияет на FPS, GPU и TPS клиента.


Установка

  1. Скачайте LeanCore-1.7.0.jar на вкладке Files CurseForge
  2. Положите JAR в папку mods/ сервера
  3. Запустите сервер. Конфиг: mods/durkz_LeanCore/LeanCore.json
  4. Выполните /leancore probe, если нужен unload чанков (LITE или STANDARD/FULL)
  5. Выдайте staff доступ HUD/admin (см. Права)
  6. Выполните /leancore memory и /leancore status через минуту

Профили на embedded host

ИгрокиПрофильTickЧто работает
1 (solo local)LITE30s (60s idle)Lite губернатор, адаптивный view, AFK unload, lite learning
1 + embeddedStandardProfileSTANDARD15sЛокальный dogfood без FULL tick 5s
2–8 (друзья)STANDARD15sКлассификатор; govern/learning/HUD при включении
9+ (плотный local)FULL5sПолный runtime по конфигу
Dedicated JVMFULL5sПолный runtime по конфигу

Конфиг: localHostMode: "AUTO" (по умолчанию). "PASSIVE" отключает фоновые ticks. dedicatedServerMode: true на dedicated JVM.

Лог (solo): LeanCore 1.7.0 setup (localHostMode=AUTO). и Runtime started profile=LITE. Друг заходит → profile LITE -> STANDARD.


Профиль LITE (embedded solo)

ФункцияПоведение
Адаптивный view100% в COMFORT до давления чанков или heap; мягкие срезы в WATCH; агрессивно только в TIGHT/CRITICAL
Двойные сигналыTier heap JVM + давление чанков (loaded / view budget)
AFK unloadDormant/frozen зоны в idle; probe gate; governEnabled не нужен
LearningliteLearningEnabled=true по умолчанию; demand влияет на срезы view; без bandit в LITE
Бюджет tickТяжёлая работа на heap sample (~60s), dispatch на world thread

STANDARD/FULL: view-radius и unload по-прежнему требуют governEnabled, learningEnabled и unloadEnabled.


Возможности

  • Профили runtime: LITE, STANDARD, FULL
  • LITE губернатор в соло: адаптивный view, понижение зон, AFK unload, demand learning
  • Tiers heap: COMFORT, WATCH, TIGHT, CRITICAL с rollback
  • Dormancy зон: HOT, WARM, DORMANT, FROZEN
  • Предиктивное удержание (1.6, motionModelEnabled): модель движения на игрока смещает unload от направления; текущий/прогнозируемый view никогда не выгружается
  • Модель reuse-distance + выживаемости (1.6, zoneReuseModelEnabled): учится повторно посещаемым зонам и подстраивает пороги dormancy для каждой зоны
  • Диагностика всегда включена (diagnosticLogEnabled): сводки старта/остановки и логи решений [diag] по профилю
  • Кинематографичный буст view (1.6, motionViewRadiusBoostEnabled, opt-in): поднимает дистанцию обзора для быстро движущихся; выключен по умолчанию
  • Session savings, probe gate, HUD, heatmap, zone pin

Команды

Основная команда: /leancore

КомандаДоступОписание
/leancore statusВсеПрофиль, preset, tier, lite flags, unload gate
/leancore memoryВсеСнимок heap
/leancore savingsВсеHeap сессии, lite/standard губернатор
/leancore learnВсеДиагностика; LITE показывает только demand model
/leancore learn playerВсеFeatures, posterior, EMA активности
/leancore probeВсе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

Права

ПравоОписание
durkz.leancore.hudHUD памяти (/leancore hud …)
durkz.leancore.adminHeatmap, zone pin, admin tools

Конфигурация (LeanCore.json)

Путь: mods/durkz_LeanCore/LeanCore.json

КлючПо умолчаниюОписание
localHostModeAUTOAUTO, PASSIVE или FULL
governEnabledfalseГубернатор STANDARD/FULL
learningEnabledfalseLearning STANDARD/FULL
unloadEnabledfalseUnload STANDARD/FULL
unloadProbeGateEnabledtrueБлокирует unload до probe
liteMemoryGovernorEnabledtrueLite губернатор в соло
liteLearningEnabledtrueDemand model + persistence в соло
liteViewRadiusEnabledtrueАдаптивный view в соло
liteUnloadEnabledtrueAFK reclaim в соло
liteUnloadIdleSeconds180Idle до lite sweeps
motionModelEnabledtrueМодель движения + предиктивное удержание
zoneReuseModelEnabledtrueReuse-distance + выживаемость; пороги dormancy по зоне
motionViewRadiusBoostEnabledfalseКинематографичный буст view (opt-in)
diagnosticLogEnabledtrueЛоги [diag] сессии/решений всегда включены
dormantAfterMinutes8WARM → DORMANT
frozenAfterMinutes20→ FROZEN

Снимок: mods/durkz_LeanCore/learning.state.gz (v8, gzip; читает v7). HUD: mods/durkz_LeanCore/hud.state.


Рекомендации

  • Соло / локально: localHostMode: AUTO. LITE включён по умолчанию.
  • Dedicated или друзья: включите govern/learning/unload по необходимости; выполните /leancore probe перед policy unload.

Проверка

  1. Лог: LeanCore 1.7.0 setup и profile=LITE в соло
  2. /leancore status: profile LITE, lite flags включены
  3. /leancore savings: lite governor ON через ~60s в соло
  4. Друг заходит → profile LITE -> STANDARD
  5. При включённом unload, /leancore probe → gate открыт

Лицензия

MIT License. Copyright (c) 2026 DurkzPRG