Installing YACL
Learn how to import YACL into your development environment.
This wiki is currently a work-in-progress and is incomplete!
Adding YACL as a dependency
First, you will need to add the maven repository that hosts YACL.
repositories {
    maven("https://maven.isxander.dev/releases") {
        name = "Xander Maven"
    }
}repositories {
    maven {
        name 'Xander Maven'
        url 'https://maven.isxander.dev/releases'
    }
}Next, you need to place the YACL version you want to use in your gradle.properties file.
yacl_version=...Below is a handy chart to find the YACL version based on the Minecraft version and Mod loader you're using.
1.21.2, 1.21.3
Fabric
3.6.1+1.21.2-fabric
1.21.2, 1.21.3
NeoForge
3.6.1+1.21.2-neoforge
1.21, 1.21.1
Fabric
3.6.1+1.21-fabric
1.21, 1.21.1
NeoForge
3.6.1+1.21-neoforge
1.20.6
Fabric
3.6.1+1.20.6-fabric
1.20.6
NeoForge
3.6.1+1.20.6-neoforge
1.20.4
Fabric
3.6.1+1.20.4-fabric
1.20.4
NeoForge
3.6.1+1.20.4-neoforge
1.20.1
Fabric
3.6.1+1.20.1-fabric
1.20.1
MinecraftForge (LexForge)
3.6.1+1.20.1-forge
Next, you need to add the dependency to the classpath.
It is highly discouraged to JiJ (jar in jar) the YACL dependency as it is likely that it's already in the user's mod folder and will significantly increase the size of your JAR.
dependencies {
    modImplementation "dev.isxander:yet-another-config-lib:${project.yacl_version}"
}dependencies {
    compileOnly fg.deobf("dev.isxander:yet-another-config-lib:${project.yacl_version}")
}Adding YACL as a dependency
Finally, you should also add the dependency in your mod manifest so the loader will crash elegantly if YACL is not present, giving the user a clear description of what they need to do.
"depends": {
  "yet_another_config_lib_v3": ">=YACL_VERSION_HERE"
}[[dependencies.your_mod_id]]
modId = "yet_another_config_lib_v3"
mandatory = true
versionRange = "[YACL_VERSION_HERE,)"
ordering = "NONE"
side = "CLIENT"[[dependencies.your_mod_id]]
modId = "yet_another_config_lib_v3"
mandatory = true
versionRange = "[YACL_VERSION_HERE,)"
ordering = "NONE"
side = "CLIENT"Last updated
Was this helpful?
