Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 22 additions & 45 deletions forge/build.gradle
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
plugins {
id 'multiloader-loader'
id 'net.minecraftforge.gradle' version '[6.0.24,6.2)'
id 'org.spongepowered.mixin' version '0.7-SNAPSHOT'
id 'net.minecraftforge.gradle' version '7.0.0-beta.46'
}
base {
archivesName = "${mod_name}-forge-${minecraft_version}"
}
mixin {
config("${mod_id}.mixins.json")
config("${mod_id}.forge.mixins.json")
}
//mixin {
// config("${mod_id}.mixins.json")
// config("${mod_id}.forge.mixins.json")
//}
jar {
manifest {
attributes["MixinConfigs"] = "${mod_id}.mixins.json,${mod_id}.forge.mixins.json"
Expand All @@ -19,10 +18,6 @@ jar {
minecraft {
mappings channel: 'official', version: minecraft_version

copyIdeResources = true //Calls processResources when in dev

reobf = false // Forge 1.20.6+ uses official mappings at runtime, so we shouldn't reobf from official to SRG

// Automatically enable forge AccessTransformers if the file exists
// This location is hardcoded in Forge and can not be changed.
// https://github.com/MinecraftForge/MinecraftForge/blob/be1698bb1554f9c8fa2f58e32b9ab70bc4385e60/fmlloader/src/main/java/net/minecraftforge/fml/loading/moddiscovery/ModFile.java#L123
Expand All @@ -33,62 +28,44 @@ minecraft {
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tested this PR in my project and it works except for the accessTransfomer. I needed to change this line to

accessTransformers = true


runs {
configureEach {
args "-mixin.config=${mod_id}.mixins.json"
args "-mixin.config=${mod_id}.forge.mixins.json"
}

client {
workingDirectory file('runs/client')
ideaModule "${rootProject.name}.${project.name}.main"
taskName 'Client'
mods {
modClientRun {
source sourceSets.main
}
}
workingDir = file('runs/client')
}

server {
workingDirectory file('runs/server')
ideaModule "${rootProject.name}.${project.name}.main"
taskName 'Server'
mods {
modServerRun {
source sourceSets.main
}
}
workingDir = file('runs/server')
}

data {
workingDirectory file('runs/data')
ideaModule "${rootProject.name}.${project.name}.main"
workingDir = file('runs/data')
args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/')
taskName 'Data'
mods {
modDataRun {
source sourceSets.main
}
}
}
}
}

sourceSets.main.resources.srcDir 'src/generated/resources'

repositories {
maven minecraft.mavenizer
maven fg.forgeMaven
maven fg.minecraftLibsMaven
}

dependencies {
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
annotationProcessor("org.spongepowered:mixin:0.8.5-SNAPSHOT:processor")
implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}")

// Forge's hack fix
implementation('net.sf.jopt-simple:jopt-simple:5.0.4') { version { strictly '5.0.4' } }
// This is currently bugged due to the absence of obfuscation mappings
//annotationProcessor "org.spongepowered:mixin:0.8.5-SNAPSHOT:processor"
}

publishing {
publications {
mavenJava(MavenPublication) {
fg.component(it)
}
}
}

sourceSets.each {
def dir = layout.buildDirectory.dir("sourcesSets/$it.name")
it.output.resourcesDir = dir
it.java.destinationDirectory = dir
}
1 change: 1 addition & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ fabric_version=0.135.0+1.21.10
fabric_loader_version=0.17.3

# Forge, see https://files.minecraftforge.net/net/minecraftforge/forge/ for new versions
net.minecraftforge.gradle.merge-source-sets=true
forge_version=60.0.3
forge_loader_version_range=[60,)

Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
6 changes: 3 additions & 3 deletions gradlew

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gradlew.bat

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 9 additions & 8 deletions settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -26,22 +26,23 @@ pluginManagement {
includeGroupAndSubgroups("org.spongepowered")
}
}
exclusiveContent {
forRepository {
// exclusiveContent {
// forRepository {
maven {
name = 'Forge'
url = uri('https://maven.minecraftforge.net')
}
}
filter {
includeGroupAndSubgroups('net.minecraftforge')
}
}
// }
// filter {
// includeGroupAndSubgroups('net.minecraftforge')
// }
// }
mavenLocal()
}
}

plugins {
id 'org.gradle.toolchains.foojay-resolver-convention' version '0.8.0'
id 'org.gradle.toolchains.foojay-resolver-convention' version '1.0.0'
}

// This should match the folder name of the project, or else IDEA may complain (see https://youtrack.jetbrains.com/issue/IDEA-317606)
Expand Down