11 KiB
Alpha.15 — intérieurs, sous-sols et ville compacte
État : code et génération validés ; distribution en préparation.
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 reste 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 l’hydrologie naturelle ne sont
pas remplacées par cette passe urbaine.
Le JAR d’essai anticipé du 9 septembre, avant publication de l’alpha.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 n’est exécutée. Le binaire d’essai est conservé séparément avant synchronisation de l’instance.
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 n’est 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 n’y 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 d’escalier et des pièces séparées par de vraies portes. Sols, plafonds, chambres, salles d’eau, cuisines, réserves, réception, rayonnages, dortoirs, auditorium et galerie suivent le type du bâtiment. Les détails d’usure 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 d’eau 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 d’expansion ; la machine et ses cartes ne font pas partie de cette livraison.
Le retour de l’essai 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 n’est 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 d’essai anticipé
Les smokes exécutés le 9 septembre passent avec les classes Minecraft exactes :
les six familles d’intérieurs dans quatre orientations contrôlent la collision
des portes ouvertes, le côté des dossiers des sièges et l’appui 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 d’un continent ; ce n’est 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. L’immeuble 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 l’exé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 d’eau 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 n’est 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.