Integrate verified Sanctuary beta.110 with clay workshop, eggs and seasonal snow
Build Sanctuary / build (push) Canceled after 0s
Build Sanctuary / build (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,107 @@
|
||||
# EGGS-107 — Naissances en œufs et récupération des générateurs
|
||||
|
||||
Branche `codex/eggs-beta107`. Travail isolé du chantier Statuaire beta.106.
|
||||
Base vérifiée : sources de la livraison beta.105. État : livré localement, vérifié ; aucun déploiement ni publication.
|
||||
|
||||
## Contrat
|
||||
|
||||
Dans les mondes où Sanctuary est actif, une reproduction réussie remet un
|
||||
œuf natif de l'espèce au sol au lieu d'ajouter directement le nouveau mob.
|
||||
L'enfant est calculé par Minecraft : croisements, variantes, propriétaire et
|
||||
caractéristiques héritées sont conservés. Les délais, nourriture, statistiques
|
||||
et progrès restent ceux de la reproduction native. L'œuf d'un animal qui a un
|
||||
stade bébé fait naître un bébé, y compris avec un distributeur.
|
||||
|
||||
Grenouille : œuf de têtard, pour conserver son cycle naturel. Tortue et sniffer :
|
||||
œuf d'apparition de bébé à la place de la ponte. Allay : duplication contre
|
||||
améthyste et musique, avec le délai natif conservé. Villageois : nourriture et
|
||||
lit libre restent requis ; le lit réservé est libéré tant que l'œuf est stocké.
|
||||
|
||||
Un générateur classique réellement cassé par un joueur en survie, avec un outil
|
||||
adapté sans Toucher de soie, remet un seul œuf correspondant à son prochain mob
|
||||
configuré. Fortune ne multiplie pas ce résultat. Ni explosion, ni annulation de
|
||||
casse, ni mode créatif ne produisent cet œuf. Les générateurs d'épreuves ne sont
|
||||
pas transformés en source d'œufs par cette règle.
|
||||
|
||||
Les identifiants natifs des items restent inchangés. Les données de naissance
|
||||
utilisent les composants d'item natifs ENTITY_DATA et CUSTOM_DATA ; aucune
|
||||
migration de sauvegarde, régénération ou ouverture de monde personnel.
|
||||
Les naissances et pontes déjà présentes restent en place. Aucune modification
|
||||
hors des mondes Sanctuary ; un œuf déjà obtenu garde ses données de naissance.
|
||||
|
||||
Un catalogue distinct des 88 espèces sépare les voies livrées des propositions
|
||||
à valider. Les méthodes spéciales restantes ne sont pas annoncées comme livrées.
|
||||
|
||||
## Catalogue
|
||||
|
||||
[Les 88 espèces et leurs voies](spawn-eggs-catalogue-beta107.md) : 28 par
|
||||
reproduction ou duplication, 7 par les générateurs classiques vanilla et
|
||||
53 propositions. Réponse du créateur : **catalogue à valider d’abord**.
|
||||
Aucune des 53 propositions n’est implémentée dans ce ticket.
|
||||
|
||||
## Vérifications natives
|
||||
|
||||
Nouveau monde de test plat, graine `107`, Minecraft 26.3 / Fabric 0.160.5+26.3,
|
||||
Java 25, macOS. Le test utilise le vrai client et son serveur intégré :
|
||||
|
||||
- Naissance native de 22 espèces via `Animal.spawnChildFromBreeding` : un seul
|
||||
œuf, aucun enfant vivant ajouté, âge de bébé stocké, délai des deux parents.
|
||||
- Cheval × âne → mule ; moutons rouge × bleu → bébé violet, à la pose et au clic
|
||||
sur un adulte ; loup apprivoisé → bébé encore lié au même propriétaire.
|
||||
- Sérialisation/relecture de l’item avec le codec natif ; position, UUID et
|
||||
réservations de cerveau absents ; éclosion en survie consomme un œuf.
|
||||
- Vrai comportement de distributeur : bébé et couleur héritée.
|
||||
- Grenouille sans seconde ponte, tortue sans état de ponte, renifleur sans œuf
|
||||
bloc supplémentaire ; allay avec délai conservé ; villageois avec résultat
|
||||
vide pour que l’appelant rende le lit réservé, bébé à l’éclosion.
|
||||
- Existence native des 88 œufs ; destruction réelle d’un générateur par le
|
||||
contrôleur joueur avec pioche normale/Fortune/Toucher de soie, main vide,
|
||||
créatif et règle de drops de blocs désactivée.
|
||||
- Deuxième monde neuf, Sanctuary désactivé à la création : bébé de vache vivant,
|
||||
aucun œuf et générateurs sans nouveau butin.
|
||||
|
||||
Les appels natifs de naissance sont testés directement ; il ne s’agit pas d’un
|
||||
élevage de chaque espèce laissé tourner pendant plusieurs minutes. Les tests
|
||||
n’effectuent pas de parcours complet de raid, donjon ou guérison : ces voies
|
||||
spéciales sont des propositions. Aucun monde personnel modifié.
|
||||
|
||||
## Binaire et distribution
|
||||
|
||||
`./gradlew check build assemblePack assembleTestPack -x :sanctuary:runGameTest`
|
||||
réussit : **125 tâches, 3 min 44 s**. Le serveur GameTest dédié reste exclu,
|
||||
l’acceptation de son EULA n’étant pas autorisée. Les tests natifs ci-dessus
|
||||
utilisent le serveur intégré ; dernier passage **29 s**, marqueur
|
||||
`EGGS107_NATIVE_PASS`, après les derniers changements de code.
|
||||
|
||||
Commande des essais :
|
||||
|
||||
```sh
|
||||
./gradlew :sanctuary:runClientGameTest -PsanctuaryClientTests=true \
|
||||
-PsanctuaryEggs107ClientTests=true -PsanctuaryClientNoVsync=true \
|
||||
-PsanctuaryQuickTests=true
|
||||
```
|
||||
|
||||
L’assemblage et les essais se font dans le worktree voisin
|
||||
`sanctuary-eggs-beta107`, branche `codex/eggs-beta107`, sur les sources vérifiées
|
||||
de beta.105. Les changements propres aux œufs sont aussi intégrés au répertoire
|
||||
principal sans réécrire le code ni les compteurs en cours du chantier beta.106.
|
||||
**Ces archives ne contiennent pas le Statuaire beta.106 en cours de validation.**
|
||||
Les compteurs du worktree et du pack livré sont tous `beta.107`.
|
||||
|
||||
Comparaison binaire avec beta.105 : neuf classes ajoutées, aucune ancienne classe
|
||||
modifiée. Les seules ressources graphiques/données différentes sont les deux
|
||||
fichiers de langue FR/EN, avec deux nouveaux libellés ; le pack de textures,
|
||||
les recettes et la génération restent byte pour byte identiques. Les mixins
|
||||
ajoutés figurent dans le manifeste. Sources/JAR, ZIP, versions, dépendances,
|
||||
88 lignes uniques du catalogue et empreintes sont vérifiés.
|
||||
|
||||
- [Pack normal](../build/Sanctuary-beta.107.mrpack) — SHA-256
|
||||
`1b92c5abcc07be9c36d507d2ffdaf6d420a541c6624f105f8643594a02884600`.
|
||||
- [Pack de test](../build/Sanctuary-Test-beta.107.mrpack) — SHA-256
|
||||
`db9e32591cb263667b397fdb78738fbe45f58689b5574f2cb483f076635e7eef`.
|
||||
|
||||
Logs et reçus ignorés : `build/eggs107-check-build.log`,
|
||||
`build/eggs107-native.log`, `build/eggs107-artifact.json`,
|
||||
`build/eggs107-source-manifest.json`. Les fichiers sources des tests sont inclus
|
||||
dans le dépôt ; aucune classe de test n’est embarquée dans le mod livré.
|
||||
Aucun test Windows, installation Prism, publication du canal, commit ou tag.
|
||||
Reference in New Issue
Block a user