File Details
create-bts-1.2.0.jar
- R
- Mar 2, 2026
- 271.91 KB
- 69
- 1.20.1
- Forge
File Name
create-bts-1.2.0.jar
Supported Versions
- 1.20.1
Curse Maven Snippet
1.2.0
Fix 5 — Periodic GC to mitigate Valkyrien Skies chunk heap accumulation (new)
Valkyrien Skies retains LevelChunk references via ChunkAllocatorProvider for ship physics collision geometry. When Minecraft unloads those chunks, VS does not immediately release its references; over time this fills the heap and can trigger a stop-the-world GC pause lasting tens of seconds or longer.
Both ClientTickHandler (Dist.CLIENT) and ServerTickHandler (Dist.DEDICATED_SERVER) now spawn a daemon background thread every 5 minutes that calls System.gc(). Running on a background thread ensures the tick thread is never blocked by the collection. The call is a no-op if the JVM was started with -XX:+DisableExplicitGC.
The server-side 5-minute report detects which garbage collector is active at class load time via ManagementFactory.getGarbageCollectorMXBeans() and logs accordingly:
- ZGC active:
VS heap management: ZGC active — concurrent collector handles heap, periodic GC is advisory - Other GC (G1GC, etc.):
VS heap management: periodic GC requested and active
Fix 4 — LiquidBlazeBurner: restored pipe behaviour during exception windows
The 1.1.0 implementation returned Optional.empty() when the RecipeEssentials nextInt(0) bug fired, which prevented the burner from accepting fluid from pipes — breaking steam engines and other pipe-fed setups any time the bug was actively triggering (observed at ~500,000 exceptions per 5-minute window on a live server).
LiquidBlazeBurnerMixin now caches the last successful getRecipeFor result per burner instance using a @Unique field. When the exception fires, the cached result is returned instead of empty, so the burner's fluid acceptance behaviour is unchanged from the player's perspective.

