release: Sanctuary 26.2.0-alpha.203 #20

Merged
koka merged 1 commits from release/26.2.0-alpha.203 into main 2026-08-27 13:23:36 +00:00
10 changed files with 138 additions and 79 deletions
+3 -2
View File
@@ -6,15 +6,16 @@ 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.
## En développement — Safe Block vertical et interface monétaire
## `26.2.0-alpha.203`
Module modifié : **Another World `0.0.0-alpha.51`**. Le pack distribué reste en **`26.2.0-alpha.202`**.
Module modifié : **Another World `0.0.0-alpha.51`**. Les neuf autres modules conservent leur version issue de lalpha.202.
- corrige la structure du Safe Block : les neuf segments doivent former un mur vertical exact de 3 × 3, et non une plateforme qui apparaît en 3 × 1 de face ;
- conserve un modèle cubique individuel en main et tant que la structure est incomplète ;
- active uniquement après formation les neuf modèles CTM qui découpent les textures 48×48 du coffre-fort ;
- remplace le coffre vanilla à 27 cases par une interface dédiée à trois soldes centrés — rubis, saphirs et émeraudes — avec les boutons ` ×64`, ` ×1`, `+ ×1` et `+ ×64` ;
- valide tous les transferts côté serveur, utilise seulement les rangées Sanctuary débloquées et refuse un retrait plutôt que de jeter des gemmes lorsque linventaire est plein ;
- actualise JEI de `30.26.0.186` à `30.27.0.187` dans Packwiz et le manifeste Prism/Modrinth ;
- préserve les soldes existants et le stockage persistant à 27 piles, porte Another World de la donnée v2 à v3 et `safe_vaults` de v1 à v2 ; une ancienne plateforme horizontale doit être reconstruite verticalement.
## `26.2.0-alpha.202`
+2 -2
View File
@@ -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 local : **`26.2.0-alpha.202`**. Another World passe en **`0.0.0-alpha.50`**, Its Alive en **`0.0.0-alpha.31`**, I Like To Move It en **`0.0.0-alpha.14`** et Sanctuary en **`0.0.0-alpha.117`** ; les six autres modules conservent leur version de lalpha.201.
Version courante du pack local : **`26.2.0-alpha.203`**. Another World passe en **`0.0.0-alpha.51`** ; les neuf autres modules conservent leur version de lalpha.202.
Le développement courant porte Another World en **`0.0.0-alpha.51`** sans republier le pack. Le Safe Block forme désormais un mur vertical exact de 3 × 3 : ses blocs restent des cubes individuels avant validation, puis les neuf segments composent les textures connectées 48×48. Son interface affiche trois soldes centrés — rubis, saphirs et émeraudes — avec les transferts serveur ` ×64`, ` ×1`, `+ ×1` et `+ ×64`.
Lalpha.203 porte Another World en **`0.0.0-alpha.51`** et JEI en **`30.27.0.187`**. Le Safe Block forme désormais un mur vertical exact de 3 × 3 : ses blocs restent des cubes individuels avant validation, puis les neuf segments composent les textures connectées 48×48. Son interface affiche trois soldes centrés — rubis, saphirs et émeraudes — avec les transferts serveur ` ×64`, ` ×1`, `+ ×1` et `+ ×64`.
Lalpha.202 permet de descendre par un ascenseur de Waystones vers l’étage immédiatement inférieur encore inconnu, sans ouvrir la montée ni les trajets ordinaires aux destinations non découvertes. Le Shop et le marché noir comptent et consomment désormais les rubis et saphirs de toutes les rangées débloquées, y compris loverflow. Le livre culinaire peut enfin être posé sur un pupitre vanilla pour partager le catalogue de recettes de son propriétaire ; retiré du pupitre, il redevient personnel.
+95 -46
View File
@@ -329,7 +329,7 @@ tasks.register("verifyWorkspace") {
}
def progressionJeiMigration = new JsonSlurper().parse(file(
"pack/migrations/26.2.0-alpha.87-progression-jei-audio-to-alpha.88.json"))
def jeiFiles = prismIndex.files.findAll { it.path == "mods/jei-26.2-fabric-30.26.0.186.jar" }
def jeiFiles = prismIndex.files.findAll { it.path == "mods/jei-26.2-fabric-30.27.0.187.jar" }
if (progressionJeiMigration.source?.pack_version != "26.2.0-alpha.87"
|| progressionJeiMigration.target?.pack_version != "26.2.0-alpha.88"
|| progressionJeiMigration.target?.modules?.sanctuary != "0.0.0-alpha.38"
@@ -344,8 +344,8 @@ tasks.register("verifyWorkspace") {
|| progressionJeiMigration.compatibility?.network_protocol != 10
|| progressionJeiMigration.compatibility?.network_protocol_changed != true
|| jeiFiles.size() != 1
|| jeiFiles[0].hashes?.sha1 != "950efcf2d63a3a0560eae81223479577ad1a78cd"
|| jeiFiles[0].hashes?.sha512 != "6d8aaad5066d607e460db6f83cba28807129104b46c580b5ba3372d7b7cef84e28ade393c0a3d6bbb38191bcac053af691d0f58d8075f211c687c7b56c74337c"
|| jeiFiles[0].hashes?.sha1 != "cbd62af1f8e568cbe29c7892ae1b2917c0784a44"
|| jeiFiles[0].hashes?.sha512 != "f8bf88c089c7fe3d56031d7629170ba01eb1d0c5cc4d33f2fd0ac9413369cdef84a0fde999528621426d3dca878c9cfaf7a790622e2cd1d54802e1086fb073f0"
|| jeiFiles[0].env?.client != "required" || jeiFiles[0].env?.server != "required") {
throw new GradleException("The alpha.88 progression, JEI and Minecrafter audio contract is incomplete")
}
@@ -3427,7 +3427,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.sanctuary_version != "0.0.0-alpha.117"
|| rootProject.onlyfun_version != "0.0.0-alpha.19"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -3477,7 +3477,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.anotherworld_version != "0.0.0-alpha.51"
|| rootProject.redstoner_version != "0.0.0-alpha.10"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -4123,7 +4123,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.onlyfun_version != "0.0.0-alpha.19"
|| rootProject.sanctuary_version != "0.0.0-alpha.117"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -4168,7 +4168,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.itsalive_version != "0.0.0-alpha.31"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
|| migration.source?.pack_version != "26.2.0-alpha.193"
@@ -4217,7 +4217,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.onlyfun_version != "0.0.0-alpha.19"
|| rootProject.sanctuary_version != "0.0.0-alpha.117"
|| release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version
@@ -4263,7 +4263,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| migration.source?.pack_version != "26.2.0-alpha.195"
|| migration.target?.pack_version != "26.2.0-alpha.196"
|| migration.target?.modules != [
@@ -4281,10 +4281,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.202"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.202.mrpack"
|| prism.versionId != "26.2.0-alpha.202"
|| !packwiz.contains('version = "26.2.0-alpha.202"')) {
|| release.pack_version != "26.2.0-alpha.203"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.203.mrpack"
|| prism.versionId != "26.2.0-alpha.203"
|| !packwiz.contains('version = "26.2.0-alpha.203"')) {
throw new GradleException("The alpha.196 culinary, mailbox and grapple release contract is incomplete")
}
}
@@ -4309,7 +4309,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.itsalive_version != "0.0.0-alpha.31"
|| rootProject.sanctuary_version != "0.0.0-alpha.117"
|| migration.source?.pack_version != "26.2.0-alpha.196"
@@ -4329,10 +4329,10 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") {
|| migration.distribution?.jei?.target != "30.26.0.186"
|| migration.compatibility?.sanctuary_target_network_protocol != 19
|| sanctuaryManifest.custom?.sanctuary26?.network_protocol != 21
|| release.pack_version != "26.2.0-alpha.202"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.202.mrpack"
|| prism.versionId != "26.2.0-alpha.202"
|| !packwiz.contains('version = "26.2.0-alpha.202"')) {
|| release.pack_version != "26.2.0-alpha.203"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.203.mrpack"
|| prism.versionId != "26.2.0-alpha.203"
|| !packwiz.contains('version = "26.2.0-alpha.203"')) {
throw new GradleException("The alpha.197 quest-request and cauldron-batch release contract is incomplete")
}
}
@@ -4359,7 +4359,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.itsalive_version != "0.0.0-alpha.31"
|| migration.source?.pack_version != "26.2.0-alpha.197"
|| migration.target?.pack_version != "26.2.0-alpha.198"
@@ -4378,10 +4378,10 @@ tasks.register("verifyFermentationBarrelAutomationRelease") {
|| migration.distribution?.packwiz_index_refreshed != true
|| itsAliveManifest.custom?.sanctuary26?.data_version != 1
|| itsAliveManifest.custom?.sanctuary26?.network_protocol != 3
|| release.pack_version != "26.2.0-alpha.202"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.202.mrpack"
|| prism.versionId != "26.2.0-alpha.202"
|| !packwiz.contains('version = "26.2.0-alpha.202"')
|| release.pack_version != "26.2.0-alpha.203"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.203.mrpack"
|| prism.versionId != "26.2.0-alpha.203"
|| !packwiz.contains('version = "26.2.0-alpha.203"')
|| !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.31.jar"')) {
throw new GradleException("The alpha.198 fermentation barrel release contract is incomplete")
}
@@ -4409,7 +4409,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.itsalive_version != "0.0.0-alpha.31"
|| rootProject.sanctuary_version != "0.0.0-alpha.117"
|| migration.source?.pack_version != "26.2.0-alpha.198"
@@ -4423,10 +4423,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 != 21
|| release.pack_version != "26.2.0-alpha.202"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.202.mrpack"
|| prism.versionId != "26.2.0-alpha.202"
|| !packwiz.contains('version = "26.2.0-alpha.202"')
|| release.pack_version != "26.2.0-alpha.203"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.203.mrpack"
|| prism.versionId != "26.2.0-alpha.203"
|| !packwiz.contains('version = "26.2.0-alpha.203"')
|| !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.31.jar"')
|| !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.117.jar"')) {
throw new GradleException("The alpha.199 quest-request contract release is incomplete")
@@ -4464,7 +4464,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.ambiance_version != "0.0.0-alpha.12"
|| rootProject.ouch_version != "0.0.0-alpha.9"
|| migration.source?.pack_version != "26.2.0-alpha.199"
@@ -4498,10 +4498,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.202"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.202.mrpack"
|| prism.versionId != "26.2.0-alpha.202"
|| !packwiz.contains('version = "26.2.0-alpha.202"')
|| release.pack_version != "26.2.0-alpha.203"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.203.mrpack"
|| prism.versionId != "26.2.0-alpha.203"
|| !packwiz.contains('version = "26.2.0-alpha.203"')
|| !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.12.jar"')
|| !packwizIndex.contains('file = "mods/ouch-0.0.0-alpha.9.jar"')) {
throw new GradleException("The alpha.200 Weather TNT and Ambiance release is incomplete")
@@ -4530,7 +4530,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.sanctuary_version != "0.0.0-alpha.117"
|| migration.source?.pack_version != "26.2.0-alpha.200"
|| migration.source?.modules?.sanctuary != "0.0.0-alpha.115"
@@ -4545,10 +4545,10 @@ tasks.register("verifyQuestRequestEscrowRelease") {
|| migration.compatibility?.sanctuary_target_network_protocol != 21
|| sanctuaryManifest.custom?.sanctuary26?.data_version != 11
|| sanctuaryManifest.custom?.sanctuary26?.network_protocol != 21
|| release.pack_version != "26.2.0-alpha.202"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.202.mrpack"
|| prism.versionId != "26.2.0-alpha.202"
|| !packwiz.contains('version = "26.2.0-alpha.202"')
|| release.pack_version != "26.2.0-alpha.203"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.203.mrpack"
|| prism.versionId != "26.2.0-alpha.203"
|| !packwiz.contains('version = "26.2.0-alpha.203"')
|| !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.117.jar"')) {
throw new GradleException("The alpha.201 quest-request escrow release is incomplete")
}
@@ -4584,7 +4584,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.anotherworld_version != "0.0.0-alpha.51"
|| rootProject.itsalive_version != "0.0.0-alpha.31"
|| rootProject.iliketomoveit_version != "0.0.0-alpha.14"
@@ -4624,11 +4624,11 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") {
|| moveItManifest.custom?.sanctuary26?.network_protocol != 5
|| sanctuaryManifest.custom?.sanctuary26?.data_version != 11
|| sanctuaryManifest.custom?.sanctuary26?.network_protocol != 21
|| release.pack_version != "26.2.0-alpha.202"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.202.mrpack"
|| prism.versionId != "26.2.0-alpha.202"
|| !packwiz.contains('version = "26.2.0-alpha.202"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.50.jar"')
|| release.pack_version != "26.2.0-alpha.203"
|| release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.203.mrpack"
|| prism.versionId != "26.2.0-alpha.203"
|| !packwiz.contains('version = "26.2.0-alpha.203"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.51.jar"')
|| !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.31.jar"')
|| !packwizIndex.contains('file = "mods/iliketomoveit-0.0.0-alpha.14.jar"')
|| !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.117.jar"')) {
@@ -4676,7 +4676,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.202"
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.anotherworld_version != "0.0.0-alpha.51"
|| rootProject.sanctuary_version != "0.0.0-alpha.117"
|| migration.schema_version != 1
@@ -4696,7 +4696,9 @@ tasks.register("verifySafeVaultFeature") {
|| migration.compatibility?.anotherworld_network_protocol != 1
|| migration.compatibility?.sanctuary_network_protocol != 21
|| migration.compatibility?.pack_release_updated != true
|| interfaceMigration.source?.pack_version != "26.2.0-alpha.202"
|| interfaceMigration.source?.modules != [anotherworld: "0.0.0-alpha.50"]
|| interfaceMigration.target?.pack_version != "26.2.0-alpha.203"
|| interfaceMigration.target?.modules != [anotherworld: "0.0.0-alpha.51"]
|| interfaceMigration.safe_vault_structure?.source_footprint != "3x3_horizontal"
|| interfaceMigration.safe_vault_structure?.target_footprint != "3x3_upright"
@@ -4707,7 +4709,7 @@ tasks.register("verifySafeVaultFeature") {
|| interfaceMigration.compatibility?.anotherworld_target_data_version != 3
|| interfaceMigration.compatibility?.vault_target_data_version != 2
|| interfaceMigration.compatibility?.saved_currency_balances_preserved != true
|| interfaceMigration.compatibility?.pack_release_updated != false
|| interfaceMigration.compatibility?.pack_release_updated != true
|| manifest.depends?.sanctuary != ">=0.0.0-alpha.117"
|| manifest.custom?.sanctuary26?.data_version != 3
|| !file("build.gradle").text.contains('implementation project(":sanctuary")')
@@ -4732,9 +4734,56 @@ tasks.register("verifySafeVaultFeature") {
}
}
tasks.register("verifySafeVaultInterfaceAlpha203Release") {
group = "verification"
description = "Checks the complete Sanctuary 26.2.0-alpha.203 upright safe-vault interface release."
inputs.file(file("pack/migrations/anotherworld-safe-vault-data-v3.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"))
doLast {
def migration = new JsonSlurper().parse(file("pack/migrations/anotherworld-safe-vault-data-v3.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 jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.27.0.187.jar" }
if (rootProject.pack_version != "26.2.0-alpha.203"
|| rootProject.anotherworld_version != "0.0.0-alpha.51"
|| migration.source?.pack_version != "26.2.0-alpha.202"
|| migration.source?.modules != [anotherworld: "0.0.0-alpha.50"]
|| migration.target?.pack_version != "26.2.0-alpha.203"
|| migration.target?.modules != [anotherworld: "0.0.0-alpha.51"]
|| migration.compatibility?.anotherworld_source_data_version != 2
|| migration.compatibility?.anotherworld_target_data_version != 3
|| migration.compatibility?.vault_source_data_version != 1
|| migration.compatibility?.vault_target_data_version != 2
|| migration.compatibility?.anotherworld_network_protocol != 1
|| migration.compatibility?.pack_release_updated != true
|| migration.distribution?.packwiz_index_refreshed != true
|| migration.distribution?.jei?.source != "30.26.0.186"
|| migration.distribution?.jei?.target != "30.27.0.187"
|| 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.203.mrpack"
|| prism.versionId != rootProject.pack_version
|| !packwiz.contains('version = "26.2.0-alpha.203"')
|| !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.51.jar"')
|| packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.50.jar"')
|| jeiFiles.size() != 1
|| jeiFiles[0].hashes?.sha1 != "cbd62af1f8e568cbe29c7892ae1b2917c0784a44"
|| jeiFiles[0].hashes?.sha512 != "f8bf88c089c7fe3d56031d7629170ba01eb1d0c5cc4d33f2fd0ac9413369cdef84a0fde999528621426d3dca878c9cfaf7a790622e2cd1d54802e1086fb073f0") {
throw new GradleException("The alpha.203 upright safe-vault interface release is incomplete")
}
}
}
tasks.named("verifyWorkspace") {
dependsOn tasks.named("verifyWaystoneShopCulinaryAlpha202Release")
dependsOn tasks.named("verifySafeVaultFeature")
dependsOn tasks.named("verifySafeVaultInterfaceAlpha203Release")
}
tasks.named("check") {
+1 -1
View File
@@ -30,5 +30,5 @@ onlyfun_version=0.0.0-alpha.19
onlyfun_lifecycle=active
sanctuary_version=0.0.0-alpha.117
sanctuary_lifecycle=active
pack_version=26.2.0-alpha.202
pack_version=26.2.0-alpha.203
maven_group=fr.koka99cab.sanctuary26
@@ -7,7 +7,7 @@
}
},
"target": {
"pack_version": "26.2.0-alpha.202",
"pack_version": "26.2.0-alpha.203",
"modules": {
"anotherworld": "0.0.0-alpha.51"
}
@@ -31,6 +31,15 @@
"server_authoritative": true,
"persisted_storage_slots_preserved": 27
},
"distribution": {
"packwiz_index_refreshed": true,
"jei": {
"source": "30.26.0.186",
"target": "30.27.0.187",
"modrinth_version_id": "XXTFqqwG",
"prism_manifest_updated": true
}
},
"compatibility": {
"anotherworld_source_data_version": 2,
"anotherworld_target_data_version": 3,
@@ -41,6 +50,6 @@
"legacy_horizontal_structure_requires_rebuild": true,
"new_registry_ids": ["menu:anotherworld:safe_vault"],
"removed_registry_ids": [],
"pack_release_updated": false
"pack_release_updated": true
}
}
+12 -12
View File
@@ -14,15 +14,15 @@ hash = "41f4f4c88c71d0a23446d5014f7407d55ad477441847099cad24492b032335a0"
[[files]]
file = "mods/ambiance-0.0.0-alpha.12.jar"
hash = "73f740ddff6db5377b01bb03a211671fdc7a040cafae67c988f97803c7276c21"
hash = "40de39da187fa42f3b947f83872286ef6f049ff8bac0ac1a66d46d18ee14f911"
[[files]]
file = "mods/anotherworld-0.0.0-alpha.50.jar"
hash = "1f3a42f6acc8732c29bccdf7521038dd28161b94325808d59f465144a83f5a79"
file = "mods/anotherworld-0.0.0-alpha.51.jar"
hash = "caa4d8b29af65dd0a43e9aa2a7b897255ae10869595f1ca706f579b15d37c5a2"
[[files]]
file = "mods/events-0.0.0-alpha.0.jar"
hash = "612b88ee50fb6251692514983c5a59b57e62a57dd1a639fc8c292aabbf07e3bb"
hash = "09047070e419df4bbd510c114e6c23c609757e03ef1142ba4d38f6b99ecb0a7c"
[[files]]
file = "mods/fabric-api.pw.toml"
@@ -31,7 +31,7 @@ metafile = true
[[files]]
file = "mods/iliketomoveit-0.0.0-alpha.14.jar"
hash = "d9cbfa5c4ced74b9d995c1565ead4acb9a890cc0682c2bccb35c9c31cbf27180"
hash = "e8027e82ebcb214c94e028d7c2780057d745dcb810ca785ee35601bbbc1c3ec0"
[[files]]
file = "mods/iris.pw.toml"
@@ -40,32 +40,32 @@ metafile = true
[[files]]
file = "mods/itsalive-0.0.0-alpha.31.jar"
hash = "b6054062dc945cb9f6b8f9829d1bd0561de5e84a99a3f3f0737546c43684bffa"
hash = "04fcdc3312c0bd4e4271602c2e9eb8eb419de10c7b61b6ab47182033de736452"
[[files]]
file = "mods/jei.pw.toml"
hash = "0461b1b0c56d4f9bd9af2e8c53dcf121ad4ff29f740d6fbe7363649fcc6d8aa5"
hash = "7196839cc369a00ea9cffd0a85594f8fd46c0978f4f2fc708e61368a8b451270"
metafile = true
[[files]]
file = "mods/masterkey-0.0.0-alpha.8.jar"
hash = "8664516f1503b46fb665f9a9ad9984e6c7efff3f5e4d771a56c70591deec64dc"
hash = "1a14be8288a9eb2b93922e84cf14d701fb86bd67d6227adb16a534961dae5f87"
[[files]]
file = "mods/onlyfun-0.0.0-alpha.19.jar"
hash = "9d11ead06edd1defc83d670bcc14822e66f87c1384028721d1f85dd2e3788668"
hash = "c5b8bf67efd0a001c142172110f307ec2a59ac3d7457ed8e4f53f8e683033c1d"
[[files]]
file = "mods/ouch-0.0.0-alpha.9.jar"
hash = "bf9bb0cf55c7d8757a9d48ec7f527556f8b9742680e4f7cf33d102eade386042"
hash = "781f89dd44e3277dd8fd51e60ff2da9677a6376faeafd4000e1c07cf6f818759"
[[files]]
file = "mods/redstoner-0.0.0-alpha.10.jar"
hash = "920ffd7606bcb5576831a2a28668cac5ef0c50dcdd06739d55754b5692f54b49"
hash = "2d6ea237771f7a75a6d0184a68e910a7513159c0259e3c2b06f0a411a0979cbe"
[[files]]
file = "mods/sanctuary-0.0.0-alpha.117.jar"
hash = "519449fa9afd3af907447f4cf412234f3e08dad342fc94edff79a2485552ab4b"
hash = "10a7403a4b10ef049a7e557fd00eed56178f6d5383a2b7f28ff60b951eb4e053"
[[files]]
file = "mods/simple-voice-chat.pw.toml"
+4 -4
View File
@@ -1,14 +1,14 @@
name = "Just Enough Items (JEI)"
filename = "jei-26.2-fabric-30.26.0.186.jar"
filename = "jei-26.2-fabric-30.27.0.187.jar"
side = "both"
pin = true
[download]
url = "https://cdn.modrinth.com/data/u6dRKJwZ/versions/ZLvOB7Pk/jei-26.2-fabric-30.26.0.186.jar"
url = "https://cdn.modrinth.com/data/u6dRKJwZ/versions/XXTFqqwG/jei-26.2-fabric-30.27.0.187.jar"
hash-format = "sha512"
hash = "6d8aaad5066d607e460db6f83cba28807129104b46c580b5ba3372d7b7cef84e28ade393c0a3d6bbb38191bcac053af691d0f58d8075f211c687c7b56c74337c"
hash = "f8bf88c089c7fe3d56031d7629170ba01eb1d0c5cc4d33f2fd0ac9413369cdef84a0fde999528621426d3dca878c9cfaf7a790622e2cd1d54802e1086fb073f0"
[update]
[update.modrinth]
mod-id = "u6dRKJwZ"
version = "ZLvOB7Pk"
version = "XXTFqqwG"
+2 -2
View File
@@ -1,12 +1,12 @@
name = "Sanctuary 26.2"
author = "KOKA99CAB"
version = "26.2.0-alpha.202"
version = "26.2.0-alpha.203"
pack-format = "packwiz:1.1.0"
[index]
file = "index.toml"
hash-format = "sha256"
hash = "f1f001d3f2138abf2ef3998542b4616204a35780c7c47cd0f9880c3e2428c89b"
hash = "0cb034db4939949917ee7d06d1eb205268b1453c2fb78a3fe57d64d090b54a87"
[versions]
fabric = "0.19.3"
+6 -6
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.202",
"versionId": "26.2.0-alpha.203",
"files": [
{
"path": "mods/fabric-api-0.158.0+26.2.jar",
@@ -21,19 +21,19 @@
"fileSize": 2535765
},
{
"path": "mods/jei-26.2-fabric-30.26.0.186.jar",
"path": "mods/jei-26.2-fabric-30.27.0.187.jar",
"hashes": {
"sha1": "950efcf2d63a3a0560eae81223479577ad1a78cd",
"sha512": "6d8aaad5066d607e460db6f83cba28807129104b46c580b5ba3372d7b7cef84e28ade393c0a3d6bbb38191bcac053af691d0f58d8075f211c687c7b56c74337c"
"sha1": "cbd62af1f8e568cbe29c7892ae1b2917c0784a44",
"sha512": "f8bf88c089c7fe3d56031d7629170ba01eb1d0c5cc4d33f2fd0ac9413369cdef84a0fde999528621426d3dca878c9cfaf7a790622e2cd1d54802e1086fb073f0"
},
"env": {
"client": "required",
"server": "required"
},
"downloads": [
"https://cdn.modrinth.com/data/u6dRKJwZ/versions/ZLvOB7Pk/jei-26.2-fabric-30.26.0.186.jar"
"https://cdn.modrinth.com/data/u6dRKJwZ/versions/XXTFqqwG/jei-26.2-fabric-30.27.0.187.jar"
],
"fileSize": 1818022
"fileSize": 1818136
},
{
"path": "mods/voicechat-fabric-2.6.22+26.2.jar",
+2 -2
View File
@@ -1,6 +1,6 @@
{
"schema_version": 1,
"pack_version": "26.2.0-alpha.202",
"pack_version": "26.2.0-alpha.203",
"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.202.mrpack",
"primary_file": "sanctuary-26.2.0-alpha.203.mrpack",
"shared_client_server_pack": true,
"update_owner": "packwiz-installer",
"check_on_launch": true,