diff --git a/CHANGELOG.md b/CHANGELOG.md index 2107744..c80aff8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ 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. -## Non publié +## `26.2.0-alpha.228` Modules modifiés : **Sanctuary `0.0.0-alpha.132`** et **Red-Stoner `0.0.0-alpha.15`**. diff --git a/README.md b/README.md index 66e31a4..6fcb106 100644 --- a/README.md +++ b/README.md @@ -22,9 +22,9 @@ 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.227`**. Cette release distribue Another World **`0.0.0-alpha.57`** et Sanctuary **`0.0.0-alpha.131`** ; les huit autres modules conservent leur version issue de l'alpha.226. +Version courante du pack distribué : **`26.2.0-alpha.228`**. Cette release distribue Red-Stoner **`0.0.0-alpha.15`** et Sanctuary **`0.0.0-alpha.132`** ; les huit autres modules conservent leur version issue de l'alpha.227. -Le prochain module Sanctuary **`0.0.0-alpha.132`** reconstruit la Backroom sur cinq niveaux empilés entre Y -64 et Y 383. Le monde devient entièrement noir et sans monstres ; l’arrivée est signalée par une torche récupérable. Les nouveaux chunks composent seuils modulaires, bibliothèques et bureaux, ville dense avec autoroutes et parcs, couloirs techniques, puis une grille 3D et un labyrinthe connecté dont certains trous mènent au vide. Les chunks déjà générés restent intacts. +L’alpha.228 reconstruit la Backroom sur cinq niveaux empilés entre Y -64 et Y 383. Le monde devient entièrement noir et sans monstres ; l’arrivée est signalée par une torche récupérable. Les nouveaux chunks composent seuils modulaires, bibliothèques et bureaux, ville dense avec autoroutes et parcs, couloirs techniques, puis une grille 3D et un labyrinthe connecté dont certains trous mènent au vide. Red-Stoner corrige aussi le focus du terminal et permet de retrouver une boîte de Shulker par son contenu. Les chunks déjà générés et les sauvegardes existantes restent compatibles. L’alpha.227 ajoute la dimension persistante `sanctuary:backroom`. On y entre accroupi devant un lit et on n’en ressort que par un lit. L’équipement d’entrée est transféré atomiquement vers la Mailbox, tandis que les objets perdus ou abandonnés dans la dimension alimentent des coffres renouvelables sans duplication. Les anciennes sauvegardes sont migrées vers Sanctuary data v14 sans réinitialisation ; le protocole réseau reste en version 24. diff --git a/build.gradle b/build.gradle index ed16fd6..97e477f 100644 --- a/build.gradle +++ b/build.gradle @@ -2918,7 +2918,7 @@ tasks.register("verifyNotchEncounter") { || rootProject.ouch_version != "0.0.0-alpha.11" || rootProject.sanctuary_version != "0.0.0-alpha.132" || rootProject.masterkey_version != "0.0.0-alpha.9" - || rootProject.pack_version != "26.2.0-alpha.227" + || rootProject.pack_version != "26.2.0-alpha.228" || manifests.itsalive.custom?.sanctuary26?.data_version != 4 || manifests.sanctuary.custom?.sanctuary26?.data_version != 14 || manifests.ouch.depends?.itsalive != ">=0.0.0-alpha.37" @@ -3007,7 +3007,7 @@ tasks.register("verifyMagicCarpet") { "iliketomoveit/src/main/resources/assets/iliketomoveit/models/item/magic_carpet.json")) def carpetTexture = file( "iliketomoveit/src/main/resources/assets/iliketomoveit/textures/item/magic_carpet.png") - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.sanctuary_version != "0.0.0-alpha.132" @@ -3640,7 +3640,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.sanctuary_version != "0.0.0-alpha.132" || rootProject.onlyfun_version != "0.0.0-alpha.27" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -3690,7 +3690,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || rootProject.redstoner_version != "0.0.0-alpha.15" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -4482,7 +4482,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.sanctuary_version != "0.0.0-alpha.132" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -4527,7 +4527,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.itsalive_version != "0.0.0-alpha.38" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version || migration.source?.pack_version != "26.2.0-alpha.193" @@ -4576,7 +4576,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.sanctuary_version != "0.0.0-alpha.132" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -4623,7 +4623,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || migration.source?.pack_version != "26.2.0-alpha.195" || migration.target?.pack_version != "26.2.0-alpha.196" || migration.target?.modules != [ @@ -4641,10 +4641,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.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"')) { + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"')) { throw new GradleException("The alpha.196 culinary, mailbox and grapple release contract is incomplete") } } @@ -4669,7 +4669,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.source?.pack_version != "26.2.0-alpha.196" @@ -4689,10 +4689,10 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") { || migration.distribution?.jei?.target != "30.26.0.186" || migration.compatibility?.sanctuary_target_network_protocol != 19 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"')) { + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"')) { throw new GradleException("The alpha.197 quest-request and cauldron-batch release contract is incomplete") } } @@ -4719,7 +4719,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.itsalive_version != "0.0.0-alpha.38" || migration.source?.pack_version != "26.2.0-alpha.197" || migration.target?.pack_version != "26.2.0-alpha.198" @@ -4738,10 +4738,10 @@ tasks.register("verifyFermentationBarrelAutomationRelease") { || migration.distribution?.packwiz_index_refreshed != true || itsAliveManifest.custom?.sanctuary26?.data_version != 4 || itsAliveManifest.custom?.sanctuary26?.network_protocol != 4 - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"')) { throw new GradleException("The alpha.198 fermentation barrel release contract is incomplete") } @@ -4769,7 +4769,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.source?.pack_version != "26.2.0-alpha.198" @@ -4783,12 +4783,12 @@ 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 != 24 - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') - || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"')) { + || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.jar"')) { throw new GradleException("The alpha.199 quest-request contract release is incomplete") } } @@ -4824,7 +4824,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || rootProject.ouch_version != "0.0.0-alpha.11" || migration.source?.pack_version != "26.2.0-alpha.199" @@ -4858,10 +4858,10 @@ tasks.register("verifyWeatherTntAmbianceRelease") { || !weatherTnt.contains("AmbianceDailyWeather.CLEAR") || !weatherTnt.contains("CLEAR_WEATHER_TICKS = 864_000") || weatherTnt.contains("setWeatherParameters") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || !packwizIndex.contains('file = "mods/ouch-0.0.0-alpha.11.jar"')) { throw new GradleException("The alpha.200 Weather TNT and Ambiance release is incomplete") @@ -4890,7 +4890,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.source?.pack_version != "26.2.0-alpha.200" || migration.source?.modules?.sanctuary != "0.0.0-alpha.115" @@ -4905,11 +4905,11 @@ tasks.register("verifyQuestRequestEscrowRelease") { || migration.compatibility?.sanctuary_target_network_protocol != 21 || sanctuaryManifest.custom?.sanctuary26?.data_version != 14 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') - || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"')) { + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') + || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.jar"')) { throw new GradleException("The alpha.201 quest-request escrow release is incomplete") } } @@ -4944,7 +4944,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" @@ -4984,14 +4984,14 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") { || moveItManifest.custom?.sanctuary26?.network_protocol != 5 || sanctuaryManifest.custom?.sanctuary26?.data_version != 14 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.57.jar"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') || !packwizIndex.contains('file = "mods/iliketomoveit-0.0.0-alpha.18.jar"') - || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"')) { + || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.jar"')) { throw new GradleException("The alpha.202 Waystone, Shop and culinary lectern release is incomplete") } } @@ -5104,7 +5104,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.schema_version != 1 @@ -5296,7 +5296,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.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || migration.source?.pack_version != "26.2.0-alpha.202" || migration.source?.modules != [anotherworld: "0.0.0-alpha.50"] @@ -5314,9 +5314,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.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.57.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.50.jar"') || jeiFiles.size() != 1 @@ -5342,7 +5342,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.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || migration.source?.pack_version != "26.2.0-alpha.203" || migration.source?.modules != [anotherworld: "0.0.0-alpha.51"] @@ -5368,9 +5368,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.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.57.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.51.jar"') || jeiFiles.size() != 1 @@ -5396,7 +5396,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.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || migration.source?.pack_version != "26.2.0-alpha.204" || migration.source?.modules != [anotherworld: "0.0.0-alpha.52"] @@ -5425,9 +5425,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.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.57.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.52.jar"') || jeiFiles.size() != 1 @@ -5454,7 +5454,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.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || migration.source?.pack_version != "26.2.0-alpha.205" || migration.source?.modules != [anotherworld: "0.0.0-alpha.53"] @@ -5477,9 +5477,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.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.57.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.53.jar"') || jeiFiles.size() != 1 @@ -5506,7 +5506,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.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || migration.source?.pack_version != "26.2.0-alpha.206" || migration.source?.modules != [anotherworld: "0.0.0-alpha.54"] @@ -5536,9 +5536,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.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.57.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.54.jar"') || jeiFiles.size() != 1 @@ -5594,7 +5594,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.issue != 35 @@ -5846,7 +5846,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.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.onlyfun_version != "0.0.0-alpha.27" @@ -5894,9 +5894,9 @@ 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.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') || !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.27.jar"') @@ -5948,7 +5948,7 @@ tasks.register("verifyAlpha210Release") { itsalive: "0.0.0-alpha.35"] def currentModules = [ ambiance: "0.0.0-alpha.22", - sanctuary: "0.0.0-alpha.131", + sanctuary: "0.0.0-alpha.132", onlyfun: "0.0.0-alpha.27", ouch: "0.0.0-alpha.11", masterkey: "0.0.0-alpha.9", @@ -5965,7 +5965,7 @@ tasks.register("verifyAlpha210Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.sanctuary_version != "0.0.0-alpha.132" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" @@ -6011,10 +6011,10 @@ tasks.register("verifyAlpha210Release") { || manifests.iliketomoveit.custom?.sanctuary26?.network_protocol != 5 || manifests.itsalive.custom?.sanctuary26?.data_version != 4 || manifests.itsalive.custom?.sanctuary26?.network_protocol != 4 - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || jeiFiles.size() != 1 @@ -6061,7 +6061,7 @@ tasks.register("verifyAlpha211Release") { ouch: "0.0.0-alpha.10", sanctuary: "0.0.0-alpha.119"] def currentModules = expectedTarget + [ - sanctuary: "0.0.0-alpha.131", + sanctuary: "0.0.0-alpha.132", onlyfun: "0.0.0-alpha.27", ambiance: "0.0.0-alpha.22", iliketomoveit: "0.0.0-alpha.18", @@ -6095,7 +6095,7 @@ tasks.register("verifyAlpha211Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.source?.pack_version != "26.2.0-alpha.210" || migration.source?.modules != expectedSource @@ -6123,9 +6123,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.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || prism.files?.size() != 5 @@ -6133,7 +6133,7 @@ tasks.register("verifyAlpha211Release") { || jeiFiles[0].hashes?.sha1 != "1d6ab9269be16f85fb13a34a36b34ad07a9b32a7" || jeiFiles[0].hashes?.sha512 != "2849ff6a4cc91822798f0c70e7749c298b911c1037fc74e9ab0881734b8d5cb6507fb3169b4a240ef6c37eb6f7c573794c46073ff352f160feee245233b2abe5" || !changelog.contains("## `26.2.0-alpha.211`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.211 Abjection and gameplay-polish release is incomplete") } } @@ -6167,7 +6167,7 @@ tasks.register("verifyAlpha212Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.source?.pack_version != "26.2.0-alpha.211" || migration.source?.modules != [sanctuary: "0.0.0-alpha.119"] @@ -6189,16 +6189,16 @@ tasks.register("verifyAlpha212Release") { || manifest.custom?.sanctuary26?.data_version != 14 || manifest.custom?.sanctuary26?.network_protocol != 24 || !minecraftMixin.contains('method = "pickBlockOrEntity"') - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" || prism.files?.size() != 5 || jeiFiles.size() != 1 - || !packwiz.contains('version = "26.2.0-alpha.227"') - || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"') + || !packwiz.contains('version = "26.2.0-alpha.228"') + || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.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.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.212 Black Market startup-fix release is incomplete") } } @@ -6232,7 +6232,7 @@ tasks.register("verifyAlpha213Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.212" || migration.source?.modules != [ambiance: "0.0.0-alpha.15"] @@ -6256,16 +6256,16 @@ tasks.register("verifyAlpha213Release") { || manifest.custom?.sanctuary26?.network_protocol != 6 || !levelEventMixin.contains('@Mixin(LevelEventHandler.class)') || !levelEventMixin.contains('@Inject(method = "levelEvent"') - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" || prism.files?.size() != 5 || jeiFiles.size() != 1 - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.15.jar"') || !changelog.contains("## `26.2.0-alpha.213`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.213 Ambiance startup-fix release is incomplete") } } @@ -6300,7 +6300,7 @@ tasks.register("verifyAlpha214Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscAudioPlayer.java").text def urlSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/white_disc/WhiteDiscUrlSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.213" || migration.source?.modules != [ambiance: "0.0.0-alpha.16"] @@ -6329,16 +6329,16 @@ tasks.register("verifyAlpha214Release") { || !audioPlayer.contains('message.ambiance.white_disc.loading') || !audioPlayer.contains('message.ambiance.white_disc.failed') || !urlSmoke.contains("https://youtu.be/Ue5ZBe-GzSM?si=78LSbtBQzUYzhA2Y") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" || prism.files?.size() != 5 - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.16.jar"') || !changelog.contains("## `26.2.0-alpha.214`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.214 white-disc solo synchronization release is incomplete") } } @@ -6379,7 +6379,7 @@ tasks.register("verifyAlpha215Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStream.java").text def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.214" || migration.source?.modules != [ambiance: "0.0.0-alpha.17"] @@ -6419,16 +6419,16 @@ tasks.register("verifyAlpha215Release") { || !playbackSmoke.contains("https://www.youtube.com/watch?v=Ue5ZBe-GzSM") || !playbackSmoke.contains("stream.paddedSilenceBytes() != 0L") || !playbackSmoke.contains("stream.decodedTimelineMillis() != 4_000L") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" || prism.files?.size() != 5 - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.17.jar"') || !changelog.contains("## `26.2.0-alpha.215`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.215 resilient white-disc playback release is incomplete") } } @@ -6473,7 +6473,7 @@ tasks.register("verifyAlpha216Release") { "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStreamSmoke.java").text def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.215" || migration.source?.modules != [ambiance: "0.0.0-alpha.18"] @@ -6517,16 +6517,16 @@ tasks.register("verifyAlpha216Release") { || !playbackSmoke.contains("stream.paddedSilenceBytes() != 0L") || !playbackSmoke.contains("stream.decodedTimelineMillis() != 4_000L") || !playbackSmoke.contains("LavaplayerAudioStream.SAMPLE_RATE * 2 * 4") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" || prism.files?.size() != 5 - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.18.jar"') || !changelog.contains("## `26.2.0-alpha.216`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.216 white-disc audio-quality release is incomplete") } } @@ -6561,7 +6561,7 @@ tasks.register("verifyAlpha217Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscAudioPlayer.java").text def streamSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStreamSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.216" || migration.source?.modules != [ambiance: "0.0.0-alpha.19"] @@ -6592,16 +6592,16 @@ tasks.register("verifyAlpha217Release") { || !audioPlayer.contains("PLAYBACK_PITCH = 1.0F") || audioPlayer.count("channel.setPitch(PLAYBACK_PITCH)") != 2 || !streamSmoke.contains("WhiteDiscAudioPlayer.PLAYBACK_PITCH - 1.0F") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" || prism.files?.size() != 5 - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.19.jar"') || !changelog.contains("## `26.2.0-alpha.217`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.217 white-disc pitch release is incomplete") } } @@ -6648,8 +6648,8 @@ tasks.register("verifyAlpha218Release") { redstoner: "0.0.0-alpha.10", onlyfun: "0.0.0-alpha.24", sanctuary: "0.0.0-alpha.120"] def targetModules = [ redstoner: "0.0.0-alpha.11", onlyfun: "0.0.0-alpha.25", sanctuary: "0.0.0-alpha.121"] - def currentModules = targetModules + [redstoner: "0.0.0-alpha.13", - sanctuary: "0.0.0-alpha.131", onlyfun: "0.0.0-alpha.27", + def currentModules = targetModules + [redstoner: "0.0.0-alpha.15", + sanctuary: "0.0.0-alpha.132", onlyfun: "0.0.0-alpha.27", iliketomoveit: "0.0.0-alpha.18", ambiance: "0.0.0-alpha.22", itsalive: "0.0.0-alpha.38", ouch: "0.0.0-alpha.11", masterkey: "0.0.0-alpha.9"] def requiredJars = currentModules.collect { id, version -> @@ -6658,7 +6658,7 @@ tasks.register("verifyAlpha218Release") { def obsoleteJars = sourceModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.redstoner_version != "0.0.0-alpha.15" || currentModules.findAll { id, version -> id != "redstoner" && id != "sanctuary" && id != "onlyfun" && id != "iliketomoveit" @@ -6699,13 +6699,13 @@ tasks.register("verifyAlpha218Release") { || !onlyFunPolicy.contains('namespace.equals("redstoner") && path.equals("storage_terminal")') || !blackMarketPolicy.contains('namespace.equals("redstoner") && path.equals("storage_terminal")') || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.218`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.218 Storage Terminal release is incomplete") } } @@ -6750,7 +6750,7 @@ tasks.register("verifyAlpha219Release") { def targetModules = [ sanctuary: "0.0.0-alpha.122", iliketomoveit: "0.0.0-alpha.16", ambiance: "0.0.0-alpha.21"] def currentModules = targetModules + [ - ambiance: "0.0.0-alpha.22", sanctuary: "0.0.0-alpha.131", + ambiance: "0.0.0-alpha.22", sanctuary: "0.0.0-alpha.132", iliketomoveit: "0.0.0-alpha.18", onlyfun: "0.0.0-alpha.27", itsalive: "0.0.0-alpha.38", ouch: "0.0.0-alpha.11", masterkey: "0.0.0-alpha.9"] def workspaceModules = currentModules + [sanctuary: "0.0.0-alpha.132"] @@ -6768,7 +6768,7 @@ tasks.register("verifyAlpha219Release") { include "**/*golden*days*.zip", "**/*golden*days*.jar" exclude "**/build/**", "**/.gradle/**", "**/.git/**" }.files - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.source?.pack_version != "26.2.0-alpha.218" || migration.source?.modules != sourceModules @@ -6800,15 +6800,15 @@ tasks.register("verifyAlpha219Release") { || manifests.ambiance.custom?.sanctuary26?.data_version != 2 || manifests.ambiance.custom?.sanctuary26?.network_protocol != 6 || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version || prism.files.any { it.path.toLowerCase().contains("golden-days") } - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !forbiddenGoldenArchives.isEmpty() || !changelog.contains("## `26.2.0-alpha.219`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.219 finite Alpha/Indev release is incomplete") } } @@ -6847,7 +6847,7 @@ tasks.register("verifyAlpha220Release") { "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/client/gui/StorageTerminalScreen.java").text def networking = file( "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/network/RedStonerNetworking.java").text - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.redstoner_version != "0.0.0-alpha.15" || migration.source?.pack_version != "26.2.0-alpha.219" || migration.source?.modules != [redstoner: "0.0.0-alpha.11"] @@ -6888,13 +6888,13 @@ tasks.register("verifyAlpha220Release") { || networking.contains("storage_terminal_snapshot") || networking.contains("storage_terminal_action") || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') - || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.13.jar"') + || !packwiz.contains('version = "26.2.0-alpha.228"') + || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.15.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.11.jar"') || !changelog.contains("## `26.2.0-alpha.220`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.220 Storage Terminal menu release is incomplete") } } @@ -6942,7 +6942,7 @@ tasks.register("verifyAlpha221Release") { def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text def contract = migration.white_disc_native_rate - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.220" || migration.source?.modules != [ambiance: "0.0.0-alpha.21"] @@ -6991,13 +6991,13 @@ tasks.register("verifyAlpha221Release") { || !playbackSmoke.contains("PCM cadence: 100%% speed") || !whiteDiscDocumentation.contains("48 000 Hz") || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.227"') + || !packwiz.contains('version = "26.2.0-alpha.228"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.21.jar"') || !changelog.contains("## `26.2.0-alpha.221`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.221 native-rate white-disc release is incomplete") } } @@ -7076,7 +7076,7 @@ tasks.register("verifyAlpha222Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.redstoner_version != "0.0.0-alpha.15" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.source?.pack_version != "26.2.0-alpha.221" @@ -7150,12 +7150,12 @@ tasks.register("verifyAlpha222Release") { || !questEditor.contains("QuestIdSuggestions.suggest") || !suggestions.contains("Normalizer.Form.NFD") || !suggestions.contains("public static final int LIMIT = 5") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') - || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.13.jar"') - || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') + || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.15.jar"') + || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.12.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.122.jar"') || !packwizJei.contains('filename = "jei-26.2-fabric-30.29.0.199.jar"') @@ -7164,7 +7164,7 @@ tasks.register("verifyAlpha222Release") { || jeiFiles[0].hashes?.sha1 != "1d6ab9269be16f85fb13a34a36b34ad07a9b32a7" || jeiFiles[0].hashes?.sha512 != "2849ff6a4cc91822798f0c70e7749c298b911c1037fc74e9ab0881734b8d5cb6507fb3169b4a240ef6c37eb6f7c573794c46073ff352f160feee245233b2abe5" || !changelog.contains("## `26.2.0-alpha.222`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.222 terminal-search and quest-tracker release is incomplete") } } @@ -7255,7 +7255,7 @@ tasks.register("verifyAlpha223Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.199.jar" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.source?.pack_version != "26.2.0-alpha.222" || migration.source?.modules != [sanctuary: "0.0.0-alpha.124"] @@ -7320,11 +7320,11 @@ tasks.register("verifyAlpha223Release") { || !questSync.contains("case EMERALD -> 2") || !inventorySmoke.contains("Hotbar snapshot must remain untouched") || !displaySmoke.contains("QuestTrackerDisplayMode.PANEL.next()") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') - || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') + || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.124.jar"') || !packwizJei.contains('filename = "jei-26.2-fabric-30.29.0.199.jar"') || !packwizJei.contains('version = "astSvyl6"') @@ -7332,7 +7332,7 @@ tasks.register("verifyAlpha223Release") { || jeiFiles[0].hashes?.sha1 != "1d6ab9269be16f85fb13a34a36b34ad07a9b32a7" || jeiFiles[0].hashes?.sha512 != "2849ff6a4cc91822798f0c70e7749c298b911c1037fc74e9ab0881734b8d5cb6507fb3169b4a240ef6c37eb6f7c573794c46073ff352f160feee245233b2abe5" || !changelog.contains("## `26.2.0-alpha.223`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.223 inventory-sort and quest-tracker display release is incomplete") } } @@ -7376,7 +7376,7 @@ tasks.register("verifyAlpha224Release") { iliketomoveit: "0.0.0-alpha.17", onlyfun: "0.0.0-alpha.26", sanctuary: "0.0.0-alpha.128"] def currentModules = targetModules + [ itsalive: "0.0.0-alpha.38", iliketomoveit: "0.0.0-alpha.18", - onlyfun: "0.0.0-alpha.27", sanctuary: "0.0.0-alpha.131"] + onlyfun: "0.0.0-alpha.27", sanctuary: "0.0.0-alpha.132"] def workspaceModules = currentModules + [sanctuary: "0.0.0-alpha.132"] def inventorySort = file( "sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/gameplay/SanctuaryInventorySort.java").text @@ -7396,7 +7396,7 @@ tasks.register("verifyAlpha224Release") { }.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.223" @@ -7439,14 +7439,14 @@ tasks.register("verifyAlpha224Release") { || !sortPayload.contains("buffer.writeBoolean(container)") || !sortPayload.contains("buffer.readBoolean()") || !networking.contains("PROTOCOL_VERSION = 24") - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.224`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.224 Notch, Magic Carpet and container-sort release is incomplete") } } @@ -7497,14 +7497,13 @@ tasks.register("verifyAlpha225Release") { anotherworld: "0.0.0-alpha.56", itsalive: "0.0.0-alpha.38", iliketomoveit: "0.0.0-alpha.18", onlyfun: "0.0.0-alpha.27", sanctuary: "0.0.0-alpha.129"] - def currentModules = targetModules + [sanctuary: "0.0.0-alpha.131"] + def currentModules = targetModules + [sanctuary: "0.0.0-alpha.132"] def currentWorkspaceModules = currentModules + [ anotherworld: "0.0.0-alpha.57", sanctuary: "0.0.0-alpha.132"] def workspaceModules = moduleIds.collectEntries { id -> [(id): project(":${id}").version.toString()] } - def releasedModules = workspaceModules + [ - redstoner: "0.0.0-alpha.13", sanctuary: "0.0.0-alpha.131"] + def releasedModules = workspaceModules def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } @@ -7542,7 +7541,7 @@ tasks.register("verifyAlpha225Release") { "iliketomoveit/src/main/resources/assets/iliketomoveit/textures/item/magic_carpet.png") def carpetTextureHash = MessageDigest.getInstance("SHA-256") .digest(carpetTexture.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || currentWorkspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.224" @@ -7595,14 +7594,14 @@ tasks.register("verifyAlpha225Release") { || !lootboxes.contains("SanctuaryEntityPolicy.isTemporaryCompanion") || carpetModel.textures?.layer0 != "iliketomoveit:item/magic_carpet" || carpetTextureHash != "3e4527d24a37f0632b27d2c857b047c581db07eaa41befaffbf28043a8ed86cc" - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.225`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.225 four-ticket bug-fix release is incomplete") } } @@ -7664,12 +7663,11 @@ tasks.register("verifyAlpha226Release") { def workspaceModules = moduleIds.collectEntries { id -> [(id): project(":${id}").version.toString()] } - def releasedModules = workspaceModules + [ - redstoner: "0.0.0-alpha.13", sanctuary: "0.0.0-alpha.131"] + def releasedModules = workspaceModules def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.225" @@ -7712,14 +7710,14 @@ tasks.register("verifyAlpha226Release") { || !renderer.contains("LivingEntityRenderLayerRegistrationCallback") || !avatarMixin.contains("appearance.bannerCape()") || onlyFun.contains('"white_cape"') - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.129.jar"') || !changelog.contains("## `26.2.0-alpha.226`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.226 craftable banner cape release is incomplete") } } @@ -7756,12 +7754,11 @@ tasks.register("verifyAlpha227Release") { def workspaceModules = moduleIds.collectEntries { id -> [(id): project(":${id}").version.toString()] } - def releasedModules = workspaceModules + [ - redstoner: "0.0.0-alpha.13", sanctuary: "0.0.0-alpha.131"] + def releasedModules = workspaceModules def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.227" + if (rootProject.pack_version != "26.2.0-alpha.228" || rootProject.anotherworld_version != "0.0.0-alpha.57" || rootProject.sanctuary_version != "0.0.0-alpha.132" || migration.status != "released" @@ -7801,20 +7798,124 @@ tasks.register("verifyAlpha227Release") { || anotherWorldManifest.custom?.sanctuary26?.network_protocol != 2 || sanctuaryManifest.custom?.sanctuary26?.data_version != 14 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.227" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.227.mrpack" - || prism.versionId != "26.2.0-alpha.227" - || !packwiz.contains('version = "26.2.0-alpha.227"') + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.56.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.130.jar"') || !changelog.contains("## `26.2.0-alpha.227`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.227`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { throw new GradleException("The alpha.227 persistent Backroom release is incomplete") } } } +tasks.register("verifyAlpha228Release") { + group = "verification" + description = "Checks the Sanctuary 26.2.0-alpha.228 five-level Backroom and terminal release." + inputs.file(file("pack/migrations/26.2.0-alpha.227-backroom-levels-terminal-to-alpha.228.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("redstoner/src/main/resources/fabric.mod.json")) + inputs.file(file("sanctuary/src/main/resources/fabric.mod.json")) + inputs.file(file("redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/storage/StorageTerminalSearch.java")) + inputs.file(file("redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/client/gui/StorageTerminalScreen.java")) + inputs.file(file("sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/backroom/BackroomService.java")) + inputs.file(file("sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/worldgen/feature/BackroomLayout.java")) + doLast { + def migration = new JsonSlurper().parse(file( + "pack/migrations/26.2.0-alpha.227-backroom-levels-terminal-to-alpha.228.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 redStonerManifest = new JsonSlurper().parse( + file("redstoner/src/main/resources/fabric.mod.json")) + def sanctuaryManifest = new JsonSlurper().parse( + file("sanctuary/src/main/resources/fabric.mod.json")) + def terminalSearch = file( + "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/storage/StorageTerminalSearch.java").text + def terminalScreen = file( + "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/client/gui/StorageTerminalScreen.java").text + def backroomService = file( + "sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/backroom/BackroomService.java").text + def backroomLayout = file( + "sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/worldgen/feature/BackroomLayout.java").text + def workspaceModules = moduleIds.collectEntries { id -> + [(id): project(":${id}").version.toString()] + } + def requiredJars = workspaceModules.collect { id, version -> + "file = \"mods/${id}-${version}.jar\"" + } + if (rootProject.pack_version != "26.2.0-alpha.228" + || rootProject.redstoner_version != "0.0.0-alpha.15" + || rootProject.sanctuary_version != "0.0.0-alpha.132" + || migration.status != "released" + || migration.source?.pack_version != "26.2.0-alpha.227" + || migration.source?.modules != [ + redstoner: "0.0.0-alpha.13", sanctuary: "0.0.0-alpha.131"] + || migration.target?.pack_version != "26.2.0-alpha.228" + || migration.target?.modules != [ + redstoner: "0.0.0-alpha.15", sanctuary: "0.0.0-alpha.132"] + || migration.backroom?.level_count != 5 + || migration.backroom?.minimum_y != -64 + || migration.backroom?.maximum_y_exclusive != 384 + || migration.backroom?.entry_floor_y != 367 + || migration.backroom?.monsters_disabled != true + || migration.backroom?.arrival_torch != true + || migration.backroom?.matching_vertical_transitions != true + || migration.backroom?.connected_maze != true + || migration.storage_terminal?.click_to_focus != true + || migration.storage_terminal?.inventory_key_closes != true + || migration.storage_terminal?.shulker_contents_searchable != true + || migration.storage_terminal?.shulker_remains_result != true + || migration.compatibility?.existing_saves_supported != true + || migration.compatibility?.new_world_required != false + || migration.compatibility?.save_reset_required != false + || migration.compatibility?.persistent_data_formats_changed != false + || migration.compatibility?.network_protocols_changed != false + || migration.compatibility?.redstoner_data_version != 3 + || migration.compatibility?.redstoner_network_protocol != 7 + || migration.compatibility?.sanctuary_data_version != 14 + || migration.compatibility?.sanctuary_network_protocol != 24 + || migration.distribution?.pack_release_updated != true + || migration.distribution?.packwiz_index_refreshed != true + || migration.distribution?.prism_modrinth_index_updated != true + || redStonerManifest.custom?.sanctuary26?.data_version != 3 + || redStonerManifest.custom?.sanctuary26?.network_protocol != 7 + || sanctuaryManifest.custom?.sanctuary26?.data_version != 14 + || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 + || !terminalSearch.contains("DataComponents.CONTAINER") + || !terminalSearch.contains("nonEmptyItemCopyStream") + || !terminalScreen.contains("keyInventory.matches(event)") + || !backroomService.contains("MobCategory.MONSTER") + || !backroomService.contains("Blocks.TORCH") + || !backroomLayout.contains("WORLD_MIN_Y = -64") + || !backroomLayout.contains("WORLD_MAX_Y_EXCLUSIVE = 384") + || !backroomLayout.contains("LEVEL_4(-64, 27)") + || !backroomLayout.contains("mazeConnected") + || release.pack_version != "26.2.0-alpha.228" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.228.mrpack" + || prism.versionId != "26.2.0-alpha.228" + || !packwiz.contains('version = "26.2.0-alpha.228"') + || requiredJars.any { !packwizIndex.contains(it) } + || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.13.jar"') + || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"') + || !changelog.contains("## `26.2.0-alpha.228`") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.228`**")) { + throw new GradleException("The alpha.228 five-level Backroom and terminal release is incomplete") + } + } +} + tasks.named("verifyWorkspace") { dependsOn tasks.named("verifyAlpha213Release") dependsOn tasks.named("verifyAlpha214Release") @@ -7832,6 +7933,7 @@ tasks.named("verifyWorkspace") { dependsOn tasks.named("verifyAlpha225Release") dependsOn tasks.named("verifyAlpha226Release") dependsOn tasks.named("verifyAlpha227Release") + dependsOn tasks.named("verifyAlpha228Release") } tasks.named("check") { diff --git a/gradle.properties b/gradle.properties index 9b69d52..b07a5d7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -30,5 +30,5 @@ onlyfun_version=0.0.0-alpha.27 onlyfun_lifecycle=active sanctuary_version=0.0.0-alpha.132 sanctuary_lifecycle=active -pack_version=26.2.0-alpha.227 +pack_version=26.2.0-alpha.228 maven_group=fr.koka99cab.sanctuary26 diff --git a/pack/migrations/26.2.0-alpha.227-backroom-levels-terminal-to-alpha.228.json b/pack/migrations/26.2.0-alpha.227-backroom-levels-terminal-to-alpha.228.json new file mode 100644 index 0000000..bacd9c9 --- /dev/null +++ b/pack/migrations/26.2.0-alpha.227-backroom-levels-terminal-to-alpha.228.json @@ -0,0 +1,58 @@ +{ + "schema_version": 1, + "status": "released", + "source": { + "pack_version": "26.2.0-alpha.227", + "modules": { + "redstoner": "0.0.0-alpha.13", + "sanctuary": "0.0.0-alpha.131" + } + }, + "target": { + "pack_version": "26.2.0-alpha.228", + "modules": { + "redstoner": "0.0.0-alpha.15", + "sanctuary": "0.0.0-alpha.132" + } + }, + "backroom": { + "level_count": 5, + "minimum_y": -64, + "maximum_y_exclusive": 384, + "entry_floor_y": 367, + "monsters_disabled": true, + "arrival_torch": true, + "matching_vertical_transitions": true, + "connected_maze": true, + "dense_city_and_highways": true, + "three_dimensional_brick_grid": true, + "intentional_void_holes": true + }, + "storage_terminal": { + "click_to_focus": true, + "inventory_key_closes": true, + "shulker_contents_searchable": true, + "shulker_remains_result": true, + "vanilla_shulker_preview_preserved": true + }, + "compatibility": { + "existing_saves_supported": true, + "new_world_required": false, + "save_reset_required": false, + "persistent_data_formats_changed": false, + "network_protocols_changed": false, + "redstoner_data_version": 3, + "redstoner_network_protocol": 7, + "sanctuary_data_version": 14, + "sanctuary_network_protocol": 24, + "client_server_update_required": true, + "existing_backroom_chunks_preserved": true, + "new_backroom_generation_applies_to_new_chunks": true + }, + "distribution": { + "pack_release_updated": true, + "packwiz_index_refreshed": true, + "prism_modrinth_index_updated": true, + "shared_client_server_mrpack": true + } +} diff --git a/pack/packwiz/index.toml b/pack/packwiz/index.toml index c796a87..077db9b 100644 --- a/pack/packwiz/index.toml +++ b/pack/packwiz/index.toml @@ -14,15 +14,15 @@ hash = "41f4f4c88c71d0a23446d5014f7407d55ad477441847099cad24492b032335a0" [[files]] file = "mods/ambiance-0.0.0-alpha.22.jar" -hash = "ac54481beb8c038482fd99ba1605dcc86c912751df64e590273e4608a5c981b8" +hash = "619acaea8062f7a4bc3ab4eaf288a2a8f39f79f63399cb77bc3cad9ae0069dca" [[files]] file = "mods/anotherworld-0.0.0-alpha.57.jar" -hash = "3d825230943b5bb95ecfa40b1d948bf8ddfaaccd25e372f203b86e735dbdaa65" +hash = "ed2a20b1da66e91e6b0c81e2dd69dc00d950533090d7546ba300ddb605274666" [[files]] file = "mods/events-0.0.0-alpha.0.jar" -hash = "2e9f170a91982cba15a91b5203eef96c2986c6a6c93f74f98fecca95a34430d2" +hash = "5dfe8aa4a18e1d11982e4675113e308b95140309062b94640e77bda6f23ee0ef" [[files]] file = "mods/fabric-api.pw.toml" @@ -31,7 +31,7 @@ metafile = true [[files]] file = "mods/iliketomoveit-0.0.0-alpha.18.jar" -hash = "21749e842ca20bb0a433356ac8515a47577e0c528f3e6f30da61dab11342cee2" +hash = "d605656061456d4fae3b99a0febc7503c83b1ab35895d961ab0c84eae77bca56" [[files]] file = "mods/iris.pw.toml" @@ -40,7 +40,7 @@ metafile = true [[files]] file = "mods/itsalive-0.0.0-alpha.38.jar" -hash = "93970ce1392670c1398097e94c5992b9f635c9f68c9f5e8d23a9eac61f4392e3" +hash = "a163fe50c0c58923db69b592aacb5df90bd33219db40e149b2e4e7da1994fca0" [[files]] file = "mods/jei.pw.toml" @@ -49,23 +49,23 @@ metafile = true [[files]] file = "mods/masterkey-0.0.0-alpha.9.jar" -hash = "dc4abe7a53b01b0b71de787701df8acf2c3979216a117b2d927e92ce8b210774" +hash = "6e9e7f3462b17f209cced5a16594bd954a86ba654a9adecff06a5d0bdce2df65" [[files]] file = "mods/onlyfun-0.0.0-alpha.27.jar" -hash = "14f230d2d3ebbfab4ceb34fc4087b4fb92b8764a65cc4f9ab007af8ee7084995" +hash = "0cee938fa050ba7aad0fc9dba341585c3f1c726780d052082a4c09ea68e897a2" [[files]] file = "mods/ouch-0.0.0-alpha.11.jar" -hash = "db1a98ddedce2411b5a2583e22c664c0eff3b5d0d8ee91a20a0e863bc5d4f559" +hash = "761c7e6b8987cbe1b0c762c0d1566abfe36ec8dd7dd998bf20c1d66de6d4f203" [[files]] -file = "mods/redstoner-0.0.0-alpha.13.jar" -hash = "3fe72a3e31cc32f51b4992097e258fb1c21c7e3adeef5d40310e3d271ff0ef12" +file = "mods/redstoner-0.0.0-alpha.15.jar" +hash = "6d0e88c39201bc1c23fdcc82ef8488200660ec58f1f96fd2b9b109de5df990f7" [[files]] -file = "mods/sanctuary-0.0.0-alpha.131.jar" -hash = "89b6d772e408c2162a2b68198b877409d4cbe79aeddbdc62a135f91d6e395a00" +file = "mods/sanctuary-0.0.0-alpha.132.jar" +hash = "e7cd60e8dee7bd97c1f77c392aaad4a0b3ea0ae44d63d0dc324fb2729c9cc601" [[files]] file = "mods/simple-voice-chat.pw.toml" diff --git a/pack/packwiz/pack.toml b/pack/packwiz/pack.toml index 1ddaf2e..1c325a3 100644 --- a/pack/packwiz/pack.toml +++ b/pack/packwiz/pack.toml @@ -1,12 +1,12 @@ name = "Sanctuary 26.2" author = "KOKA99CAB" -version = "26.2.0-alpha.227" +version = "26.2.0-alpha.228" pack-format = "packwiz:1.1.0" [index] file = "index.toml" hash-format = "sha256" -hash = "4e40f4d06d1f9f1b440a0be817a855a60861e3a2cf8041d6101a93a66e4c9097" +hash = "e9064ff6017f1b49a2f774a9d68f456b0c8b77ee5ffd130a70c5b9fb5cdeb216" [versions] fabric = "0.19.3" diff --git a/pack/prism/modrinth.index.json b/pack/prism/modrinth.index.json index 7c96fef..46f2f6d 100644 --- a/pack/prism/modrinth.index.json +++ b/pack/prism/modrinth.index.json @@ -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.227", + "versionId": "26.2.0-alpha.228", "files": [ { "path": "mods/fabric-api-0.159.0+26.2.jar", diff --git a/pack/release.json b/pack/release.json index fccb6ef..14185f0 100644 --- a/pack/release.json +++ b/pack/release.json @@ -1,6 +1,6 @@ { "schema_version": 1, - "pack_version": "26.2.0-alpha.227", + "pack_version": "26.2.0-alpha.228", "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.227.mrpack", + "primary_file": "sanctuary-26.2.0-alpha.228.mrpack", "shared_client_server_pack": true, "update_owner": "packwiz-installer", "check_on_launch": true,