Skip to content

Commit

Permalink
Switch to ModDev Legacy Forge gradle plugin
Browse files Browse the repository at this point in the history
Switched Xplat and Forge modules, converted Xplat accesswidener to accesstransformer that is also reused for the Forge module.
  • Loading branch information
TheRealWormbo committed Feb 28, 2025
1 parent 87ef253 commit 3a03812
Show file tree
Hide file tree
Showing 6 changed files with 72 additions and 95 deletions.
108 changes: 46 additions & 62 deletions Forge/build.gradle
Original file line number Diff line number Diff line change
@@ -1,22 +1,9 @@
buildscript {
repositories {
maven { url = 'https://maven.minecraftforge.net' }
maven {
url = 'https://repo.spongepowered.org/repository/maven-public/'
content { includeGroup "org.spongepowered" }
}
mavenCentral()
}
dependencies {
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '6.0.25'
classpath 'org.spongepowered:mixingradle:0.7-SNAPSHOT'
}
plugins {
id 'java'
id 'java-library'
id 'net.neoforged.moddev.legacyforge' version '2.0.78'
}

apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'eclipse'
apply plugin: 'org.spongepowered.mixin'

version = "${minecraft_version}-${build_number}-FORGE"
if (System.getenv().RELEASE_MODE != "1") {
version += '-SNAPSHOT'
Expand Down Expand Up @@ -51,71 +38,67 @@ repositories {
}
}

minecraft {
mappings channel: 'official', version: minecraft_version
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
legacyForge {
version = "1.20.1-47.1.3"
accessTransformers = [project(':Xplat').file('src/main/resources/META-INF/accesstransformer.cfg')]

parchment {
minecraftVersion = '1.20.1'
mappingsVersion = '2023.09.03'
}

runs {
client {
workingDirectory file('../run')
property 'forge.logging.console.level', 'debug'
property 'fml.earlyprogresswindow', 'false'
ideaModule "${rootProject.name}.${project.name}.main"
mods {
botania {
source sourceSets.main
source project(":Xplat").sourceSets.main
}
}
client()
systemProperty('forge.logging.console.level', 'debug')
}

server {
workingDirectory file('../run')
property 'forge.logging.console.level', 'debug'
property 'fml.earlyprogresswindow', 'false'
ideaModule "${rootProject.name}.${project.name}.main"
mods {
botania {
source sourceSets.main
source project(":Xplat").sourceSets.main
}
}
server()
systemProperty('forge.logging.console.level', 'debug')
}

data {
workingDirectory project.file('../run')
property 'fml.earlyprogresswindow', 'false'
ideaModule "${rootProject.name}.${project.name}.main"
args "-mixin.config=botania_xplat.mixins.json", "-mixin.config=botania_forge.mixins.json"
mods {
botania {
source sourceSets.main
source project(":Xplat").sourceSets.main
}
}
args '--mod', 'botania', '--all', '--output', '"' + file('src/generated/resources/') + '"'
data()
programArguments.addAll "-mixin.config=botania_xplat.mixins.json", "-mixin.config=botania_forge.mixins.json"
programArguments.addAll '--mod', 'botania', '--all'
programArguments.addAll '--output', '"' + file('src/generated/resources/').getAbsolutePath() + '"'
programArguments.addAll '--existing', '"' + file('src/main/resources/').getAbsolutePath() + '"'
}

configureEach {
gameDirectory = file('../run/')
systemProperty('fml.earlyprogresswindow', 'false')
}
}

mods {
botania {
sourceSet sourceSets.main
sourceSet project(":Xplat").sourceSets.main
}
}
}

dependencies {
minecraft "net.minecraftforge:forge:${minecraft_version}-47.1.3"
compileOnly project(":Xplat")
annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'

implementation fg.deobf("vazkii.patchouli:Patchouli:${minecraft_version}-84-FORGE")
compileOnly fg.deobf("mezz.jei:jei-1.20.1-common-api:15.2.0.27")
runtimeOnly fg.deobf("mezz.jei:jei-1.20.1-forge:15.2.0.27")
modImplementation("vazkii.patchouli:Patchouli:${minecraft_version}-84-FORGE")
modCompileOnly("mezz.jei:jei-1.20.1-common-api:15.2.0.27")
modRuntimeOnly("mezz.jei:jei-1.20.1-forge:15.2.0.27")

modCompileOnlyApi("dev.emi:emi-forge:1.0.12+${minecraft_version}")
//modRuntimeOnly("dev.emi:emi-forge:1.1.4+${minecraft_version}")

compileOnly fg.deobf("dev.emi:emi-forge:1.0.12+${minecraft_version}:api")
//runtimeOnly fg.deobf("dev.emi:emi-forge:1.1.4+${minecraft_version}")
modCompileOnly("top.theillusivec4.curios:curios-forge:5.4.2+1.20.1:api")
modRuntimeOnly("top.theillusivec4.curios:curios-forge:5.4.2+1.20.1")

compileOnly fg.deobf("top.theillusivec4.curios:curios-forge:5.4.2+1.20.1:api")
runtimeOnly fg.deobf("top.theillusivec4.curios:curios-forge:5.4.2+1.20.1")
// modCompileOnly('com.blamejared.crafttweaker:CraftTweaker-forge-1.18.2:9.1.123')

// compileOnly fg.deobf('com.blamejared.crafttweaker:CraftTweaker-forge-1.18.2:9.1.123')
modCompileOnly('com.unascribed:ears-api:1.4.5')

compileOnly fg.deobf('com.unascribed:ears-api:1.4.5')
compileOnly "org.jetbrains:annotations:24.0.1"
}

compileJava {
Expand Down Expand Up @@ -150,7 +133,8 @@ jar {
"Specification-Version": "1", // We are version 1 of ourselves
"Implementation-Title": "${mod_name}",
"Implementation-Version": "${archiveVersion.get()}",
"Implementation-Vendor" :"vazkii"
"Implementation-Vendor" :"vazkii",
"MixinConfigs": "botania_xplat.mixins.json,botania_forge.mixins.json"
])
}
finalizedBy 'reobfJar'
Expand Down
3 changes: 0 additions & 3 deletions Forge/src/main/resources/META-INF/accesstransformer.cfg

This file was deleted.

14 changes: 10 additions & 4 deletions Xplat/build.gradle
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
plugins {
id('java')
id('agency.highlysuspect.minivan') version '0.5'
id 'net.neoforged.moddev.legacyforge' version '2.0.78'
}

archivesBaseName = "${mod_name}-xplat"
Expand All @@ -9,9 +9,15 @@ if (System.getenv().RELEASE_MODE == null) {
version += '-SNAPSHOT'
}

minivan {
version(minecraft_version)
accessWideners 'src/main/resources/botania_xplat.accesswidener'
legacyForge {
mcpVersion = "1.20.1"
accessTransformers = [file('src/main/resources/META-INF/accesstransformer.cfg')]

parchment {
minecraftVersion = '1.20.1'
mappingsVersion = '2023.09.03'
}

}

repositories {
Expand Down
14 changes: 14 additions & 0 deletions Xplat/src/main/resources/META-INF/accesstransformer.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
public net.minecraft.client.gui.screens.worldselection.WorldPreset <init>(Ljava/lang/String;)V
public net.minecraft.client.renderer.block.model.ItemOverrides <init>()V
public net.minecraft.client.renderer.RenderType$CompositeRenderType
public net.minecraft.client.renderer.RenderType$CompositeState

public net.minecraft.core.registries.BuiltInRegistries$RegistryBootstrap

public net.minecraft.world.entity.projectile.Projectile <init>(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V
protected net.minecraft.world.entity.vehicle.AbstractMinecart m_213728_()Lnet/minecraft/world/item/Item; # getDropItem
public net.minecraft.world.item.crafting.Ingredient$Value
public net.minecraft.world.item.crafting.Ingredient$ItemValue <init>(Lnet/minecraft/world/item/ItemStack;)V
public net.minecraft.world.item.crafting.Ingredient$TagValue <init>(Lnet/minecraft/tags/TagKey;)V
public-f net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator
public net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator <init>(Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder;)V
12 changes: 0 additions & 12 deletions Xplat/src/main/resources/botania_xplat.accesswidener

This file was deleted.

16 changes: 2 additions & 14 deletions settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,8 @@ pluginManagement {
url = 'https://maven.fabricmc.net/'
}
maven {
name = 'QuiltFlower'
url = 'https://server.bbkr.space/artifactory/libs-release/'
}
maven {
name = 'Sponge Snapshots'
url = 'https://repo.spongepowered.org/repository/maven-public/'
}
maven {
name = 'Sleeping Town'
url = 'https://repo.sleeping.town/'
content {
includeGroup 'agency.highlysuspect'
includeGroup 'agency.highlysuspect.minivan'
}
name "NeoForged"
url "https://maven.neoforged.net/releases"
}

gradlePluginPortal()
Expand Down

0 comments on commit 3a03812

Please sign in to comment.