Files
sanctuary-beta/docs/swimming-recipebook-beta017.md
2026-09-15 09:29:11 +02:00

8.8 KiB
Raw Permalink Blame History

beta.017 — aptitudes Nage/Sallonger/Repos et retrait du livre de recettes

Ticket du 13 septembre 2026, branche codex/swimming-recipebook-beta017. Contrat préalable aux changements de progression et d'interface.

Nage

Nouvelle aptitude achetable swimming, libellés Nage / Swimming, coût par défaut 4 niveaux réglable par swimmingCost côté serveur. Elle reste dans la liste des aptitudes et suit leur conservation générale après mort et New Game+. Les six compétences au maximum suffisent toujours au prestige.

Sans cette aptitude, les joueurs Sanctuary en survie/aventure gardent les mouvements lents dans l'eau, la flottabilité et la possibilité de remonter. Le sprint aquatique et la posture de nage rapide sont refusés sur les deux côtés logiques, y compris en entrant dans l'eau alors qu'on court. Sur terre, le sprint reste disponible selon la faim. Après achat, le sprint aquatique suit les règles de faim existantes : plus de six points de nourriture. Respiration, bulles vanilla, bateaux, rampement dans les petits espaces et mouvements des animaux restent inchangés. Créatif/spectateur et joueurs sans progression Sanctuary gardent leur comportement natif.

Sallonger

Nouvelle aptitude lying, Sallonger / Lie down, 4 niveaux par défaut, configurable par lyingCost. W bascule la position et se configure dans Contrôles → Sanctuary. Le défaut résout la lettre W selon la disposition active du clavier, y compris AZERTY ; les raccourcis personnalisés restent prioritaires. Elle autorise la posture basse native et le déplacement lent au sol. La touche relève le personnage quand l'espace le permet ; les collisions natives gardent la posture basse sous un plafond trop bas. Pas de sommeil, soin ou changement d'heure. L'entrée dans l'eau, le vol, le véhicule, le lit ou la mort arrêtent la position volontaire.

La posture temporaire utilise sanctuary:lying synchronisé du serveur aux clients qui voient le joueur, sans persistance ni copie à la mort. L'aptitude, elle, reste dans l'historique et après le prestige. La requête réseau contient un état souhaité et une révision ; le serveur vérifie l'achat et la position au sol avant de l'accepter. En créatif, on peut tester la posture sans achat.

Se reposer

Aptitude distincte resting, Se reposer / Rest, 4 niveaux par défaut, coût restingCost. Maj + W (Maj + la touche configurée pour Sallonger) commence ou arrête le repos. W seul quitte également toute position basse. V reste libre pour le vocal. Le repos permet sa propre posture immobile, sans imposer un autre achat ; Sallonger autorise séparément la posture mobile au sol.

Survie/aventure : toutes les 200 ticks serveur (10 secondes à 20 TPS), récupérer 1 point de vie (un demi-cœur) contre 1 point de faim (une demi-barre). Aucun soin si la santé est pleine ou si la faim est vide ; aucune consommation sans soin. Le repos n'affecte ni le temps ni le point de réapparition. Bouger, recevoir des dégâts, quitter le sol ou entrer dans une situation incompatible interrompt le repos. Le délai recommence à chaque nouvelle séance, sans soin immédiat en répétant la touche. Le créatif permet de tester la posture sans produire de soin artificiel. La régénération naturelle de Minecraft garde ses règles.

Migration additive

ProgressRecord passe de 8 à 9 et ajoute swimming: false, lying: false et resting: false aux anciens habitants, sans changer leurs achats, XP, compétences, aptitudes, révision ou prestige. L'achat ajoute une preuve dans l'historique ; le New Game+ la conserve. Les événements historiques du journal de cycle restent intacts, leurs données de progression sont lues avec la migration existante étendue. Aucun ancien journal n'est réécrit. Les états inconnus/corrompus restent refusés.

La configuration de progression passe de 4 à 5 : ajouter swimmingCost: 4, lyingCost: 4 et restingCost: 4, conserver tous les autres réglages. Écriture atomique uniquement lors de cette migration ou création initiale. Capacité réseau sanctuary:swimming_v1 : client et serveur beta.017 ensemble. Requête sanctuary:lying pour la posture (0 debout, 1 allongé, 2 repos). Aucun monde personnel n'est modifié.

Livre de recettes

