Files
sanctuary-beta/docs/living-hats-seasons-beta105.md
T
2026-09-17 03:10:39 +02:00

144 lines
8.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# beta.105 — Météo saisonnière, captures et chapeaux vivants
Branche `codex/living-hats-seasons-beta105`, Minecraft 26.3.
## Contrat avant modification
- Molette dans le fût : navigation entre pages, bornée, sans perdre les objets
du curseur ni déplacer la souris au centre.
- Panoramas : couleurs et brume du shader Sanctuary actif, six faces cohérentes,
profondeur conservée et caméra restaurée même après erreur.
- Real Time : probabilités liées aux saisons astronomiques du calendrier réel.
Été surtout ensoleillé sans profil ciel gris ; automne plus humide ; hiver
avec neige. Des journées claires restent possibles dans les quatre saisons.
Le créateur demande explicitement flocons et accumulation naturelle au sol.
Le tirage du jour déjà sauvegardé reste stable ; nouveaux tirages saisonniers
les jours suivants, commandes opérateur disponibles. Aucune Weather TNT.
- Mobs équipés : coups et boules de neige activent lobjet ; briquet, feu
dartifice propulsant le porteur, spawner natif configuré, paratonnerre attirant
les éclairs. Les consommables et lusure restent réels.
- Cultures sur tête : croissance et récolte des produits/graines, sans duplication
de la graine initiale au retrait. Les aliments attirent les espèces qui les
mangent ; une carotte sur bâton guide les cochons vers le porteur.
- Livre et plume : journal intime écrit en réaction aux caresses et blessures,
voix différente selon les quatre personnalités ; souvenirs variés, pas de log
technique. Pages existantes conservées et limites natives respectées.
## Contrat de données
Aucune sauvegarde personnelle nest modifiée pendant les essais. Les objets et
leur état continuent dutiliser les données additives existantes de chapeau.
Les journaux restent de véritables livres Minecraft récupérables. L’éventuel
nouveau profil neige étend l’énumération météo : anciens états lisibles, aucune
conversion automatique du jour courant. Un retour à une ancienne version après
une journée neige nécessite dabord de sélectionner un profil météo ancien.
La neige peut modifier les blocs exposés pendant le jeu, selon la demande du
créateur ; pas de régénération, dexpansion ni de changement de terrain au chargement.
## Utilisation
- Dans le fût, molette vers le bas : page suivante ; vers le haut : précédente.
Le défilement concerne le coffre et sa colonne de contrôles. Un objet tenu au
curseur bloque le changement de page, comme les boutons existants.
- `/sanctuary weather forecast` annonce les sept prochains jours.
`/sanctuary weather snow` et `snow_showers` sélectionnent respectivement neige
continue et averses ; leurs équivalents `/weather` sont également disponibles.
Le mode Vanilla conserve le cycle Minecraft.
- Sur un mob équipé, clic droit à main vide : caresse du livre, activation du
briquet/de la fusée, récolte dune culture mûre. Coup ou boule de neige :
activation. Maj + clic droit à main vide : récupération de lobjet.
- Blé, carottes, pommes de terre, betteraves : croissance des cultures portées,
récolte native et replantation. Les produits mûrs sont aussi rendus si lon
retire la graine. Les plantes décoratives et tiges de melon/citrouille ne
deviennent pas des cultures de fruit mobiles.
- Le spawner conserve lespèce configurée et les contraintes Minecraft :
proximité dun joueur, espace, lumière et limite dentités. Une activation
lance une tentative immédiate ; elle ne garantit pas une apparition si
ces conditions ne sont pas réunies.
- Le paratonnerre attire les éclairs naturels sous un ciel dégagé à portée
native, puis émet son impulsion redstone. Le briquet respecte la règle de modification du terrain par les mobs.
La fusée consomme lobjet, utilise ses effets natifs et propulse le porteur.
- Les aliments portés attirent les animaux qui les consomment dans un rayon
de 10 blocs, avec abandon à 12 blocs ou sans visibilité. La carotte sur bâton
guide ainsi les cochons. Priorités de fuite et de reproduction conservées.
- Le journal reprend la personnalité du familier ; celle dun animal ordinaire
est déterminée de façon stable par son identité et son espèce. FR/EN selon
la langue du premier lecteur-interacteur. Les pages précédentes sont
conservées (limite native 100 pages), mais ne sont pas diffusées dans le
paquet dapparence du chapeau.
## Calendrier et périmètre
Longitude solaire apparente calculée localement à partir des formules publiques
[NOAA Solar Calculator](https://gml.noaa.gov/grad/solcalc/), avec contrôle des
quatre passages 2026 contre les horaires de l[US Naval Observatory](https://aa.usno.navy.mil/data/Earth_Seasons).
Le tirage est journalier : le jour civil dun équinoxe/solstice adopte la nouvelle
saison, selon le fuseau Real Time. Lhémisphère sud inverse les saisons via la
latitude solaire configurée. Il ne sagit pas de la météo réelle dune ville.
Les pondérations de `weather.json` restent la base, modulée par la saison.
Sur 10 000 graines par saison : journées claires 64,41 % / 94,79 % / 40,25 % /
49,05 % (printemps/été/automne/hiver) avec la configuration par défaut.
La neige passe par les précipitations natives des chunks chargés, respecte
la limite native daccumulation, la lumière et les supports Minecraft. Les biomes
sans précipitations restent secs. Les chaudrons reçoivent aussi de la neige.
La neige déposée reste un bloc natif : pas de balayage saisonnier supprimant
les blocs des constructions. Sa fonte suit les règles Minecraft.
Les captures intègrent le post-traitement et la brume Sanctuary ; aucune
compatibilité avec un moteur externe Iris/Canvas/Oculus nest déclarée.
## Vérifications
- `seasonal105Smoke` : 40 000 tirages, stabilité par graine/jour,
équinoxes/solstices 2026 à ± une heure, inversion sud, proportions saisonnières,
persistance dune journée de neige et passage au lendemain.
- `Living105ClientChecks` : client natif Minecraft 26.3 avec serveur intégré,
nouveau monde plat jetable. Journal avec page préalable, caresse/blessure,
récupération, récolte/replantation/retrait, vache attirée par le blé, cochon
guidé, vraie méthode dimpact de boule de neige, feu/usure, vol dune vache,
apparition du spawner configuré, éclair/impulsion/extinction du paratonnerre,
neige déposée par `tickPrecipitation`, requête de flocons côté client,
molette suivant/précédent/bornes et deux panoramas complets de six faces.
- Pour chaque face à saturation 0, contrôle des pixels désaturés ; comparaison
à saturation 200, présence de `sanctuary:vanilla_light` et profondeur du sol
conservée. Les vues sont soumises séparément au GPU pour éviter de réutiliser
les tampons natifs avant leur soumission. Aucun échec de post-traitement dans
lessai final (53 secondes).
Commande de reproduction :
```sh
JAVA_HOME=/chemin/vers/jdk25 ./gradlew :sanctuary:runClientGameTest \
-PsanctuaryClientTests=true -PsanctuaryLiving105ClientTests=true \
-PsanctuaryClientNoVsync=true -PsanctuaryQuickTests=true
```
Le délai serveur de trois ticks entre changements de page est supprimé : les
paquets sont toujours validés contre lidentifiant du menu ouvert et son curseur.
Les anciennes pages ne peuvent donc pas accepter de clics après remplacement.
Le client et le serveur doivent utiliser ensemble beta.105 pour les nouveaux
profils réseau de neige. Les anciens états enregistrés restent lisibles.
## Livraison locale
`check build assemblePack assembleTestPack -x :sanctuary:runGameTest` réussi
sur la copie isolée `build/release-beta105` : 2 min 43 s, 125 tâches.
Le test dédié est exclu conformément au refus antérieur de son EULA ; le test
natif de cette livraison utilise un serveur intégré dans un monde neuf jetable.
La copie part des sources et ressources vérifiées beta.104, auxquelles sont
appliqués les 25 fichiers Java concernés, les libellés météo FR/EN et les mixins.
Elle évite dembarquer les modifications du chantier Statuaire beta.106 arrivé
en parallèle dans le dossier partagé. Le travail beta.106 est conservé.
`build/beta105-source-manifest.json` décrit les sources de cette compilation.
Les sources JAR correspondent à cette copie ; les ressources du pack beta.104
restent identiques sauf les deux fichiers de langue. JAR sans classes de test,
archives et métadonnées 26.3 vérifiées ; archives beta.104 inchangées. Rapport :
`build/beta105-artifact.json`. Aucun déploiement ni publication du canal.
- [Sanctuary-beta.105.mrpack](../build/Sanctuary-beta.105.mrpack), 10083681 octets.
SHA-256 : `396c31ad80b4826e5cc0530001e90e498dfb3d36f951cb46d01b32870bf3212a`.
- [Sanctuary-Test-beta.105.mrpack](../build/Sanctuary-Test-beta.105.mrpack), 10102603 octets.
SHA-256 : `6398eb413ea45cf383b71d5be07cb1eef6995158fe0909b06deabb36c1623ce4`.