3.1 KiB
beta.101 — Atterrissage des familiers volants
Branche codex/flying-landing-beta101, Minecraft 26.3.
Le profil de vol du familier doit désactiver l’accumulation 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
L’entité Sanctuary commune hérite de PathfinderMob. Son contrôle de vol et
l’absence 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 l’assertion « 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 jusqu’au 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 n’est
pas un nouveau playtest de tous les trajets autonomes ou un essai multiclient.
Journal : build/landing101-client.log. Aucun monde personnel n’est 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, 9914792 octets.
SHA-256 :
3008127d2bb09556c4997c00350e82ff26af5402b69bc7c09c822b24ff4bfe74. - Sanctuary-Test-beta.101.mrpack, 9933717 octets.
SHA-256 :
854a8b6a42ac7ca0236e0c19b9000808535df273911b9c6a72844097a49358a0.