release: Puzzle v2.2.0

This commit is contained in:
Martin Prokoph
2025-11-23 14:30:28 +01:00
parent 30e09acfb7
commit 1d52a5e3de
10 changed files with 66 additions and 32 deletions

View File

@@ -0,0 +1,6 @@
# Puzzle v2.2.0
- Setup a **multiversion** build environment
- Puzzle will now always be up-to-date on all relevant versions of Minecraft
(Fabric/Forge 1.20.1; Fabric/NeoForge 1.21.1, 1.21.5, 1.21.8, 1.21.10)
- Migrate to Mojang mappings in preparation for upcoming non-obfuscated releases
- Updated Entity Model/Texture Features compatibility

View File

@@ -3,6 +3,7 @@ plugins {
id("architectury-plugin") id("architectury-plugin")
id("me.modmuss50.mod-publish-plugin") id("me.modmuss50.mod-publish-plugin")
id("com.github.johnrengelman.shadow") id("com.github.johnrengelman.shadow")
`maven-publish`
} }
val minecraft = stonecutter.current.version val minecraft = stonecutter.current.version
@@ -22,7 +23,7 @@ repositories {
maven("https://maven.nucleoid.xyz/") maven("https://maven.nucleoid.xyz/")
// MidnightLib // MidnightLib
maven("https://maven.midnightdust.eu/snapshots/") maven("https://maven.midnightdust.eu/releases/")
// Jigsaw modules // Jigsaw modules
maven("https://api.modrinth.com/maven") maven("https://api.modrinth.com/maven")
@@ -123,21 +124,24 @@ publishMods {
file = project.tasks.remapJar.get().archiveFile file = project.tasks.remapJar.get().archiveFile
dryRun = modrinthToken == null || curseforgeToken == null dryRun = modrinthToken == null || curseforgeToken == null
displayName = "${mod.name} ${loader.replaceFirstChar { it.uppercase() }} ${property("mod.mc_title")}-${mod.version}" displayName = "${mod.name} ${mod.version} - ${loader.replaceFirstChar { it.uppercase() }} ${property("mod.mc_title")}"
version = mod.version version = "${mod.version}+${property("mod.mc_title")}-${loader}"
changelog = rootProject.file("CHANGELOG.md").readText() changelog = rootProject.file("CHANGELOG.md").readText()
type = BETA type = STABLE
modLoaders.add(loader) modLoaders.add(loader)
if (loader == "fabric") {
modLoaders.add("quilt")
}
val targets = property("mod.mc_targets").toString().split(' ') val targets = property("mod.mc_targets").toString().split(' ')
modrinth { modrinth {
projectId = property("publish.modrinth").toString() projectId = property("publish.modrinth").toString()
accessToken = modrinthToken accessToken = modrinthToken
targets.forEach(minecraftVersions::add) targets.forEach(minecraftVersions::add)
requires("midnightlib")
if (loader == "fabric") { if (loader == "fabric") {
requires("fabric-api") requires("fabric-api")
optional("modmenu")
} }
} }
@@ -145,21 +149,41 @@ publishMods {
projectId = property("publish.curseforge").toString() projectId = property("publish.curseforge").toString()
accessToken = curseforgeToken.toString() accessToken = curseforgeToken.toString()
targets.forEach(minecraftVersions::add) targets.forEach(minecraftVersions::add)
requires("midnightlib")
if (loader == "fabric") { if (loader == "fabric") {
requires("fabric-api") requires("fabric-api")
optional("modmenu")
} }
} }
github { // github {
accessToken = githubToken // accessToken = githubToken
repository = "TeamMidnightDust/MidnightLib" // repository = "TeamMidnightDust/MidnightLib"
commitish = "multiversion" // This is the branch the release tag will be created from // commitish = "multiversion" // This is the branch the release tag will be created from
//
// tagName = "v" + properties["mod.version"]
//
// // Allow the release to be initially created without any files.
// allowEmptyFiles = true
// }
}
publishing {
repositories {
maven {
name = "MidnightDust"
url = uri("https://maven.midnightdust.eu/releases")
credentials(PasswordCredentials::class)
}
}
publications {
create<MavenPublication>("mavenJava") {
pom {
groupId = "eu.midnightdust"
artifactId = project.mod.id
version = "${project.version}-${loader}"
tagName = "v" + properties["mod.version"] from(components["java"])
}
// Allow the release to be initially created without any files. }
allowEmptyFiles = true
} }
} }

