Files
sanctuary-beta/docs/flying-landing-beta101.md
T
2026-09-17 03:10:39 +02:00

59 lines
3.1 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.101 — Atterrissage des familiers volants
Branche `codex/flying-landing-beta101`, Minecraft 26.3.
Le profil de vol du familier doit désactiver laccumulation et le traitement des
chutes de son entité commune. Une descente pilotée, autonome ou un contact avec
le sol ne doit causer ni dégâts, ni animation/son de coup, ni entrée en combat.
Les vraies attaques et les chutes des familiers terrestres gardent leurs règles.
Aucun changement de navigation, de sauvegarde, de texture ou de terrain.
## Cause et correction
Lentité Sanctuary commune hérite de `PathfinderMob`. Son contrôle de vol et
labsence de gravité ne remplacent pas les méthodes natives de chute. Ces
méthodes pouvaient appeler `FamiliarBattle.hurt`, produire son animation/son de
coup, interrompre une technique et enregistrer du combat.
`checkFallDamage` remet maintenant la distance à zéro pour les profils volants.
`causeFallDamage` refuse aussi un appel avec une distance déjà calculée, avant
les sons et les dégâts natifs. Les autres profils délèguent toujours au code
Minecraft. Les sources de dégâts ordinaires ne sont pas filtrées.
## Validation
Reproduction native sur beta.100 : le perroquet accepte le callback de chute,
et lassertion « Flying familiar rejects native fall callback » échoue.
Journal conservé : `build/landing101-before.log`.
`Landing101ClientChecks` réussit après correction en **1 min 5 s**, dans un
nouveau monde plat de développement avec le serveur intégré :
- Les douze espèces du registre ayant un profil volant : perroquet,
chauve-souris, abeille, allay, Wither, breeze, phantom, vex, blaze, ghast,
ghast joyeux et dragon.
- Callback natif de chute à sept blocs, descente à 0,25 bloc par tick jusquau
contact réel avec le sol, puis mouvement rapide vers le sol.
- Santé inchangée, distance de chute nulle et absence de mise à jour de
`lastHurt`, donc pas de passage dans la branche qui diffuse le faux coup.
- Une attaque de zombie reste acceptée et enlève de la santé pour chaque espèce.
- Un loup terrestre conserve les dégâts de sa chute.
Les descentes sont pilotées par le test via les collisions natives ; ce nest
pas un nouveau playtest de tous les trajets autonomes ou un essai multiclient.
Journal : `build/landing101-client.log`. Aucun monde personnel nest utilisé.
`check build assemblePack assembleTestPack` réussit en **2 min 22 s**,
124 tâches, avec le serveur dédié exclu (`-x :sanctuary:runGameTest`).
Les archives normal/Test embarquent le même JAR vérifié et ses sources exactes.
Seul `FamiliarEntity` et les numéros de ligne de deux classes internes changent
par rapport à beta.100. Les ressources, textures et archives beta.100 sont
conservées. Reçu : `build/beta101-artifact.json`. Aucun déploiement personnel
ni publication du canal packwiz.
## Archives
- [Sanctuary-beta.101.mrpack](../build/Sanctuary-beta.101.mrpack), 9914792 octets.
SHA-256 : `3008127d2bb09556c4997c00350e82ff26af5402b69bc7c09c822b24ff4bfe74`.
- [Sanctuary-Test-beta.101.mrpack](../build/Sanctuary-Test-beta.101.mrpack), 9933717 octets.
SHA-256 : `854a8b6a42ac7ca0236e0c19b9000808535df273911b9c6a72844097a49358a0`.