FluxLoading is a mod that enhances immersion by capturing a screenshot of the logout screen and displaying it when you reload your world. When you rejoin, you'll see the exact scene from where you left off, smoothly fading out into real-time gameplay.
FluxLoading is built around three separated subsystems:
- Finite State Machine: loading phase control
- Timeline: time-based animation and transition sequencing (fade-in / wait / fade-out)
- Chunk Gate: decision logic that determines whether extra chunk loading is required before releasing control
graph TD
A[FADING_IN]
A --> B[DEFAULT_WORLD_LOADING]
B --> C[EXTRA_CHUNK_LOADING]
C --> D[EXTRA_WAIT]
D --> E[FADING_OUT]
E --> F[FINISHED]
Note:
Chunk loading may be waited (EXTRA_CHUNK_LOADING) to smoothen the fade-out effect (the decision is made by the Chunk Gate)
Detecting FluxLoading
if (FluxLoadingAPI.isActive())
{
// FluxLoading is currently controlling the loading screen
}Observing Phases
FluxLoadingPhase phase = FluxLoadingAPI.getPhase();Lifecycle Hooks
FluxLoadingAPI.addFluxLoadingStartListener(() -> { ... });
FluxLoadingAPI.addFluxLoadingTickListener(() -> { ... });
FluxLoadingAPI.addFluxLoadingEndListener(() -> { ... });During loading (EXTRA_CHUNK_LOADING or EXTRA_WAIT to be exact):
- Player input is locally locked
- Position is locked both client-side and server-side
- Server-side enforcement is supported via packets
- mixinbooter 10.0+
Download and add the following libs to ./libs:
celeritas-common-2.3.0-dev.3.jarHwyla-1.8.26-B41_1.12.2.jarOpenTerrainGenerator-1.12.2-v9.5-R2.jar
