Files
sanctuary-beta/docs/testing-alpha15.md
2026-09-09 16:43:25 +02:00

11 KiB
Raw Permalink Blame History

Alpha.15 — intérieurs, sous-sols et ville compacte

État : code, génération et distribution validés. Ticket WG-18. check build assemblePack et les huit tests moteur passent sur les sources finales, ainsi que la création et la réouverture natives de Lost City. Le reçu de publication figure dans Distribution.

Contrat de génération

Minecraft 26.3-pre-2, Java 25, dépendances épinglées inchangées. Le mod et le pack passent à 0.1.0-alpha.15. Un nouveau monde Sanctuary utilise sanctuary:island_v15 et son journal propre data/sanctuary-world-v15/expansions.json. Le bouton natif Personnaliser conserve Petit 512, Moyen 724 par défaut et Grand 1 024. La densité du terrain, les forêts et lhydrologie naturelle ne sont pas remplacées par cette passe urbaine.

Le JAR dessai anticipé du 9 septembre, avant publication de lalpha.15, contenait encore les fragments dispersés. Les essais de cette nouvelle composition se font dans un monde neuf ; aucune réparation ou régénération des mondes créés avec ce prototype nest exécutée. Le binaire dessai est conservé séparément avant synchronisation de linstance.

Les mondes 12/13/14 conservent leurs codecs, paramètres, journaux, plans et rendus, même pour leurs chunks encore non générés. Le preset 14 reste enregistré mais caché dans la création. Aucun monde personnel nest ouvert, converti ou régénéré. Les nouvelles pièces persistantes ont leurs propres identifiants : sanctuary:lost_city_parcel_v15, sanctuary:lost_city_underground_v15 et sanctuary:lost_city_support_v15.

Le biome sanctuary:lost_city reste utilisé : les parcelles acceptées pilotent la carte des biomes urbains et les apparitions naturelles de zombies vanilla. Les cavités gardent leurs biomes ; un égout souterrain ne transforme pas toute la colonne en biome urbain. Il ny a ni villageois générés, ni spawner, ni classes de zombies de la future bêta.

Aménagements

Les appartements, hôtels, bibliothèques, restaurants, casernes et halls ont des usages distincts. Seuil et vestibule rejoignent un couloir, une cage descalier et des pièces séparées par de vraies portes. Sols, plafonds, chambres, salles deau, cuisines, réserves, réception, rayonnages, dortoirs, auditorium et galerie suivent le type du bâtiment. Les détails dusure doivent préserver les passages. Le butin reste différé, avec un coffre par bâtiment.

Les réseaux souterrains cherchent une descente depuis la surface, des égouts, des passages, des garages et des pool rooms. La roche et les volumes deau naturelle décident de leur admission. Les parties exposées demandent des appuis courts certifiés : pylônes ou chaînes réellement ancrés. Les bassins construits ont un fond, des parois et un accès ; ils ne doivent pas se vider dans les corridors. Les modules voisins ne se superposent pas. Une grande salle sèche accessible prépare une future machine dexpansion ; la machine et ses cartes ne font pas partie de cette livraison.

Le retour de lessai anticipé remplace les fragments dispersés par une grille compacte : lots, rues et carrefours sont jointifs, avec un réseau accessible depuis chaque entrée. Les routes sont dégagées sur huit blocs de hauteur ; les terrasses sont certifiées dans leur emprise et les ponts prolongent le réseau. Les sièges, charnières et appuis des lanternes sont revus. Les emplacements admissibles restent conditionnels ; aucun équipement nest promis sur toute graine.

Vérification reproductible

Utiliser seulement les mondes de développement ignorés. Exécuter les processus Minecraft séquentiellement et faire suivre chaque création de sa réouverture, avant un autre test qui nettoie ce dossier de développement.

./gradlew :sanctuary:lostCityInteriors15Smoke :sanctuary:lostCityUnderground15Smoke --console=plain
./gradlew :sanctuary:runGameTest -PsanctuaryLostCity15Tests=true -PsanctuaryTestSeed=0 -PsanctuaryResourceSurvey=off -PsanctuaryDensityMaps=false --console=plain
./gradlew :sanctuary:runGameTest -PsanctuaryLostCity15Tests=true -PsanctuaryExpansionReload=true -PsanctuaryTestSeed=0 -PsanctuaryResourceSurvey=off -PsanctuaryDensityMaps=false --console=plain
./gradlew check build assemblePack -PsanctuaryTestSeed=0 -PsanctuaryResourceSurvey=off -PsanctuaryDensityMaps=false --console=plain

La suite historique -PsanctuaryLostCityTests=true choisit explicitement la génération 14. Les suites de reprise certifiée du vide utilisent la génération 15 par défaut ; la réouverture doit être exécutée deux fois après leur création. Les certificats sont liés à leur génération : un certificat ou journal 14 ne peut pas autoriser une expansion 15. Le contrat WG-17 reste applicable dans chaque journal, avec inspection stricte avant écriture.

Les résultats finaux préciseront graine, version, coordonnées, pièces natives, eau après ticks, conservation après réouverture et durée des commandes.

Compatibilité historique déjà vérifiée

La création de génération 14 avec le binaire alpha.15 passe le 9 septembre 2026 (build/alpha15-legacy14-create.log, processus 22663, 2 min 57 s). Sur graine 0, racine 724 et extension city_gardens 256, les deux starts NBT, les inventaires de blocs, les coffres différés et le journal ont exactement les mêmes empreintes ou contenus que la livraison alpha.14. La réouverture du même binaire dans le processus 23083 passe (build/alpha15-legacy14-reload.log, 57 s), avec 38 pièces, 5 coffres non ouverts, le bloc témoin et le journal conservés. Cette réouverture exclut la recompilation : elle vérifie les mêmes binaires que la création, pendant le développement séparé du nouveau planner15. Les classes historiques de planification et de rendu ne sont pas modifiées. Les rapports sont conservés dans build/alpha15-evidence/legacy14-*.json.

