Record Sanctuary sources through beta.060 and Git validation
Build Sanctuary / build (push) Canceled after 0s
Build Sanctuary / build (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
# beta.046 — ciel dessiné, bateau à poule, zoom et identité de l’application
|
||||
|
||||
## Gestes et règles
|
||||
|
||||
Longue-vue en main principale ou secondaire, en première personne : un clic
|
||||
gauche sur une étoile choisit l’étoile mère, puis un clic gauche sur une autre
|
||||
étoile ajoute un trait depuis la précédente, pour trois niveaux. Aucun zoom
|
||||
n’est requis. Clic droit annule la dernière liaison de cette constellation ;
|
||||
Maj + clic gauche choisit une autre étoile mère. La suppression est gratuite,
|
||||
sans remboursement. Chacun peut retirer ses propres traits. Les étoiles qui
|
||||
portent les accomplissements restent intactes. Tous les habitants voient le dessin.
|
||||
|
||||
La couleur est tirée de manière déterministe depuis l’identité de l’étoile mère,
|
||||
dans une palette de 64 teintes : elle reste stable après annulation, reconnexion
|
||||
et redémarrage. Les traits suivent la même rotation hebdomadaire que les étoiles.
|
||||
La géométrie GPU est conservée entre les images et passe dans le rendu natif
|
||||
des étoiles, avec au plus 64 groupes de couleur ; aucune reconstruction quand
|
||||
on tourne la caméra. Les moteurs de shaders externes ne sont pas certifiés ici.
|
||||
|
||||
Une poule vivante embarquée avec le joueur permet de voler en bateau : Espace
|
||||
monte, relâcher descend. Le joueur pilote même si la poule est montée en premier.
|
||||
Montée et descente visent chacune cinq blocs/seconde, avec une accélération
|
||||
progressive. Au retour sur l’eau, relâcher laisse fonctionner la flottabilité.
|
||||
Les collisions et les dégâts restent natifs ; le vol remet à zéro la distance
|
||||
de chute. Sans poule ou sans pilote, la physique native reprend.
|
||||
Les paramètres serveur config/sanctuary/chicken-boat.json expriment les vitesses
|
||||
et l’accélération en blocs/tick ; ils sont synchronisés avec les clients.
|
||||
Le contrôle natif de vol du véhicule reconnaît ce cas sans activer Allow Flight
|
||||
pour les autres véhicules.
|
||||
|
||||
L’aptitude Zoom coûte quatre niveaux. C est sa touche initiale,
|
||||
reconfigurable ; en la maintenant, la molette règle le FOV de 5° à 110°
|
||||
(Quake Pro). Relâcher restaure immédiatement le FOV normal, qui n’est jamais
|
||||
réécrit dans les options. Le panoramique natif conserve ses six faces à 90°.
|
||||
Aucun objet caméra n’est ajouté.
|
||||
|
||||
Les dix aptitudes portent désormais les icônes PNG 9 × 9 fournies par le
|
||||
créateur, placées à gauche de leur titre. Les titres longs passent à la ligne
|
||||
dans la colonne. Les fichiers sont copiés sans retouche dans le mod et le
|
||||
resource pack, sous assets/sanctuary/textures/gui/aptitudes/. Familiarpower
|
||||
illustre le pouvoir actif ; Familiar illustre l’étude des familiers.
|
||||
|
||||
Le titre de fenêtre devient Sanctuary - beta.046, y compris après connexion
|
||||
ou déconnexion. La fenêtre utilise l’icône officielle via le chargement SDL
|
||||
natif de Minecraft sur Windows, Linux et macOS ; les métadonnées SDL et le
|
||||
modèle d’instance Prism portent aussi le nom Sanctuary. L’icône d’une application
|
||||
tierce comme le lanceur Prism n’est pas remplacée.
|
||||
|
||||
## Données et compatibilité
|
||||
|
||||
Les étoiles existantes gardent leur journal intact. Un journal distinct
|
||||
data/sanctuary-constellations.json, schéma 1, conserve les ajouts payés et les
|
||||
annulations, lié à l’identifiant du ciel. Le reçu joueur additif
|
||||
sanctuary:constellation_xp_paid est sauvegardé avec l’XP, copié à la mort, et
|
||||
réconcilié avant le reset New Game+ pour éviter un deuxième débit après arrêt.
|
||||
Un fichier invalide est conservé et ses mutations sont refusées.
|
||||
|
||||
Le zoom utilise le booléen persistant additif sanctuary:zoom_learned, absent
|
||||
donc faux avant achat, copié à la mort et conservé par le New Game+.
|
||||
Aucune réécriture des historiques de progression ni modification du terrain.
|
||||
Les nouveaux paquets ont des identifiants sanctuary:*_v1 distincts.
|
||||
Les factions et leur migration sont décrites dans
|
||||
[faction-two-slots-beta046.md](faction-two-slots-beta046.md).
|
||||
|
||||
## Vérifications et livraison
|
||||
|
||||
Le parcours client natif passe sur macOS : achat réel du zoom, verrouillage
|
||||
avant achat, projection mesurée à 5° et 110°, restauration au relâchement,
|
||||
clics de création et d’annulation d’une liaison, dépense de trois niveaux,
|
||||
vol continu après embarquement de la poule, montée et descente mesurées.
|
||||
Le titre de fenêtre et les métadonnées SDL sont contrôlés au menu et en jeu.
|
||||
Les captures de jeu et du défilement des dix icônes FR/EN sont conservées
|
||||
dans `build/beta046-evidence/`.
|
||||
|
||||
Les 20 GameTests serveur ciblés passent, dont quatre nouveaux scénarios sur
|
||||
les liaisons, la récupération après arrêt, le bateau et l’achat du zoom.
|
||||
Ils vérifient les droits du propriétaire, les refus sans XP, les doublons,
|
||||
la conservation à la mort et au prestige et les fichiers invalides préservés.
|
||||
Le premier essai avait une assertion incorrecte sur l’ordre des passagers :
|
||||
Minecraft replace nativement le joueur devant la poule à l’embarquement.
|
||||
L’assertion a été corrigée sans changer la physique validée dans le client.
|
||||
|
||||
Commandes reproductibles avec Java 25 :
|
||||
|
||||
```sh
|
||||
./gradlew :sanctuary:runClientGameTest -PsanctuaryClientTests=true -PsanctuaryQuickTests=true -PsanctuarySkyFlightClientTests=true -PsanctuaryClientNoVsync=true
|
||||
./gradlew check build assemblePack assembleTestPack -PsanctuaryFocusedTests=cycle,operator,skyflight
|
||||
```
|
||||
|
||||
`sanctuaryClientNoVsync` contourne un blocage de présentation SDL/OpenGL du
|
||||
client automatisé. Ce mixin existe uniquement dans les tests, sans changer
|
||||
les réglages du pack livré. La validation graphique Windows/Linux, le Dock
|
||||
macOS et les moteurs de shaders tiers restent à effectuer.
|
||||
|
||||
`check build assemblePack assembleTestPack` passe avec la version finale.
|
||||
Les deux MRpacks sont vérifiés contre les 1 503 classes compilées, les ressources
|
||||
et les JAR imbriqués ; les dix icônes correspondent exactement aux originaux.
|
||||
Les exports et leurs empreintes sont consignés dans [Distribution](packwiz.md).
|
||||
Logs : `build/beta046-delivery.log` et `build/beta046-client.log`.
|
||||
Reçu : `build/beta046-artifact.json`.
|
||||
Reference in New Issue
Block a user