release: Sanctuary 26.2.0-alpha.213 — correctif Ambiance #83

Merged
koka merged 1 commits from release/26.2.0-alpha.213 into main 2026-08-29 18:03:43 +00:00
9 changed files with 211 additions and 101 deletions
+4 -3
View File
@@ -6,12 +6,13 @@ Ce journal suit les **versions du modpack**. Lorsqu'un seul module change, sa ve
- Depuis `26.2.0-alpha.6`, le pack et les modules ont des versions indépendantes. I Like To Move It et Only Fun deviennent les cinquième et sixième modules actifs dans l'alpha 46.
- Les versions ci-dessous ont été reconstituées à partir des JAR archivés, des packs locaux et du code source actuel. Les dates n'étant pas enregistrées de manière fiable, elles ne sont pas inventées.
## Modifications non distribuées
## `26.2.0-alpha.213`
Module modifié : **Ambiance `0.0.0-alpha.16`**.
Module modifié : **Ambiance `0.0.0-alpha.16`**. Les neuf autres modules conservent leur version issue de l'alpha.212.
- corrige le crash client au démarrage d'Ambiance sous Minecraft 26.2 en ciblant le nouveau gestionnaire vanilla `LevelEventHandler` pour l'arrêt du disque blanc ;
- conserve les données Ambiance v2 et le protocole réseau 6, sans migration de sauvegarde.
- conserve les données Ambiance v2 et le protocole réseau 6, sans migration de sauvegarde ;
- remplace le JAR Ambiance cassé dans Packwiz et le `.mrpack` partagé client/serveur, sans exiger de nouveau monde ni réinitialiser les sauvegardes.
## `26.2.0-alpha.212`
+2 -2
View File
@@ -22,11 +22,11 @@ Licence : **GNU GPL 3.0 or Later** (`GPL-3.0-or-later`)
Les descriptions FR/EN/RU sont déclarées dans chaque `fabric.mod.json` et dans les fichiers de langue. Les images fournies servent d'icônes Fabric de leur module.
Version courante du pack distribué : **`26.2.0-alpha.212`**. Cette release corrective distribue Sanctuary **`0.0.0-alpha.120`** ; les neuf autres modules conservent leur version issue de l'alpha.211.
Version courante du pack distribué : **`26.2.0-alpha.213`**. Cette release corrective distribue Ambiance **`0.0.0-alpha.16`** ; les neuf autres modules conservent leur version issue de l'alpha.212.
La migration [CANA-01 à CANA-09](CANAPLIA.md) porte Canaplia vers Minecraft 26.2. It's Alive **`0.0.0-alpha.35`** enregistre les seize familles, les découvertes, hybridations, résines, effets serveur et le Livre interdit personnel, partageable temporairement sur un pupitre. Ambiance **`0.0.0-alpha.14`** compose les profils visuels bornés avec ses réglages d'accessibilité, et Only Fun **`0.0.0-alpha.21`** exclut explicitement Canaplia et les raccourcis de progression du Shop.
Lalpha.212 corrige le crash client au démarrage du clic molette du Black Market en ciblant la méthode vanilla Minecraft 26.2 correcte. Les packs Modrinth, Prism et Packwiz sont mis à jour sans exiger de nouveau monde ni réinitialiser les sauvegardes.
Lalpha.213 complète les correctifs de démarrage Minecraft 26.2 : après le clic molette du Black Market corrigé en alpha.212, Ambiance cible désormais `LevelEventHandler` pour arrêter le disque blanc. Les packs Modrinth, Prism et Packwiz sont mis à jour sans exiger de nouveau monde ni réinitialiser les sauvegardes.
Lalpha.207 rend le stockage du coffre-fort pratiquement illimité : rubis, saphirs et émeraudes utilisent chacun un solde 64 bits. Les 27 anciennes piles sont additionnées automatiquement lors du chargement, le Shop continue de consommer directement ces soldes et les 20 % pillés sont crédités dans le coffre-fort de lattaquant sans créer des millions dentités ou de piles dobjets.
+153 -79
View File
@@ -3437,7 +3437,7 @@ tasks.register("verifyProgressivePauseMenuRelease") {
[(locale): new JsonSlurper().parse(file(
"sanctuary/src/main/resources/assets/sanctuary/lang/${locale}.json"))]
}
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| rootProject.onlyfun_version != "0.0.0-alpha.24"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -3487,7 +3487,7 @@ tasks.register("verifyMirrorLavenderDrawerRelease") {
def redStonerRegistry = file(
"redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/registry/RedStonerRegistries.java").text
def drawerRecipe = file("redstoner/src/main/resources/data/redstoner/recipe/drawer.json")
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| rootProject.redstoner_version != "0.0.0-alpha.10"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -4206,7 +4206,7 @@ tasks.register("verifyShopPricingLayoutRelease") {
"pack/migrations/26.2.0-alpha.192-shop-pricing-layout-to-alpha.193.json"))
def release = new JsonSlurper().parse(file("pack/release.json"))
def index = new JsonSlurper().parse(file("pack/prism/modrinth.index.json"))
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.onlyfun_version != "0.0.0-alpha.24"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -4251,7 +4251,7 @@ tasks.register("verifyCuisineCropsRelease") {
def climate = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/ClimateCropForaging.java").text
def rice = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/RiceCropBlock.java").text
def bean = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/BeanCropBlock.java").text
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.itsalive_version != "0.0.0-alpha.36"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
|| migration.source?.pack_version != "26.2.0-alpha.193"
@@ -4300,7 +4300,7 @@ tasks.register("verifyShopCsvBossGatesRelease") {
def bossGate = file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/shop/OnlyFunBossShopGate.java").text
def catalog = file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/shop/OnlyFunShopCatalog.java").text
def offerCatalog = file("sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/shop/ShopOfferCatalog.java").text
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.onlyfun_version != "0.0.0-alpha.24"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -4346,7 +4346,7 @@ tasks.register("verifyCulinaryMailboxGrappleFixesRelease") {
def release = new JsonSlurper().parse(file("pack/release.json"))
def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json"))
def packwiz = file("pack/packwiz/pack.toml").text
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| migration.source?.pack_version != "26.2.0-alpha.195"
|| migration.target?.pack_version != "26.2.0-alpha.196"
|| migration.target?.modules != [
@@ -4364,10 +4364,10 @@ tasks.register("verifyCulinaryMailboxGrappleFixesRelease") {
|| migration.distribution?.jei?.target != "30.26.0.182"
|| migration.compatibility?.save_migration_required != false
|| migration.compatibility?.registry_ids_changed != false
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')) {
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')) {
throw new GradleException("The alpha.196 culinary, mailbox and grapple release contract is incomplete")
}
}
@@ -4392,7 +4392,7 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") {
def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json"))
def packwiz = file("pack/packwiz/pack.toml").text
def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json"))
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.itsalive_version != "0.0.0-alpha.36"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| migration.source?.pack_version != "26.2.0-alpha.196"
@@ -4412,10 +4412,10 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") {
|| migration.distribution?.jei?.target != "30.26.0.186"
|| migration.compatibility?.sanctuary_target_network_protocol != 19
|| sanctuaryManifest.custom?.sanctuary26?.network_protocol != 22
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')) {
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')) {
throw new GradleException("The alpha.197 quest-request and cauldron-batch release contract is incomplete")
}
}
@@ -4442,7 +4442,7 @@ tasks.register("verifyFermentationBarrelAutomationRelease") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def itsAliveManifest = new JsonSlurper().parse(file("itsalive/src/main/resources/fabric.mod.json"))
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.itsalive_version != "0.0.0-alpha.36"
|| migration.source?.pack_version != "26.2.0-alpha.197"
|| migration.target?.pack_version != "26.2.0-alpha.198"
@@ -4461,10 +4461,10 @@ tasks.register("verifyFermentationBarrelAutomationRelease") {
|| migration.distribution?.packwiz_index_refreshed != true
|| itsAliveManifest.custom?.sanctuary26?.data_version != 3
|| itsAliveManifest.custom?.sanctuary26?.network_protocol != 4
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.36.jar"')) {
throw new GradleException("The alpha.198 fermentation barrel release contract is incomplete")
}
@@ -4492,7 +4492,7 @@ tasks.register("verifyQuestRequestContractsRelease") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json"))
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.itsalive_version != "0.0.0-alpha.36"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| migration.source?.pack_version != "26.2.0-alpha.198"
@@ -4506,10 +4506,10 @@ tasks.register("verifyQuestRequestContractsRelease") {
|| migration.quest_request_contracts?.chat_accept_revalidates_distance_owner_sign_and_claim != true
|| migration.compatibility?.sanctuary_target_network_protocol != 20
|| sanctuaryManifest.custom?.sanctuary26?.network_protocol != 22
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.36.jar"')
|| !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.120.jar"')) {
throw new GradleException("The alpha.199 quest-request contract release is incomplete")
@@ -4547,7 +4547,7 @@ tasks.register("verifyWeatherTntAmbianceRelease") {
def ambianceManifest = new JsonSlurper().parse(file("ambiance/src/main/resources/fabric.mod.json"))
def ouchManifest = new JsonSlurper().parse(file("ouch/src/main/resources/fabric.mod.json"))
def rootBuild = file("build.gradle").text
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.ambiance_version != "0.0.0-alpha.16"
|| rootProject.ouch_version != "0.0.0-alpha.10"
|| migration.source?.pack_version != "26.2.0-alpha.199"
@@ -4581,11 +4581,11 @@ tasks.register("verifyWeatherTntAmbianceRelease") {
|| !weatherTnt.contains("AmbianceDailyWeather.CLEAR")
|| !weatherTnt.contains("CLEAR_WEATHER_TICKS = 864_000")
|| weatherTnt.contains("setWeatherParameters")
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.15.jar"')
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.16.jar"')
|| !packwizIndex.contains('file = "mods/ouch-0.0.0-alpha.10.jar"')) {
throw new GradleException("The alpha.200 Weather TNT and Ambiance release is incomplete")
}
@@ -4613,7 +4613,7 @@ tasks.register("verifyQuestRequestEscrowRelease") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json"))
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| migration.source?.pack_version != "26.2.0-alpha.200"
|| migration.source?.modules?.sanctuary != "0.0.0-alpha.115"
@@ -4628,10 +4628,10 @@ tasks.register("verifyQuestRequestEscrowRelease") {
|| migration.compatibility?.sanctuary_target_network_protocol != 21
|| sanctuaryManifest.custom?.sanctuary26?.data_version != 11
|| sanctuaryManifest.custom?.sanctuary26?.network_protocol != 22
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.120.jar"')) {
throw new GradleException("The alpha.201 quest-request escrow release is incomplete")
}
@@ -4667,7 +4667,7 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") {
"iliketomoveit/src/main/resources/fabric.mod.json"))
def sanctuaryManifest = new JsonSlurper().parse(file(
"sanctuary/src/main/resources/fabric.mod.json"))
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| rootProject.itsalive_version != "0.0.0-alpha.36"
|| rootProject.iliketomoveit_version != "0.0.0-alpha.15"
@@ -4707,10 +4707,10 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") {
|| moveItManifest.custom?.sanctuary26?.network_protocol != 5
|| sanctuaryManifest.custom?.sanctuary26?.data_version != 11
|| sanctuaryManifest.custom?.sanctuary26?.network_protocol != 22
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.55.jar"')
|| !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.36.jar"')
|| !packwizIndex.contains('file = "mods/iliketomoveit-0.0.0-alpha.15.jar"')
@@ -4827,7 +4827,7 @@ tasks.register("verifySafeVaultFeature") {
def image = javax.imageio.ImageIO.read(file("anotherworld/src/main/resources/assets/anotherworld/textures/${path}"))
image == null || image.width != size[0] || image.height != size[1]
}.keySet()
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| migration.schema_version != 1
@@ -5019,7 +5019,7 @@ tasks.register("verifySafeVaultInterfaceAlpha203Release") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.28.0.193.jar" }
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| migration.source?.pack_version != "26.2.0-alpha.202"
|| migration.source?.modules != [anotherworld: "0.0.0-alpha.50"]
@@ -5037,9 +5037,9 @@ tasks.register("verifySafeVaultInterfaceAlpha203Release") {
|| migration.distribution?.jei?.modrinth_version_id != "XXTFqqwG"
|| migration.distribution?.jei?.prism_manifest_updated != true
|| release.pack_version != rootProject.pack_version
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.55.jar"')
|| packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.50.jar"')
|| jeiFiles.size() != 1
@@ -5065,7 +5065,7 @@ tasks.register("verifySafeVaultFixAlpha204Release") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.28.0.193.jar" }
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| migration.source?.pack_version != "26.2.0-alpha.203"
|| migration.source?.modules != [anotherworld: "0.0.0-alpha.51"]
@@ -5091,9 +5091,9 @@ tasks.register("verifySafeVaultFixAlpha204Release") {
|| migration.distribution?.jei?.modrinth_version_id != "OcMayhUH"
|| migration.distribution?.jei?.prism_manifest_updated != true
|| release.pack_version != rootProject.pack_version
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.55.jar"')
|| packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.51.jar"')
|| jeiFiles.size() != 1
@@ -5119,7 +5119,7 @@ tasks.register("verifySafeVaultCubeAlpha205Release") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.28.0.193.jar" }
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| migration.source?.pack_version != "26.2.0-alpha.204"
|| migration.source?.modules != [anotherworld: "0.0.0-alpha.52"]
@@ -5148,9 +5148,9 @@ tasks.register("verifySafeVaultCubeAlpha205Release") {
|| migration.distribution?.jei?.modrinth_version_id != "NtfJDMhk"
|| migration.distribution?.jei?.prism_manifest_updated != true
|| release.pack_version != rootProject.pack_version
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.55.jar"')
|| packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.52.jar"')
|| jeiFiles.size() != 1
@@ -5177,7 +5177,7 @@ tasks.register("verifySafeVaultCtmAlpha206Release") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.28.0.193.jar" }
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| migration.source?.pack_version != "26.2.0-alpha.205"
|| migration.source?.modules != [anotherworld: "0.0.0-alpha.53"]
@@ -5200,9 +5200,9 @@ tasks.register("verifySafeVaultCtmAlpha206Release") {
|| migration.compatibility?.pack_release_updated != true
|| migration.distribution?.packwiz_index_refreshed != true
|| release.pack_version != rootProject.pack_version
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.55.jar"')
|| packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.53.jar"')
|| jeiFiles.size() != 1
@@ -5229,7 +5229,7 @@ tasks.register("verifySafeVaultUnlimitedAlpha207Release") {
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.28.0.193.jar" }
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.anotherworld_version != "0.0.0-alpha.55"
|| migration.source?.pack_version != "26.2.0-alpha.206"
|| migration.source?.modules != [anotherworld: "0.0.0-alpha.54"]
@@ -5259,9 +5259,9 @@ tasks.register("verifySafeVaultUnlimitedAlpha207Release") {
|| migration.compatibility?.pack_release_updated != true
|| migration.distribution?.packwiz_index_refreshed != true
|| release.pack_version != rootProject.pack_version
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.55.jar"')
|| packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.54.jar"')
|| jeiFiles.size() != 1
@@ -5317,7 +5317,7 @@ tasks.register("verifyCanapliaFoundation") {
"itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/ItsAliveMod.java").text
def visualApiSource = file(
"ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/api/visual/AmbianceVisualEffectApi.java").text
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.itsalive_version != "0.0.0-alpha.36"
|| rootProject.ambiance_version != "0.0.0-alpha.16"
|| migration.issue != 35
@@ -5569,7 +5569,7 @@ tasks.register("verifyCanapliaAlpha209Release") {
ambiance: "0.0.0-alpha.14",
itsalive: "0.0.0-alpha.33",
onlyfun: "0.0.0-alpha.20"]
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.ambiance_version != "0.0.0-alpha.16"
|| rootProject.itsalive_version != "0.0.0-alpha.36"
|| rootProject.onlyfun_version != "0.0.0-alpha.24"
@@ -5617,10 +5617,10 @@ tasks.register("verifyCanapliaAlpha209Release") {
|| fixMigration.compatibility?.network_protocol_changed != false
|| fixMigration.distribution?.pack_release_updated != true
|| release.pack_version != rootProject.pack_version
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.15.jar"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.16.jar"')
|| !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.36.jar"')
|| !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.24.jar"')
|| packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.12.jar"')
@@ -5670,7 +5670,7 @@ tasks.register("verifyAlpha210Release") {
iliketomoveit: "0.0.0-alpha.15",
itsalive: "0.0.0-alpha.35"]
def currentModules = [
ambiance: "0.0.0-alpha.15",
ambiance: "0.0.0-alpha.16",
sanctuary: "0.0.0-alpha.120",
onlyfun: "0.0.0-alpha.24",
ouch: "0.0.0-alpha.10",
@@ -5687,7 +5687,7 @@ tasks.register("verifyAlpha210Release") {
def jeiFiles = prism.files.findAll {
it.path == "mods/jei-26.2-fabric-30.28.0.193.jar"
}
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| rootProject.onlyfun_version != "0.0.0-alpha.24"
|| rootProject.iliketomoveit_version != expectedTarget.iliketomoveit
@@ -5733,10 +5733,10 @@ tasks.register("verifyAlpha210Release") {
|| manifests.iliketomoveit.custom?.sanctuary26?.network_protocol != 5
|| manifests.itsalive.custom?.sanctuary26?.data_version != 3
|| manifests.itsalive.custom?.sanctuary26?.network_protocol != 4
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| requiredJars.any { !packwizIndex.contains(it) }
|| obsoleteJars.any { packwizIndex.contains(it) }
|| jeiFiles.size() != 1
@@ -5782,7 +5782,9 @@ tasks.register("verifyAlpha211Release") {
onlyfun: "0.0.0-alpha.24",
ouch: "0.0.0-alpha.10",
sanctuary: "0.0.0-alpha.119"]
def currentModules = expectedTarget + [sanctuary: "0.0.0-alpha.120"]
def currentModules = expectedTarget + [
sanctuary: "0.0.0-alpha.120",
ambiance: "0.0.0-alpha.16"]
def workspaceModules = currentModules + [ambiance: "0.0.0-alpha.16"]
def expectedDataVersions = [ambiance: 2, itsalive: 3, onlyfun: 2, ouch: 1, sanctuary: 11]
def expectedProtocols = [ambiance: 6, itsalive: 4, onlyfun: 3, ouch: 1, sanctuary: 22]
@@ -5808,7 +5810,7 @@ tasks.register("verifyAlpha211Release") {
def jeiFiles = prism.files.findAll {
it.path == "mods/jei-26.2-fabric-30.28.0.193.jar"
}
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| workspaceModules.any { id, version -> rootProject.property("${id}_version") != version }
|| migration.source?.pack_version != "26.2.0-alpha.210"
|| migration.source?.modules != expectedSource
@@ -5836,9 +5838,9 @@ tasks.register("verifyAlpha211Release") {
|| migration.distribution?.prism_modrinth_index_updated != true
|| migration.distribution?.shared_client_server_mrpack != true
|| release.pack_version != rootProject.pack_version
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| requiredJars.any { !packwizIndex.contains(it) }
|| obsoleteJars.any { packwizIndex.contains(it) }
|| prism.files?.size() != 5
@@ -5846,7 +5848,7 @@ tasks.register("verifyAlpha211Release") {
|| jeiFiles[0].hashes?.sha1 != "494f9dc787d6c9cd9d32793da2784ab16834faf3"
|| jeiFiles[0].hashes?.sha512 != "0869f4d5840a732a04bedc7684b40140f087f3d759066c206d9d1ec710007f7c9585e4f5ebb04f10e56bef1cf2eddc6978bb2b2c93541cff5fcf7e1609859468"
|| !changelog.contains("## `26.2.0-alpha.211`")
|| !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.212`**")) {
|| !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.213`**")) {
throw new GradleException("The alpha.211 Abjection and gameplay-polish release is incomplete")
}
}
@@ -5880,7 +5882,7 @@ tasks.register("verifyAlpha212Release") {
def jeiFiles = prism.files.findAll {
it.path == "mods/jei-26.2-fabric-30.28.0.193.jar"
}
if (rootProject.pack_version != "26.2.0-alpha.212"
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.sanctuary_version != "0.0.0-alpha.120"
|| migration.source?.pack_version != "26.2.0-alpha.211"
|| migration.source?.modules != [sanctuary: "0.0.0-alpha.119"]
@@ -5902,21 +5904,93 @@ tasks.register("verifyAlpha212Release") {
|| manifest.custom?.sanctuary26?.data_version != 11
|| manifest.custom?.sanctuary26?.network_protocol != 22
|| !minecraftMixin.contains('method = "pickBlockOrEntity"')
|| release.pack_version != "26.2.0-alpha.212"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.212.mrpack"
|| prism.versionId != "26.2.0-alpha.212"
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| prism.files?.size() != 5
|| jeiFiles.size() != 1
|| !packwiz.contains('version = "26.2.0-alpha.212"')
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.120.jar"')
|| packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.119.jar"')
|| !changelog.contains("## `26.2.0-alpha.212`")
|| !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.212`**")) {
|| !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.213`**")) {
throw new GradleException("The alpha.212 Black Market startup-fix release is incomplete")
}
}
}
tasks.register("verifyAlpha213Release") {
group = "verification"
description = "Checks the Sanctuary 26.2.0-alpha.213 Ambiance startup fix release."
inputs.file(file("pack/migrations/26.2.0-alpha.212-ambiance-level-event-fix-to-alpha.213.json"))
inputs.file(file("pack/release.json"))
inputs.file(file("pack/prism/modrinth.index.json"))
inputs.file(file("pack/packwiz/pack.toml"))
inputs.file(file("pack/packwiz/index.toml"))
inputs.file(file("CHANGELOG.md"))
inputs.file(file("README.md"))
inputs.file(file("ambiance/src/main/resources/fabric.mod.json"))
inputs.file(file(
"ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/mixin/client/LevelEventHandlerMixin.java"))
doLast {
def migration = new JsonSlurper().parse(file(
"pack/migrations/26.2.0-alpha.212-ambiance-level-event-fix-to-alpha.213.json"))
def release = new JsonSlurper().parse(file("pack/release.json"))
def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json"))
def packwiz = file("pack/packwiz/pack.toml").text
def packwizIndex = file("pack/packwiz/index.toml").text
def changelog = file("CHANGELOG.md").text
def readme = file("README.md").text
def manifest = new JsonSlurper().parse(file("ambiance/src/main/resources/fabric.mod.json"))
def levelEventMixin = file(
"ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/mixin/client/LevelEventHandlerMixin.java").text
def jeiFiles = prism.files.findAll {
it.path == "mods/jei-26.2-fabric-30.28.0.193.jar"
}
if (rootProject.pack_version != "26.2.0-alpha.213"
|| rootProject.ambiance_version != "0.0.0-alpha.16"
|| migration.source?.pack_version != "26.2.0-alpha.212"
|| migration.source?.modules != [ambiance: "0.0.0-alpha.15"]
|| migration.target?.pack_version != "26.2.0-alpha.213"
|| migration.target?.modules != [ambiance: "0.0.0-alpha.16"]
|| migration.features?.white_disc_stop_event_preserved != true
|| migration.features?.minecraft_mixin_target_class != "LevelEventHandler"
|| migration.features?.minecraft_mixin_target_method != "levelEvent"
|| migration.features?.client_startup_crash_fixed != true
|| migration.compatibility?.new_world_required != false
|| migration.compatibility?.save_reset_required != false
|| migration.compatibility?.existing_saves_supported != true
|| migration.compatibility?.registry_ids_changed != false
|| migration.compatibility?.ambiance_data_version != 2
|| migration.compatibility?.ambiance_network_protocol != 6
|| migration.distribution?.pack_release_updated != true
|| migration.distribution?.packwiz_index_refreshed != true
|| migration.distribution?.prism_modrinth_index_updated != true
|| migration.distribution?.shared_client_server_mrpack != true
|| manifest.custom?.sanctuary26?.data_version != 2
|| manifest.custom?.sanctuary26?.network_protocol != 6
|| !levelEventMixin.contains('@Mixin(LevelEventHandler.class)')
|| !levelEventMixin.contains('@Inject(method = "levelEvent"')
|| release.pack_version != "26.2.0-alpha.213"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.213.mrpack"
|| prism.versionId != "26.2.0-alpha.213"
|| prism.files?.size() != 5
|| jeiFiles.size() != 1
|| !packwiz.contains('version = "26.2.0-alpha.213"')
|| !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.16.jar"')
|| packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.15.jar"')
|| !changelog.contains("## `26.2.0-alpha.213`")
|| changelog.contains("## Modifications non distribuées")
|| !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.213`**")) {
throw new GradleException("The alpha.213 Ambiance startup-fix release is incomplete")
}
}
}
tasks.named("verifyWorkspace") {
dependsOn tasks.named("verifyAlpha213Release")
}
tasks.named("check") {
dependsOn tasks.named("verifyWorkspace")
dependsOn tasks.named("verifyTransport")
+1 -1
View File
@@ -30,5 +30,5 @@ onlyfun_version=0.0.0-alpha.24
onlyfun_lifecycle=active
sanctuary_version=0.0.0-alpha.120
sanctuary_lifecycle=active
pack_version=26.2.0-alpha.212
pack_version=26.2.0-alpha.213
maven_group=fr.koka99cab.sanctuary26
@@ -0,0 +1,35 @@
{
"schema_version": 1,
"source": {
"pack_version": "26.2.0-alpha.212",
"modules": {
"ambiance": "0.0.0-alpha.15"
}
},
"target": {
"pack_version": "26.2.0-alpha.213",
"modules": {
"ambiance": "0.0.0-alpha.16"
}
},
"features": {
"white_disc_stop_event_preserved": true,
"minecraft_mixin_target_class": "LevelEventHandler",
"minecraft_mixin_target_method": "levelEvent",
"client_startup_crash_fixed": true
},
"compatibility": {
"new_world_required": false,
"save_reset_required": false,
"existing_saves_supported": true,
"registry_ids_changed": false,
"ambiance_data_version": 2,
"ambiance_network_protocol": 6
},
"distribution": {
"pack_release_updated": true,
"packwiz_index_refreshed": true,
"prism_modrinth_index_updated": true,
"shared_client_server_mrpack": true
}
}
+11 -11
View File
@@ -13,16 +13,16 @@ file = "instance-icon.png"
hash = "41f4f4c88c71d0a23446d5014f7407d55ad477441847099cad24492b032335a0"
[[files]]
file = "mods/ambiance-0.0.0-alpha.15.jar"
hash = "384f49a23c3c84912a307a87955ce9c3c6853a1aa50d3e09435aac28f40e84bd"
file = "mods/ambiance-0.0.0-alpha.16.jar"
hash = "8d9648e20680eed0a524cd7b2891a4ca0f39aea0085d8e71f99c2ccd52a69f16"
[[files]]
file = "mods/anotherworld-0.0.0-alpha.55.jar"
hash = "577d947c22e2dc7ec803d69db822cdd04bc17d2ec2c853ea547ea7ea7a30fea1"
hash = "19bcaf776844d2a668d3a897a4649ad879e61928b7b11e26d22235f8c92c23ca"
[[files]]
file = "mods/events-0.0.0-alpha.0.jar"
hash = "a30b89ea07fb1c3c9c3b73a19fd571c54de3053a4a1a64ce42750725b6a2ea9f"
hash = "23019bd3e8d93a96d5a850621b62198527a62cab9eb2e56a5a55f3fa5f3b5eb3"
[[files]]
file = "mods/fabric-api.pw.toml"
@@ -31,7 +31,7 @@ metafile = true
[[files]]
file = "mods/iliketomoveit-0.0.0-alpha.15.jar"
hash = "65c9bbc5b954481c15b990ba9940303e50dbe2c584de8828a1612530e6504970"
hash = "e1a2ab1689d7294aa95ae8460e107a115dad2adf7c0f479caa397f9a7c372d29"
[[files]]
file = "mods/iris.pw.toml"
@@ -40,7 +40,7 @@ metafile = true
[[files]]
file = "mods/itsalive-0.0.0-alpha.36.jar"
hash = "53f490e94ccad60cdf3600782c58e9ce70d00b6c8ec2474d11fe83cdba7dc5e9"
hash = "43c403d65a37e90ba0ffbeb4fc161eeb1f1b9ff2e7de92d1494ca5b605bf0fea"
[[files]]
file = "mods/jei.pw.toml"
@@ -49,23 +49,23 @@ metafile = true
[[files]]
file = "mods/masterkey-0.0.0-alpha.8.jar"
hash = "cb33d1606f5348466817beabfa8b85b67ee65ef5fc13c419207d2cb07ee8d54a"
hash = "5cc7b4421dbcb0468829f5ac277e55252ccb8b5f31a700dae97d0bead25e44f9"
[[files]]
file = "mods/onlyfun-0.0.0-alpha.24.jar"
hash = "8020a1b4fa3bad0cde90c9078b09f6b63fbb4e97b63b04819701cbab2d610e30"
hash = "b3db80d88f2c7995bd2442147d64ba1eb421264652ebf64912a4a10cd3892a43"
[[files]]
file = "mods/ouch-0.0.0-alpha.10.jar"
hash = "e78edeb2c01fadeb578cb38ccbc28a0cf6b01da2e1432465187de881d7a79b30"
hash = "875fe0b421418eafdb3abaf20d2cb73d6dd833decdf3646f86c7cf3bb54c435f"
[[files]]
file = "mods/redstoner-0.0.0-alpha.10.jar"
hash = "920f7dcb95626d88be96aa02b509acd369b6434fdf4efdaa43e25201a910a149"
hash = "9d775fa8927dacad4d2029720b7bb3c49fb18f51155c312492e9856f8bcaecda"
[[files]]
file = "mods/sanctuary-0.0.0-alpha.120.jar"
hash = "63fbc831c12ae6ca92644c1e0800a47fb69ca454356e3cbf3625e7b0044bd0ef"
hash = "f5771e8e6c5eb21a7aacb71f20be281d946469d68c3848ecfc25a08824be8576"
[[files]]
file = "mods/simple-voice-chat.pw.toml"
+2 -2
View File
@@ -1,12 +1,12 @@
name = "Sanctuary 26.2"
author = "KOKA99CAB"
version = "26.2.0-alpha.212"
version = "26.2.0-alpha.213"
pack-format = "packwiz:1.1.0"
[index]
file = "index.toml"
hash-format = "sha256"
hash = "098c8803eddeaeff930a7aa35ec7a083d2a80efebb1387bcdad046560db010ba"
hash = "bb86c998a237d1cfd5d4577ee8c7669618b1af2323b57648f32432d9769b5069"
[versions]
fabric = "0.19.3"
+1 -1
View File
@@ -3,7 +3,7 @@
"game": "minecraft",
"name": "Sanctuary 26.2",
"summary": "Sanctuary 26.2 — progression, exploration, worldgen and multiplayer systems by KOKA99CAB.",
"versionId": "26.2.0-alpha.212",
"versionId": "26.2.0-alpha.213",
"files": [
{
"path": "mods/fabric-api-0.158.0+26.2.jar",
+2 -2
View File
@@ -1,6 +1,6 @@
{
"schema_version": 1,
"pack_version": "26.2.0-alpha.212",
"pack_version": "26.2.0-alpha.213",
"release_channel": "alpha",
"minecraft_version": "26.2",
"fabric_loader_version": "0.19.3",
@@ -9,7 +9,7 @@
"project_id": "FgOqyAXd",
"project_slug": "sanctuary-koka99",
"project_url": "https://modrinth.com/modpack/sanctuary-koka99",
"primary_file": "sanctuary-26.2.0-alpha.212.mrpack",
"primary_file": "sanctuary-26.2.0-alpha.213.mrpack",
"shared_client_server_pack": true,
"update_owner": "packwiz-installer",
"check_on_launch": true,