跳到正文

StartupFlow

作者:Aelfwif

Accelerates 1.12.2 launch times with multi-threaded model baking, parallel texture mipmapping, and smart startup caching.

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

Warning

PROJECT UNMAINTAINED / ON INDEFINITE HIATUS

This project is no longer actively maintained and is on indefinite hiatus. No further updates, feature additions, or bug fixes will be provided. The repository is archived and read-only. Anyone is welcome to fork this project and continue development under the terms of the open-source license.

⚡ Startup Flow

High-Performance Startup Optimizer for Minecraft 1.12.2

CleanroomMC • Minecraft Forge • Client • Dedicated Server

Minecraft 1.12.2 Cleanroom and Forge Client and Server GPL 3.0


🌟 What is Startup Flow?

Tired of waiting minutes every time you boot up large Minecraft 1.12.2 modpacks like RLCraft, MeatballCraft, or GreedyCraft?

Startup Flow is a dual-purpose optimization mod designed specifically to eliminate startup lag on both CleanroomMC and standard Minecraft Forge 1.12.2. It tackles two of the heaviest launch bottlenecks:

  1. Caching FermiumBooter’s Startup Scan: Bypasses the repetitive, disk-heavy ClassGraph scanning of hundreds of mod JAR files on every boot by caching the results to disk.
  2. Multi-Threaded Model Baking: Parallelizes block and item model compilation across multiple worker threads instead of forcing everything through a single CPU core.

⚡ Key Benefits & Features

  • Instant Replay of Jar Scans: On warm boots, Startup Flow pre-loads cached mod IDs and @MixinConfig toggles into FermiumBooter in just ~24 milliseconds, completely skipping the expensive disk scan.
  • Multi-Core Model Baking: Automatically detects your CPU cores and bakes block/item models concurrently, dramatically speeding up client loading on packs with tens of thousands of model variants.
  • Smart Invalidation Fingerprint: Automatically detects changes in your mods/ directory (including nested folders like mods/1.12.2/) as well as config/fermiumbooter.cfg content changes. The cache updates itself only when your mod setup actually changes.
  • Universal Compatibility: Works natively on both Cleanroom and standard Forge instances.
  • Client & Server Friendly: Caching benefits both client launches and dedicated servers. Model baking optimizations safely stand by on headless servers.
  • Safe & Non-Intrusive: Uses reflection with zero compile-time dependencies on FermiumBooter. If FermiumBooter is absent, Startup Flow steps aside gracefully without logging scary errors.
  • Built-in OptiFine & VintageFix Protection: Automatically detects OptiFine and disables conflicting texture mixins to preserve custom shaders and textures. Fully compatible with VintageFix’s dynamic resources.

📊 Real Benchmark Results

Measured on a real-world modpack with 234 mods and 564 @MixinConfig toggles (Cleanroom 0.6.13-alpha, identical hardware):

Boot State Cache Status Log Span (Start → Done) Wall Time (±0.5s) Toggle Scan Processing
Baseline (No StartupFlow) None 56.0 s 60.4 s Full ClassGraph JAR scan across disk
StartupFlow (Cold Boot) Miss → Write 55.0 s 59.0 s Scans once and caches to disk
StartupFlow (Warm Boot 1) Cache Hit 53.0 s 57.6 s 564 toggles applied in 24 ms
StartupFlow (Warm Boot 2) Cache Hit 53.0 s 57.0 s 564 toggles applied in 24 ms

Correctness Guarantee: 0 Mixin errors, 0 crashes, and identical toggle evaluation verified between cold and warm boots.


🧩 Compatibility Matrix

  • CleanroomMC: Fully supported and recommended.
  • Minecraft Forge 1.12.2: Fully supported on Forge 14.23.5.2847 or higher.
  • FermiumBooter: Supported automatically. The scan cache activates when FermiumBooter is installed.
  • OptiFine: Fully compatible. Startup Flow detects OptiFine at runtime and dynamically disables its texture atlas mixin so OptiFine’s shader and texture pipelines remain 100% untouched.
  • VintageFix: Fully compatible. If VintageFix has dynamic_resources enabled (loading models on-demand), Startup Flow’s model baker safely idles while the FermiumBooter scan cache continues speeding up startup.
  • Surge / CensoredASM: Fully compatible with no conflicting transformations.

📋 Requirements & Installation

Requirements:

  • Minecraft 1.12.2
  • Minecraft Forge (14.23.5.2847+) OR Cleanroom (0.6.x+)
  • MixinBooter (10.0 or newer)
  • Optional: FermiumBooter (required only if you want scan caching)
  • Java 8 up to Java 25

Installation:

  1. Ensure MixinBooter is present in your mods folder.
  2. Download startupflow-1.0.1.jar and place it into your mods folder.
  3. Launch the game. The first boot records the cache; every launch thereafter will automatically benefit from warm boots!

⚙️ Configuration & Commands

Configuration file: config/startupflow.cfg

"Model Baking" {
    # Bake block and item models across multiple worker threads instead of a single thread.
    B:"Enable Parallel Model Baking"=true
# Number of threads for model baking (0 = auto-detect CPU cores).
I:"Model Baking Threads"=0

# Compute texture atlas mipmap levels concurrently across multiple threads.
B:"Enable Parallel Mipmaps"=true

# Number of threads for mipmap generation (0 = auto-detect CPU cores).
I:"Mipmap Threads"=0
 

}

 

Cache Management:

  • Disable Cache via JVM flag: Add -Dfermiumscancache.disable=true to your launcher arguments.
  • Disable Cache via File Marker: Place an empty file at config/fermiumscancache.disabled.
  • Force Rescan: Delete config/fermiumscancache.json.

In-Game Commands:

  • /startupflow status — View current model baking threads and status.
  • /startupflow toggle — Toggle parallel model baking on or off.

📜 License

Startup Flow is open-source software licensed under the GNU General Public License v3.0 (GPL-3.0). Source code is available on GitHub.

常见问题

StartupFlow 支持哪些 Minecraft 版本?

StartupFlow 支持 Minecraft Java 版 1.12.2,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

StartupFlow 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

Aelfwif 的其他作品

查看全部 →