Quand le mod est installé, retirer le bouton et le panneau natifs des écrans Inventaire, Établi, Four, Haut-fourneau et Fumoir, y compris un ancien réglage « livre ouvert ». Retirer aussi les recettes fantômes du panneau et les toasts qui demandent de consulter le livre. Conserver les grilles, les sorties de fabrication, les recettes serveur, leurs statistiques et les advancements. La fabrication manuelle reste libre, selon la règle de jeu existante.

L'intégration d'une version modifiée de Just Enough Items révélant ses recettes selon les advancements Minecraft constitue la direction suivante ; ce ticket n'installe pas JEI et ne prétend pas implémenter ce catalogue. Son intégration exige une version compatible avec Minecraft 26.3-pre-2 et son propre contrat révélation/catalogue. Le Blocodex reste utilisable.

Prix des compétences

Le texte 1/7 (ou 3/10) à côté de chaque jauge ASCII est remplacé par le prix serveur du prochain rang, par exemple 4 niv. / 4 lv.. Au maximum : Max.. La jauge conserve la position actuelle, le bouton + garde son contrôle d'XP et le bouton reste réservé aux opérateurs. Les colonnes partagent la largeur nécessaire aux prix de la configuration, y compris dans une petite interface.

Son des Premiers pas

Chaque étape récompensée par de l'XP joue le son vanilla de ramassage d'expérience pour le joueur concerné. Le serveur envoie ce son avec le gain effectif : pas de répétition sur une étape déjà validée, à la reconnexion ou si la récompense vaut zéro. Les réglages audio de Minecraft restent appliqués. Aucun nouveau fichier sonore, attachement ou message réseau Sanctuary n'est nécessaire.

Livraison et vérifications

Le 13 septembre 2026, avec Java 25, Minecraft 26.3-pre-2, Fabric Loader 0.19.5 et Fabric API 0.160.0+26.3 :

  • ./gradlew check build assemblePack -PsanctuaryFocusedTests=progression,mining,building,inventory,cycle,inventoryflow,sorting,tutorial,movement : contrôles purs et 62 tests serveur réussis, 4 min 24 s ; journal build/movement017-check-build.log.
  • Après les derniers ajouts son/clavier, ./gradlew check build assemblePack -PsanctuaryFocusedTests=progression,tutorial,movement : 15 tests serveur réussis, tous les contrôles purs et assemblage validés, 4 min 20 s ; build/movement017-final-build.log.
  • ./gradlew :sanctuary:runClientGameTest -PsanctuaryClientTests=true -PsanctuaryMovementClientTests=true : parcours client natif réussi en 1 min 33 s ; build/movement017-final-client.log. Monde jetable de graine 42, capture des interfaces FR/EN : achat des trois aptitudes, déplacement lent et remontée avant achat, nage rapide après achat, W selon la disposition du clavier, Maj+W, soin après dix secondes, interruption par mouvement, remappage sur G, absence de conflit avec le double-Maj pour s'asseoir, cinq écrans sans livre à deux échelles et fabrication manuelle réelle. Le client reçoit un son d'XP à l'ouverture de l'inventaire et un autre lors de la fabrication des planches ; vingt répétitions du signal n'en produisent aucun. Les six lignes affichent le prix serveur du prochain rang, sans ratio redondant.

Les tests serveur utilisent un monde de développement de graine 0 et couvrent aussi les paquets périmés/refusés, les coûts, la faim, les délais de repos, l'absence de changement d'heure, les dégâts, les modes de jeu, les données temporaires non sauvegardées et la conservation des aptitudes après mort/New Game+. Les contrôles purs vérifient les migrations additives, les réglages personnalisés et le refus des nouveaux champs corrompus. Les premiers essais de clic client utilisaient le code souris 0 ; la version native exige MOUSE_BUTTON_LEFT (1). La correction porte sur le test ; la fabrication native était fonctionnelle.

Export local : Sanctuary-beta.017.mrpack, 2 567 056 octets. Vérificateur build/verify-beta017-pack.py, reçu build/movement017-artifact.json : ZIP/CRC, versions internes, JAR et Demeure imbriqué identiques aux builds, dépendances, mixins, textes FR/EN et six PNG identiques aux sources du resource pack. Les exports beta.003016 restent identiques.

SHA-256 MRpack : 4f07c8070aa2b3f5b256f070a236b0fd56b37d7ec8ddc974a30dc7dfc1f8a41a. SHA-256 JAR : 058ce9f24ff15da2c362a92fef648deeaee9019e7f177c503dee096666429325.

Le pack contient les récompenses et textures beta.016 ; la respiration du HUD reste vanilla. Aucune installation personnelle ni canal packwiz publié n'a été modifié. JEI et la révélation de son catalogue par advancements restent à développer.