42 lines
7.1 KiB
Markdown
42 lines
7.1 KiB
Markdown
# Ticket beta.006 — Atlas exploré et premières empreintes Demeure
|
|
|
|
Résultat livré localement : déplacer la carte par glisser-déposer répété, découvrir un paysage progressivement, afficher une grille de chunks et consulter les empreintes d'habitation. L'utilisateur a choisi les empreintes et la grille ; réservation, factions et protection des chunks restent au prochain ticket.
|
|
|
|
## Source et périmètre
|
|
|
|
La référence signalée par l'inventaire 26.2 se trouve dans `../Structures/demeure` (sources ciblant Minecraft 26.1.2, auteur KOKA99CAB, GPL-3.0-or-later). Aucun changement dans ces dépôts historiques. Demeure reste un mod autonome sous `mods/demeure`, embarqué dans Sanctuary et adapté aux API exactes de 26.3-pre-2. Il fournit les empreintes, Sanctuary décide de l'accès à leur représentation dans l'Atlas.
|
|
|
|
Ce premier port reprend les influences par chunk, la nature initiale, les états neutre/sauvage/habité/partagé/contesté/dominé/abandonné et les traces des déplacements, de l'activité, des blocs réellement posés ou cassés, des récoltes, du sommeil et des morts. La présence animale, villageoise et hostile est agrégée autour des habitants actifs. Nourrissage, naissance, cuisson, propriété animale individuelle et commandes historiques attendent leurs hooks de réussite et leur ticket. Aucun clic infructueux n'est crédité, aucune XP n'est distribuée par Demeure.
|
|
|
|
## Contrat de migration et de confidentialité
|
|
|
|
- Aucun changement de génération, de graine, de chunks, d'expansion, de progression ou d'identité d'habitant.
|
|
- L'Atlas passe du schéma JSON 1 au schéma 2 lors de sa prochaine sauvegarde. Les 256 pixels de chaque ancien chunk restent connus. Dans le même tableau de couleurs, 0 signifie désormais inconnu, 1 représente le vide effectivement observé, 4..255 conservent les couleurs Minecraft. Les anciens pixels 0..3 sont convertis en 1. Cette conversion est idempotente et ne peut révéler aucun nouveau chunk. Les lecteurs beta.005 refusent le schéma 2 : retour arrière exige de restaurer une sauvegarde préalable.
|
|
- Les nouveaux relevés découvrent les pixels dans un rayon de 32 blocs avec une bordure tramée, en lisant uniquement les chunks déjà chargés. L'union des observations est conservée dès l'arrivée, même avant l'aptitude Grande carte. Une absence de couleur n'efface jamais une ancienne découverte. Il s'agit d'une révélation cartographique de surface, pas d'un calcul de visibilité optique.
|
|
- Les identifiants et le format des paquets `sanctuary:atlas_request` / `sanctuary:atlas_response` restent stables. Les empreintes utilisent un nouveau paquet séparé et borné. Le client et le serveur doivent utiliser le même pack pour la nouvelle interprétation du pixel inconnu.
|
|
- Demeure crée un fichier distinct `data/demeure/footprints-v1.json`, indexé par dimension et chunk, lié à la graine. Aucun ancien fichier Demeure n'est importé ni modifié. Les premiers scores commencent à zéro lors du portage.
|
|
- Les jours sont des jours UTC réels (horloge serveur), indépendants de `/time`. Une interruption ne simule pas d'activité. La décroissance après 14 jours d'absence est appliquée avant toute nouvelle contribution ; revenir ne ressuscite pas les anciens scores. Un recul d'horloge ne crée ni nouvelle journée ni nouveau budget.
|
|
- Les contributions par sujet et chunk sont plafonnées à 8 par jour réel, conservées avec leur budget et date. Maximum 16 384 chunks, 32 influences par chunk, fichier limité à 64 Mio. Aucun effacement silencieux en cas de limite ou de corruption ; le service refuse d'écraser un fichier corrompu ou modifié extérieurement.
|
|
- Une grille géométrique peut couvrir le brouillard ; aucun état Demeure n'est transmis pour un chunk inconnu. Le survol d'un pixel inconnu ne révèle pas l'empreinte. Une empreinte ne constitue ni propriété ni protection et ne dit pas qu'un chunk est juridiquement réservable.
|
|
- La vue opérateur demeure explicite et vérifiée sur le serveur ; elle n'ajoute aucune découverte personnelle. Changement de rôle, de dimension ou de permission efface les données de la vue précédente.
|
|
|
|
## Validation effectuée
|
|
|
|
- `./gradlew check build assemblePack -PsanctuaryFocusedTests=progression,map,demeure` : réussi en 4 minutes, **8/8 tests natifs serveur**. Le test Demeure vérifie les placements réussis/refusés, la destruction native, l'aptitude carte, les chunks inconnus, les permissions opérateur et les spectateurs. Un premier lancement avait échoué dans le montage du faux joueur spectateur (connexion absente) ; ce montage a été corrigé puis les huit tests ont été relancés avec succès.
|
|
- `./gradlew :sanctuary:runClientGameTest -PsanctuaryClientTests=true -PsanctuaryProgressionClientTests=true` : réussi en 1 min 37 s. Les glissements passent par `MouseHandler.onButton/onMove`, avec les constantes SDL de Minecraft, et non par des appels directs au gestionnaire de la carte. Plusieurs gestes, relâchement hors carte, zoom natif, nouvelle requête, rafraîchissement, deux tailles de fenêtre, activation de la grille, vrais paquets Demeure, inspection opérateur et révocation sont vérifiés.
|
|
- Les tests de contrats vérifient les anciens pixels de vide conservés, la migration idempotente, l'union de visites, les pixels inconnus, les fichiers corrompus, la capacité et l'isolation. Demeure vérifie aussi le budget après rechargement, le recul d'horloge, la décroissance avant retour, les états du territoire et les dimensions distinctes.
|
|
- Les fichiers produits par le client natif contiennent **16 chunks / 2 913 pixels connus** dans l'Atlas schéma 2, et un chunk Demeure schéma 1. La sauvegarde est constatée dans le monde de développement ; aucun monde personnel n'a été ouvert.
|
|
- Captures inspectées dans `build/beta006-preview/`, notamment les interfaces à 640 et 1280 pixels, le brouillard et la carte verrouillée. FR/EN alignés ; aucun changement aux icônes ni aux noms de couleurs approuvés.
|
|
- La sélection native cible ce ticket et la progression. Les deux assertions worldgen générales déjà connues en beta.003/005 ne sont pas revendiquées corrigées. Réservation/protection des claims, factions et port complet des interactions Demeure restent hors de cette livraison.
|
|
|
|
## Artefact d'essai
|
|
|
|
[Sanctuary-beta.006.mrpack](../build/Sanctuary-beta.006.mrpack), **2 298 722 octets**.
|
|
Le mod Demeure autonome est inclus dans le JAR Sanctuary via la déclaration Fabric `jars` ; l'assemblage contrôle son identité et sa licence. Aucun second fichier n'est à installer manuellement.
|
|
|
|
- SHA-256 MRpack : `ef8499de78461e7eab7bafe3d1ccf38a2d06ec3a0e0884e8e10ffe30fc63071f`.
|
|
- SHA-256 Sanctuary : `40f674ca491c1f7e12c0d5dd8994e01e7f998a079fa1853960cfc609c5d0fec6`.
|
|
- SHA-256 Demeure : `8993d777ca47f0a7a7a9425532606f772dfdb5db07d400c2adb4207346acd674`.
|
|
|
|
ZIP, versions internes, dépendances exactes, JAR imbriqué identique au build, notices, ressources et index packwiz vérifiés. Les MRpacks beta.003, .004 et .005 gardent leurs empreintes. Reçu `build/demeure006-artifact.json` ; journaux `build/beta006-delivery-final.log` et `build/beta006-client.log`. Export local uniquement : aucune publication de canal ni synchronisation Prism.
|