View File

@@ -31,7 +31,7 @@ deps.neoforge_patch=[VERSIONED]
# Mod dependencies # Mod dependencies
deps.yarn_build=[VERSIONED] deps.yarn_build=[VERSIONED]
deps.modmenu_version=[VERSIONED] deps.modmenu_version=[VERSIONED]
deps.midnightlib_version=1.9.0-beta.3 deps.midnightlib_version=1.9.0
# Mod integrations # Mod integrations
jigsaws.cull_leaves_version = 3.0.2-fabric jigsaws.cull_leaves_version = 3.0.2-fabric

View File

@@ -32,6 +32,6 @@ side = "CLIENT"
[[dependencies.puzzle]] [[dependencies.puzzle]]
modId = "minecraft" modId = "minecraft"
mandatory = true mandatory = true
versionRange = "[1.21,)" versionRange = "${minecraft}"
ordering = "NONE" ordering = "NONE"
side = "CLIENT" side = "CLIENT"

View File

@@ -37,6 +37,10 @@
"depends": { "depends": {
"fabric": "*", "fabric": "*",
"minecraft": ">=1.20" "minecraft": "${minecraft}"
},
"breaks": {
"entity_texture_features": "<7.0.0",
"entity_model_features": "<3.0.0"
} }
} }

View File

@@ -1,7 +1,7 @@
mod.mc_dep_fabric==1.20.1 mod.mc_dep_fabric=>=1.20 <=1.20.1
mod.mc_dep_forgelike=[1.20, 1.20.1] mod.mc_dep_forgelike=[1.20, 1.20.1]
mod.mc_title=1.20.1 mod.mc_title=1.20.1
mod.mc_targets=1.20.1 mod.mc_targets=1.20 1.20.1
deps.forge_loader=47.3.0 deps.forge_loader=47.3.0
deps.neoforge_loader=[UNSUPPORTED] deps.neoforge_loader=[UNSUPPORTED]

View File

@@ -1,7 +1,7 @@
mod.mc_dep_fabric==1.21.5 mod.mc_dep_fabric=>=1.21.4 <=1.21.5
mod.mc_dep_forgelike=[1.21.5] mod.mc_dep_forgelike=[1.21.4, 1.21.5]
mod.mc_title=1.21.5 mod.mc_title=1.21.5
mod.mc_targets=1.21.5 mod.mc_targets=1.21.4 1.21.5
deps.forge_loader=54.0.13 deps.forge_loader=54.0.13
deps.neoforge_loader=21.4.47-beta deps.neoforge_loader=21.4.47-beta

View File

@@ -1,7 +1,7 @@
mod.mc_dep_fabric==1.21.5 mod.mc_dep_fabric=>=1.21.4 <=1.21.5
mod.mc_dep_forgelike=[1.21.5] mod.mc_dep_forgelike=[1.21.4, 1.21.5]
mod.mc_title=1.21.5 mod.mc_title=1.21.5
mod.mc_targets=1.21.5 mod.mc_targets=1.21.4 1.21.5
deps.forge_loader=0 deps.forge_loader=0
deps.neoforge_loader=21.5.54-beta deps.neoforge_loader=21.5.54-beta

View File

@@ -1,7 +1,7 @@
mod.mc_dep_fabric==1.21.8 mod.mc_dep_fabric=>=1.21.6 <=1.21.8
mod.mc_dep_forgelike=[1.21.8] mod.mc_dep_forgelike=[1.21.6, 1.21.8]
mod.mc_title=1.21.8 mod.mc_title=1.21.8
mod.mc_targets=1.21.8 mod.mc_targets=1.21.6 1.21.7 1.21.8
deps.forge_loader=0 deps.forge_loader=0
deps.neoforge_loader=21.8.50 deps.neoforge_loader=21.8.50

View File

@@ -1,7 +1,7 @@
mod.mc_dep_fabric==1.21.5 mod.mc_dep_fabric=>=1.21.6 <=1.21.8
mod.mc_dep_forgelike=[1.21.5] mod.mc_dep_forgelike=[1.21.6, 1.21.8]
mod.mc_title=1.21.5 mod.mc_title=1.21.8
mod.mc_targets=1.21.5 mod.mc_targets=1.21.6 1.21.7 1.21.8
deps.forge_loader=0 deps.forge_loader=0
deps.neoforge_loader=21.8.50 deps.neoforge_loader=21.8.50