Record Sanctuary sources through beta.060 and Git validation
Build Sanctuary / build (push) Canceled after 0s

This commit is contained in:
koka
2026-09-15 09:29:11 +02:00
parent 1490fb2a80
commit e13f3cc1b8
1372 changed files with 92055 additions and 212 deletions
+88
View File
@@ -0,0 +1,88 @@
# DEV-033 — Sanctuary Test, monde plat et intro passée
Le petit module facultatif `sanctuary_test` dépend du vrai mod Sanctuary.
Il permet de tester les fonctionnalités réelles sur un terrain plat natif,
sans générer Sanctuary Island ni jouer les 29,5 secondes de cinématique.
Client natif validé sur la graine `42`, Minecraft **26.3-pre-2**, Java 25.
## Contrat du profil de développement
Le pack normal nembarque pas ce module. Avec le module présent côté serveur,
les nouveaux mondes plats peuvent ouvrir la progression Sanctuary. La protection
des mondes déjà habités reste la même : aucune activation implicite sur une
ancienne sauvegarde qui na pas de contrat Sanctuary.
Le preset `sanctuary_test:flat` remplit seulement 64 couches natives : une bedrock,
60 pierres, deux terres et une herbe. Pas de structures, lacs ou décorations
supplémentaires. Les dimensions Nether et End gardent leurs générateurs natifs,
et ne génèrent leurs chunks qu’à leur visite. Graine libre ; aucun changement
apporté au preset Sanctuary ni à sa génération.
Le formulaire dhabitant et ladmission restent réels, suivis du même échange
réseau dintroduction. Le serveur de test signale le mode rapide au client,
qui accuse immédiatement la fin de lintro. Pas de délai, musique ou flash.
Sur un monde Sanctuary normal, lintro complète reste active même si ce module
est installé. `/sanctuary intro` permet toujours de revoir la cinématique.
Le client propose le preset de test par défaut à la création dun nouveau monde,
sans réimposer ce choix après un changement volontaire ou un redimensionnement.
Conserver le module pour jouer ses mondes de test. Ne pas confondre ceux-ci avec
les mondes du pack normal ; aucune installation personnelle modifiée par les outils.
## Lancer une partie dessai
Importer [Sanctuary-Test-beta.033.mrpack](../build/Sanctuary-Test-beta.033.mrpack)
dans un lanceur compatible, puis créer un **nouveau monde**. Le type
**Sanctuary — Test rapide** est présélectionné. Valider la fiche dhabitant :
larrivée suit directement, sans cinématique. Choisir le mode de jeu et les
commandes selon le test souhaité ; les règles de progression restent réelles.
Le [pack normal beta.033](../build/Sanctuary-beta.033.mrpack) contient les mêmes
corrections et fonctionnalités, sans le module facultatif. Le petit JAR
`mods/sanctuary-test/build/libs/sanctuary-test-beta.033.jar` nécessite Sanctuary
beta.033 ; ce nest pas une copie autonome du jeu.
## Développement
`./gradlew :sanctuary-test:runClient` lance une instance isolée dans
`mods/sanctuary-test/run/quick-test`. Créer un nouveau monde avec le preset de test.
La fiche dhabitant napparaît qu’à la première arrivée, comme dans le pack normal.
Les GameTests client peuvent ajouter `-PsanctuaryQuickTests=true` ; ils gardent
les vrais mods et utilisent explicitement le preset plat. Leurs données restent
dans les dossiers de développement ignorés. Les tests du terrain et de la
cinématique complète continuent dutiliser leurs profils habituels.
## Vérifications du profil rapide
Trois parcours client natifs ont créé un monde plat de graine `42`, conservé
la création didentité et ouvert les véritables menus Sanctuary. Lessai final
vérifie aussi le preset présélectionné, labsence d’écran Intro, le générateur
`FlatLevelSource` et la session serveur de progression active.
La création jusqu’à ladmission a pris **7 293 ms**, **8 935 ms**, puis **8 735 ms** sur cette
machine, avec validation automatisée de la fiche. Ces mesures commencent après
le chargement du client ; elles ne décrivent pas le démarrage du lanceur, la
saisie humaine ou une garantie de durée sur dautres machines.
Commande de contrôle client :
```sh
./gradlew :sanctuary:runClientGameTest -PsanctuaryClientTests=true \
-PsanctuaryMenusClientTests=true -PsanctuaryQuickTests=true \
-PsanctuaryFocusedTests=menus
```
Journaux : `build/menus033-quick-client-final.log` et
`build/menus033-quick-client-history.log` (avec le bouton History final). Le parcours normal conserve
le preset Sanctuary et sa séquence dintroduction (`build/menus033-client2.log`).
Le monde plat facilite les essais dinterfaces et de mécaniques ; les essais
d’îles et dexpansions doivent conserver leur générateur Sanctuary.
## Distribution vérifiée
Le module mesure **21 504 octets** ; il est la seule différence de contenu
entre les deux packs (outre le nom du manifeste). Le JAR Sanctuary est identique,
ainsi que JEI et Demeure. Archives, métadonnées et classes compilées vérifiées ;
reçu : `build/quick033-artifact.json`. Aucun serveur ni installation personnelle
na été mis à jour. La distribution normale nembarque pas `sanctuary_test`.