Skip to content

Commit daa5f33

Browse files
committed
Backport, add forge
1 parent 82afece commit daa5f33

File tree

15 files changed

+159
-34
lines changed

15 files changed

+159
-34
lines changed

build.gradle

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
plugins {
2-
id 'dev.architectury.loom' version '1.6-SNAPSHOT' apply false
2+
id 'dev.architectury.loom' version '1.11-SNAPSHOT' apply false
33
id 'architectury-plugin' version '3.4-SNAPSHOT'
4-
id 'com.github.johnrengelman.shadow' version '8.1.1' apply false
4+
id 'com.gradleup.shadow' version '8.3.6' apply false
55
}
66

77
architectury {
@@ -59,10 +59,15 @@ subprojects {
5959
neoforge_loaderversion : neoforge_loaderversion,
6060
neoforge_loaderrange : neoforge_loaderrange,
6161
neoforge_version : neoforge_version,
62+
63+
//Forge
64+
forge_loaderversion : forge_loaderversion,
65+
forge_loaderrange : forge_loaderrange,
66+
forge_version : forge_version,
6267
]
6368
inputs.properties replaceProperties
6469

65-
filesMatching(['META-INF/neoforge.mods.toml', 'fabric.mod.json'] ) {
70+
filesMatching(['META-INF/neoforge.mods.toml', 'META-INF/mods.toml', 'fabric.mod.json'] ) {
6671
expand replaceProperties
6772
}
6873
}

common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SIBUtil.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package net.stonebound.simpleircbridge.simpleircbridge;
22

33
import net.minecraft.network.chat.Component;
4-
import net.minecraft.network.chat.contents.PlainTextContents.LiteralContents;
4+
import net.minecraft.network.chat.contents.LiteralContents;
55

66
public class SIBUtil {
77
private SIBUtil() {

fabric/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
plugins {
2-
id 'com.github.johnrengelman.shadow'
2+
id 'com.gradleup.shadow'
33
}
44

55
architectury {
@@ -44,7 +44,7 @@ processResources {
4444
inputs.property 'version', project.version
4545

4646
filesMatching('fabric.mod.json') {
47-
expand version: project.version
47+
expand version: inputs.properties.version
4848
}
4949
}
5050

forge/build.gradle

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
plugins {
2+
id 'com.gradleup.shadow'
3+
}
4+
5+
loom {
6+
forge {
7+
mixinConfig "simpleircbridge.mixins.json"
8+
}
9+
}
10+
11+
architectury {
12+
platformSetupLoomIde()
13+
forge()
14+
}
15+
16+
configurations {
17+
common {
18+
canBeResolved = true
19+
canBeConsumed = false
20+
}
21+
compileClasspath.extendsFrom common
22+
runtimeClasspath.extendsFrom common
23+
developmentForge.extendsFrom common
24+
25+
// Files in this configuration will be bundled into your mod using the Shadow plugin.
26+
// Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files.
27+
shadowBundle {
28+
canBeResolved = true
29+
canBeConsumed = false
30+
}
31+
}
32+
33+
repositories {
34+
maven {
35+
name = 'Forge'
36+
url = 'https://maven.minecraftforge.net'
37+
}
38+
}
39+
40+
dependencies {
41+
forge "net.minecraftforge:forge:$rootProject.forge_version"
42+
43+
// Architectury API. This is optional, and you can comment it out if you don't need it.
44+
modImplementation "dev.architectury:architectury-forge:$rootProject.architectury_api_version"
45+
46+
common(project(path: ':common', configuration: 'namedElements')) { transitive = false }
47+
shadowBundle project(path: ':common', configuration: 'transformProductionForge')
48+
}
49+
50+
processResources {
51+
inputs.property 'version', project.version
52+
53+
filesMatching('META-INF/mods.toml') {
54+
expand version: inputs.properties.version
55+
}
56+
}
57+
58+
shadowJar {
59+
configurations = [project.configurations.shadowBundle]
60+
archiveClassifier = 'dev-shadow'
61+
}
62+
63+
remapJar {
64+
inputFile.set shadowJar.archiveFile
65+
}

forge/gradle.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
loom.platform = forge
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package net.stonebound.simpleircbridge.forge;
2+
3+
import dev.architectury.platform.forge.EventBuses;
4+
import net.minecraftforge.fml.common.Mod;
5+
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
6+
7+
import net.stonebound.simpleircbridge.SimpleIRCBridge;
8+
9+
@Mod(SimpleIRCBridge.MOD_ID)
10+
public final class SimpleIrcBridgeForge {
11+
public SimpleIrcBridgeForge() {
12+
EventBuses.registerModEventBus(SimpleIRCBridge.MOD_ID, FMLJavaModLoadingContext.get().getModEventBus());
13+
14+
// Run our common setup.
15+
SimpleIRCBridge.init();
16+
}
17+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
modLoader = "javafml"
2+
loaderVersion = "${forge_loaderversion}"
3+
issueTrackerURL = "${mod_git}"
4+
license = "${mod_license}"
5+
6+
[[mods]]
7+
modId = "${mod_id}"
8+
version = "${mod_version}"
9+
displayName = "${mod_name}"
10+
authors = "${mod_authors}"
11+
description = "${mod_description}"
12+
#logoFile = ""
13+
14+
[[dependencies."${mod_id}"]]
15+
modId = "forge"
16+
mandatory = true
17+
versionRange = "${forge_loaderrange}"
18+
ordering = "NONE"
19+
side = "SERVER"
20+
21+
[[dependencies."${mod_id}"]]
22+
modId = "minecraft"
23+
mandatory = true
24+
versionRange = "[${minecraft_version},)"
25+
ordering = "NONE"
26+
side = "BOTH"
27+
28+
[[dependencies."${mod_id}"]]
29+
modId = "architectury"
30+
mandatory = true
31+
versionRange = "[${architectury_api_version},)"
32+
ordering = "AFTER"
33+
side = "SERVER"

gradle.properties

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ org.gradle.jvmargs=-Xmx2G
33
org.gradle.parallel=true
44

55
# Mod properties
6-
mod_version = 1.1.4
6+
mod_version = 1.1.4-1.20.1
77
maven_group = net.stonebound.simpleircbridge
88
archives_name = simpleircbridge
9-
enabled_platforms = fabric,neoforge
9+
enabled_platforms = fabric,forge
1010
mod_description = Simple Irc Bridge
1111
mod_id = simpleircbridge
1212
mod_name=Simple IRC Bridge
@@ -15,6 +15,10 @@ mod_authors=xrand & contributors
1515
mod_contact=https://stonebound.net
1616
mod_git=https://github.com/Stonebound/SimpleIRCBridge/
1717

18+
# Forge TOML Properties
19+
forge_loaderversion = [4,)
20+
forge_loaderrange = [47.4,)
21+
1822
#Neoforge TOML Properties
1923
neoforge_loaderversion = [4,)
2024
neoforge_loaderrange = [20.4,)
@@ -24,9 +28,10 @@ fabric_java = >=21
2428
fabric_fabricapi = *
2529

2630
# Compile Dependencies
27-
minecraft_version = 1.21.1
28-
architectury_api_version = 13.0.6
29-
fabric_loader_version = 0.16.2
30-
fabric_api_version = 0.102.1+1.21.1
31-
neoforge_version = 21.1.23
32-
nightconfig_version=3.8.0
31+
minecraft_version = 1.20.1
32+
architectury_api_version = 9.2.14
33+
fabric_loader_version = 0.15.11
34+
fabric_api_version = 0.92.2+1.20.1
35+
forge_version = 1.20.1-47.4.0
36+
neoforge_version = 47.1.106
37+
nightconfig_version=3.8.2

gradle/wrapper/gradle-wrapper.jar

-9 Bytes
Binary file not shown.

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

0 commit comments

Comments
 (0)