buildscript { repositories { maven { url = 'https://maven.minecraftforge.net' } maven { url = "https://repo.spongepowered.org/repository/maven-public/" } mavenCentral() } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '4.1.+', changing: true classpath group: "org.spongepowered", name: "mixingradle", version: "0.7-SNAPSHOT" } } apply plugin: 'net.minecraftforge.gradle' apply plugin: 'eclipse' apply plugin: 'maven-publish' apply plugin: "org.spongepowered.mixin" mixin { add sourceSets.main, "specialmobs.mixins.refmap.json" } // The mod's version and id version = "${mc_version}-${mod_version}" archivesBaseName = 'specialmobs' group = "fathertoast.${archivesBaseName}" java.toolchain.languageVersion = JavaLanguageVersion.of(8) // Mojang ships Java 8 to end users, so your mod should target Java 8. println('Java: ' + System.getProperty('java.version') + ' JVM: ' + System.getProperty('java.vm.version') + '(' + System.getProperty('java.vendor') + ') Arch: ' + System.getProperty('os.arch')) minecraft { mappings channel: 'official', version: "${mc_version}" accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') runs { client { workingDirectory project.file('run') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'debug' property "mixin.debug.export", "true" property 'mixin.env.disableRefMap', 'true' arg "-mixin.config=specialmobs.mixins.json" mods { deadlyworld { source sourceSets.main } } } server { workingDirectory project.file('run') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'debug' property "mixin.debug.export", "true" property 'mixin.env.disableRefMap', 'true' arg "-mixin.config=specialmobs.mixins.json" mods { deadlyworld { source sourceSets.main } } } data { workingDirectory project.file('run') property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.console.level', 'debug' args '--mod', 'specialmobs', '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') mods { deadlyworld { source sourceSets.main } } } } } // Include resources generated by data generators. sourceSets.main.resources { srcDir 'src/generated/resources' } repositories { // Repos for mods to include during development maven { name 'prog' url 'http://dvs1.progwml6.com/files/maven' } maven { name 'tterrag' url 'https://maven.tterrag.com/' } } dependencies { minecraft "net.minecraftforge:forge:${mc_version}-${forge_version}" // Add in JEI and TOP to assist debugging during development runtimeOnly fg.deobf("mezz.jei:jei-${mc_version}:${jei_version}") runtimeOnly fg.deobf("mcjty.theoneprobe:TheOneProbe-${top_version}") compileOnly fg.deobf("mcjty.theoneprobe:TheOneProbe-${top_version}:api") annotationProcessor 'org.spongepowered:mixin:0.8.2:processor' } jar { manifest { attributes([ "Specification-Title": "Special Mobs", "Specification-Vendor": "FatherToast", "Specification-Version": "1", // We are version 1 of ourselves "Implementation-Title": project.name, "Implementation-Version": "${version}", "Implementation-Vendor" :"FatherToast", "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), "MixinConfigs": "specialmobs.mixins.json" ]) } } jar.finalizedBy('reobfJar') publishing { publications { mavenJava(MavenPublication) { artifact jar } } repositories { maven { url "file:///${project.projectDir}/mcmodsrepo" } } }