plugins { id 'com.github.johnrengelman.shadow' } repositories { maven { url 'https://maven.quiltmc.org/repository/release/' } } architectury { platformSetupLoomIde() loader('quilt') } configurations { common { canBeResolved = true canBeConsumed = false } compileClasspath.extendsFrom common runtimeClasspath.extendsFrom common developmentQuilt.extendsFrom common // Files in this configuration will be bundled into your mod using the Shadow plugin. // Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files. shadowBundle { canBeResolved = true canBeConsumed = false } } dependencies { modImplementation "org.quiltmc:quilt-loader:$rootProject.quilt_loader_version" // Quilt Standard Libraries and QSL. modImplementation "org.quiltmc.quilted-fabric-api:quilted-fabric-api:$rootProject.quilted_fabric_api_version" // Architectury API. This is optional, and you can comment it out if you don't need it. modImplementation("dev.architectury:architectury-fabric:$rootProject.architectury_api_version") { // We must not pull Fabric Loader and Fabric API from Architectury Fabric. exclude group: 'net.fabricmc' exclude group: 'net.fabricmc.fabric-api' } common(project(path: ':common', configuration: 'namedElements')) { transitive false } shadowBundle project(path: ':common', configuration: 'transformProductionQuilt') common(project(path: ':fabric-like', configuration: 'namedElements')) { transitive false } shadowBundle project(path: ':fabric-like', configuration: 'transformProductionQuilt') } processResources { inputs.property 'group', project.group inputs.property 'version', project.version filesMatching('quilt.mod.json') { expand group: project.group, version: project.version } } shadowJar { configurations = [project.configurations.shadowBundle] archiveClassifier = 'dev-shadow' } remapJar { input.set shadowJar.archiveFile }