Files
sanctuary-beta/docs/atlas-markers-beta059.md
T
2026-09-15 09:29:11 +02:00

86 lines
5.2 KiB
Markdown

# beta.059 — bannières et cartes au trésor
Ticket `codex/atlas-markers-beta059`. Prolonge les altitudes et l'affichage
sans cadre de beta.058.
## Contrat avant implémentation
- Un clic droit sur une bannière, main vide ou avec une carte remplie, ajoute
son repère personnel à l'atlas. Le même geste le retire ; la couleur et le
nom renommé sont repris. Une carte native tenue continue aussi son propre
enregistrement vanilla. Aucun achat supplémentaire : l'observation peut
précéder l'aptitude Grande carte, qui reste nécessaire pour ouvrir l'atlas.
- Utiliser une carte au trésor remplie importe ses repères dans la World Map.
La carte physique reste disponible pour être partagée. Les cartes natives
d'exploration et leurs bannières sont prises en charge ; leur terrain n'est
pas copié dans le brouillard personnel.
- Les trésors des îlots miniers sont lus dans le plan aérien déjà chargé et
sauvegardé, sans nouvelle recherche ni génération. Les opérateurs les voient
automatiquement. Un client normal ne reçoit jamais les coordonnées des
trésors qu'il n'a pas importés depuis une carte.
- Les deux navires fournissent des cartes vers les premiers îlots miniers.
Les coffres miniers peuvent donner la carte de l'îlot suivant, notamment
le troisième des mondes Grand. Ce sont des cartes Minecraft remplies avec
le marqueur de trésor natif, sans nouvel objet ni texture.
- Les repères utilisent les sprites de carte Minecraft. Les bannières nommées
ont leur texte ; le survol donne le nom et les coordonnées. Un point dont
l'altitude est connue disparaît sous un plafond inférieur à ce point.
Les cartes natives sans altitude restent visibles sur tous les plafonds.
## Données et mondes existants
Fichier personnel additif `data/sanctuary-atlas/markers/<UUID>.json`, schéma 1,
lié à l'UUID et à la graine. Les journaux de terrain, couches, monde et plans
restent inchangés. Limite de 512 repères ; écritures atomiques et conservation
d'un fichier invalide. Reconnexion et prestige ne suppriment pas les repères.
Un retour à beta.058 ignore ce fichier sans conversion.
Les trois tables de butin aériennes conservent leurs objets et les quantités
qu'elles déclarent, et ajoutent une carte. Leurs anciens champs `functions`
/ `function`, ignorés dans cette version, sont adaptés en `modifier` / `type`
pour appliquer effectivement ces quantités et la création de la carte.
Seuls les coffres dont le butin n'a pas encore été généré utilisent ces tables ;
aucun coffre déjà ouvert n'est rempli, aucun contenu existant n'est réécrit.
Les coffres et positions sont ceux des plans d'origine, sans migration de
structures, de chunks ou de graine. Les tests ne touchent que des mondes de
laboratoire. Aucune publication ou installation personnelle implicite.
## Vérifications
- `atlas059Smoke` : persistance Unicode, isolation UUID/graine, limite de
512 repères, suppression, absence de réécriture sans changement, filtrage
du cadrage et de l'altitude, conservation des fichiers corrompus.
- Parcours client Minecraft 26.3-pre-2 sur un monde Sanctuary de laboratoire,
graine 42, taille moyenne, structures activées : clic droit réel sur une
bannière renommée, retrait et ajout, changement de nom, import depuis une
carte en main gauche, lecture des trois tables de butin natives, quantités
conservées, cartes dirigées vers les deux coffres du plan, utilisation
physique de la carte au trésor, conservation de l'objet et absence de doublon.
- Le client normal reçoit uniquement le trésor découvert. Le mode opérateur
montre les deux sans les enregistrer ; sa désactivation et un paquet tardif
ne rétablissent pas les coordonnées cachées. Suppression d'une bannière
chargée, relecture du journal, codec avec altitude inconnue et libellés FR/EN
vérifiés. Sprites natifs contrôlés et captures inspectées.
- `:sanctuary:atlas059Smoke :sanctuary:runClientGameTest` réussi en 2 min 57 s,
avec `-PsanctuaryClientTests=true -PsanctuaryAtlas059ClientTests=true
-PsanctuaryQuickTests=true`. Journal : `build/atlas059-client.log`, marqueur
`ATLAS059_PASS`.
- `./gradlew check build assemblePack assembleTestPack` réussi en 2 min 9 s,
122 tâches, avec les mêmes propriétés et `-x :sanctuary:runGameTest`.
Journal : `build/atlas059-check.log`. Aucun serveur dédié ni acceptation
d'EULA ; les tests natifs utilisent le serveur intégré de développement.
- Les deux exports packwiz sont vérifiés par `build/verify-atlas059.py` :
1 607 classes conformes au build, changements limités aux classes prévues,
ressources existantes préservées hors libellés et trois tables documentées,
JEI inchangé et archives beta.058 intactes.
Archives locales : [pack normal](../build/Sanctuary-beta.059.mrpack) et
[monde plat rapide](../build/Sanctuary-Test-beta.059.mrpack).
Reçu détaillé : `build/atlas059-artifact.json` ; captures dans
`build/atlas059-evidence/`.
Le parcours natif couvre les deux trésors du monde moyen. Le troisième îlot
du monde Grand suit le même plan et la même règle de carte suivante, mais n'a
pas fait l'objet d'un second monde de test. Aucun essai avec plusieurs clients
humains simultanés ni mesure de FPS n'est revendiqué ici.