Skip to content

🗺️ Compatibilidad de versiones y Matriz del ciclo de vida

📌 Aviso sobre el código fuente del repositorio: La documentación de esta Wiki refleja el estado actual del código fuente en el repositorio, que puede incluir confirmaciones recientes no publicadas o características en desarrollo antes de los lanzamientos públicos en CurseForge y Modrinth.


🏛️ Estándar Operativo «1 Jar 1 Version» (Un JAR por Versión)

True Sleep aplica estrictamente la política «1 Jar 1 Version»: cada versión objetivo de Minecraft cuenta con su propio archivo JAR compilado de forma nativa frente a la cadena de herramientas Loom y el código de bytes de dicha versión.

Bajo el Mandato Obligatorio del Ciclo de Vida Multiversión, ninguna versión compatible es jamás retirada, abandonada o discontinuada sin previo aviso explícito.


📊 Matriz Completa de Versiones de Minecraft

Ancla de MinecraftEra de LanzamientoToolchain de JavaHerramientas de BuildEtiqueta de VersiónEstado
MC 26.3Modern LeadJava 25+ (release = 25)Loom 1.15+, Gradle 9.3+1.3.23+26.3🟢 Producción Activa
MC 26.2Modern PredecessorJava 25+ (release = 25)Loom 1.15+, Gradle 9.3+1.3.22+26.2🟢 Producción Activa
MC 26.1 / 26.1.2Modern AnchorJava 25+ (release = 25)Loom 1.15+, Gradle 9.3+1.3.22+26.1.2🟢 Producción Activa
MC 1.21.11Winter DropJava 21 (release = 21)Loom 1.15-SNAPSHOT1.1.2+1.21.11🟡 Archivo Mantenido
MC 1.21.1Transitional EarlyJava 21 (release = 21)Loom 1.10+1.1.2+1.21.1🟡 Archivo Mantenido
MC 1.20.1Legacy AnchorJava 17 (release = 17)Loom 1.4+, Gradle 8.x1.0.3+1.20.1🟡 Archivo Mantenido

🛡️ Verificación de Seguridad ModVersionGuard

Para proteger las partidas guardadas y los datos adjuntos de los jugadores contra desajustes del cargador de clases o estados de API corruptos, True Sleep ejecuta una verificación de bytecode sin dependencias durante onInitialize():

java
public class TrueSleep implements ModInitializer {
    @Override
    public void onInitialize() {
        net.vanillaoutsider.truesleep.util.ModVersionGuard.checkClass(
            "True Sleep", 
            "net.minecraft.world.entity.player.Player"
        );
        LOGGER.info("Initializing True Sleep (Time Warp)...");
        TrueSleepRules.init();
        CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> 
            TrueSleepCommand.register(dispatcher)
        );
    }
}

Resolución mediante el ClassLoader Knot

La verificación utiliza Thread.currentThread().getContextClassLoader() para resolver clases de vanilla a través del cargador Knot de Fabric. Si se detecta un entorno incompatible, el arranque se detiene de inmediato con un mensaje de diagnóstico antes de que se altere ningún dato del mundo.


📦 Matriz de Dependencias

DependenciaVersión MínimaObligatorio / OpcionalPropósito
Fabric Loader>=0.16.10ObligatorioCarga de mods y transformación de Mixins.
Java Runtime>=25 (26.x) / >=21 (1.21) / >=17 (1.20)ObligatorioEntorno de ejecución JVM principal.
Fabric API* (Open Lower Bound)ObligatorioRegistro de comandos y eventos del ciclo de vida.
Dasik Library>=1.8.0ObligatorioMotor de GameRules dinámicas y regulación.
Cloth Config*OpcionalInterfaz gráfica de configuración dentro del juego.
ModMenu*OpcionalIntegración en la lista de mods y botón de ajustes.

Official documentation & web portal for Dasik Igaijinn mods.