
Lazy Chunk Load
The vanilla chunk loading system schedules a massive number of chunks around the player all at once, causing instant server CPU overload and TPS collapse
Оцените первым
4.7K
17
Список изменений
1.3.0 — 2026-07-19
🆕 New
- Unload Strategy: Clears internal
chunkLastSeenentries under memory pressure using three conditions — far from players, non-hotspot, sufficiently old. Disabled by default; can be enabled in config - Hotspot Chunk Tracking: Records frequently-accessed chunks; preload extends their retention, unload protects them first
- Dimension Whitelist/Blacklist: Restrict preloading scope via
dimension_blacklist/dimension_whitelistto avoid wasting CPU in custom plot worlds - Stats Collector: Internal
StatsCollectortracks preload / throttle-skip / emergency-load counts for diagnostics - NeoForge 1.21.1 Platform: Added NeoForge 1.21.1 alongside existing Fabric 1.21.x / Forge 1.20.1
- Fabric 26.1 Platform: Adapted to MC 26.1's new API (ChunkPos record, removed obfuscation mappings, etc.). Requires JDK 25 to compile
🔧 Optimizations
- Preload Path Prediction Cache:
MovementPredictor.pathAlignmentwas being called ~200 times/tick/level inside the scan loop, creating ~4800 temporaryVec3objects per tick. Now cachespredictPathonce at entry and passes it in batches — temp objects drop from ~4800/tick to ~8/tick - Independent 26.1 Core: MC 26.1 API changes were too large (ChunkPos record, GameProfile.getName removed, ServerPlayer.serverLevel removed, ResourceKey.location removed, etc.) — no longer shares source with common, maintained as an independent core copy
🔧 Fixes
- Fixed performance regression caused by UnloadStrategy default-on: When enabled by default,
evictFarChunksclearedchunkLastSeenat ≥85% memory, dropping affected chunks'agingScorefrom ~1.0 to ~0.63 and degrading preload effectiveness. Default changed to disabled
Файлы
lazychunkload-forge-1.3.0.jar(53.28 KiB)
ОсновнойМетаданные
Канал релиза
Release
Номер версии
1.3.0
Загрузчики
Forge
Версии игры
1.20.1
Загрузок
442
Дата публикации
19.07.2026