Le premier test moteur15 a vérifié les accès des bâtiments et réseaux, puis a échoué sur une hypothèse insuffisante de son ordonnanceur de fluides. Le test attend maintenant que les chunks et leurs entités soient prêts, observe un écoulement natif dans des témoins temporaires fermés, puis contrôle les bassins naturels après des ticks mesurés. Ces témoins sont séparés des équipements naturellement générés et supprimés avant sauvegarde. Les essais sur modèles contrôlés seront distingués des équipements effectivement générés sur terrain naturel. La validation Windows native reste à effectuer.

Contrôles ciblés du retour dessai anticipé

Les smokes exécutés le 9 septembre passent avec les classes Minecraft exactes : les six familles dintérieurs dans quatre orientations contrôlent la collision des portes ouvertes, le côté des dossiers des sièges et lappui plein des lanternes (build/alpha15-targeted-furnishings.log). Le rendu de surface15 corrige aussi les bancs et ajoute les marches sur le sol existant, leur sommet rejoignant le niveau voisin. Dégagement des rues, volumes de protection, grande salle, boucle alternative et fondations souterraines passent dans build/alpha15-targeted-utilities.log. Ces essais contrôlés ne remplacent pas le scénario natif final.

Le scénario de reprise certifiée du vide de génération15 passe sa création et ses deux réouvertures dans des JVM séparées : 154 chunks FULL, tous éclairés correctement, et bloc témoin conservé. Les refus de bloc, coffre, entité ou tick présents et la conservation des régions face à une mutation étrangère passent. Rapports : build/alpha15-evidence/void-reuse-*.json. Ces preuves précèdent la révision compacte du seul placement urbain ; le test complet final reste exigé.

Ville compacte : création finale vérifiée

La création finale passe sur la graine 0, île 724, le 9 septembre 2026 : build/alpha15-final-city-create.log, processus 26229, 3 min 19 s pour les quatre smokes puis le scénario moteur. Cette durée inclut les contrôles, les prospects et la préparation dun continent ; ce nest pas un benchmark de chargement joueur ou de rendu.

  • Racine : un quartier natif au chunk (-2, 3), cinq lots (immeuble, hôtel, bibliothèque, jardin et place), 33 pièces de rues/carrefours, 52 pièces natives avec le sous-sol. Les cinq entrées rejoignent le même réseau ; 393 sections de rues sont traversées sur les seules rues et seuils. Limmeuble est accessible en (-30, 252, 21) sur cette graine.
  • Sous la racine : un accès, quatre collecteurs, sept passages, une pool room et une grande salle sèche. Le socle et les quatre secteurs de la salle sont accessibles depuis la trappe de surface.
  • Continent témoin 256, graine 8737523517608206795, centre (2112, 320) : restaurant et immeuble, réseau de rues, pont de 17 blocs, garage et pool room souterrains. 24 pièces natives et 5 appuis souterrains inspectés. Le pont est parcouru de (2104, 225, 309) à (2120, 224, 309).
  • Les biomes urbains et le spawn naturel de zombies sont vérifiés ; aucun spawner ni villageois ajouté. Cinq coffres restent à butin différé.
  • Les bassins souterrains sont contrôlés après 120 ticks de monde mesurés ; 19 témoins temporaires indépendants prouvent lexécution native des fluides, puis sont retirés avant sauvegarde. La piscine de surface est vérifiée dans le premier monde compact, avant la dernière affectation des lots : ses 207 sources sont conservées, et neuf cellules au-dessus des marches se remplissent normalement sans fuite (216 cellules deau au total).

Le témoin final contient un pont court et des appuis souterrains. Les grands viaducs sur piles construites restent validés sur terrains contrôlés ; ils ne sont pas présentés comme observés dans ce monde naturel. Aucune famille de bâtiments, piscine, garage, salle ou pont nest garantie sur chaque graine. Rapport : build/alpha15-evidence/final-city-create.json ; le monde compact précédent est conservé dans compact-first-create.json.

La réouverture finale du même monde passe dans un autre processus (26452, build/alpha15-final-city-reload.log, 51 s) : 76 pièces natives, 5 coffres à butin différé, 108 points de parcours intérieurs et 5 appuis conservés. Les sept entrées restent reliées aux rues, le bloc témoin (-38, 252, 21) est présent et le journal garde exactement ses octets. Rapport : build/alpha15-evidence/final-city-reload.json.

check build assemblePack final passe en 2 min 6 s le 9 septembre 2026, avec les huit tests moteur requis et tous les smokes, dont les quatre contrôles15 (build/alpha15-final-check-build-pack.log). Le JAR et le pack sont construits depuis les mêmes sources que le scénario final. Le changement reste réservé à15 ; la revue finale ne trouve aucune modification des quatre classes de planification/rendu/pièce historiques14.

La release immuable v0.1.0-alpha.15, source dd9c795, et le canal 6cf54ee sont publiés. JAR, MRpack et amorçage sont vérifiés ; deux installations isolées et deux synchronisations de la même instance Prism réussissent. Les 767 fichiers personnels et réglages suivis restent identiques. Lancien JAR dessai est conservé séparément ; un seul JAR Sanctuary est actif. Voir le reçu de livraison.