
Paginated Advancements & Custom Frames — Minecraft Java Edition 1.18.1 - 26.1+
Dépendances · Chargeur : Fabric, NeoForge, Quilt · Version de Minecraft : 1.18.1 - 26.1+ · Version du mod : 2.8.2 · Dépendances…
Dépendances · Chargeur : Fabric, NeoForge, Quilt · Version de Minecraft : 1.18.1 - 26.1+ · Version du mod : 2.8.2 · Dépendances obligatoires : Fabric API, Cloth Config API (pour les versions Fabric/Quilt et NeoForge ant
Dépendances
· Chargeur : Fabric, NeoForge, Quilt
· Version de Minecraft : 1.18.1 - 26.1+
· Version du mod : 2.8.2
· Dépendances obligatoires : Fabric API, Cloth Config API (pour les versions Fabric/Quilt et NeoForge antérieures à 2.8.0)
L'interface vanille des progrès limite l'affichage des onglets. La fenêtre standard a une largeur et une hauteur fixes, conçues uniquement pour six onglets. Si l'on installe un gros assemblage de modifications où chaque grand mod ajoute sa propre branche de progression, les nouveaux onglets commencent à déborder de l'écran, à se chevaucher ou à disparaître complètement de l'interface. La modification Paginated Advancements & Custom Frames élargit la fenêtre standard du menu des progrès en ajoutant une navigation par pages, un système d'épinglage des branches prioritaires, un outil de débogage intégré et la prise en charge de cadres entièrement nouveaux pour les icônes à l'aide de packs de ressources ou de packs de données.
Principe technique de fonctionnement et résolution des limites de l'interface vanille
La classe vanille AdvancementsScreen utilise des coordonnées codées en dur pour le rendu de la fenêtre des progrès (la taille est de 252 sur 140 pixels). Les éléments de contrôle, tels que la grille des onglets et le rendu de l'arrière-plan, sont liés à des dimensions de fenêtre statiques, ce qui rend impossible la mise à l'échelle pour une résolution d'écran élevée. La classe AdvancementTab a également des limites rigides pour le dessin des icônes d'onglets sur le périmètre du cadre principal.
Paginated Advancements & Custom Frames introduit des modifications directement dans la logique de rendu de l'interface graphique du client à l'aide d'injections Mixin dans les classes MixinAdvancementsScreen et MixinAdvancementTab. Au lieu d'utiliser des constantes codées en dur, la modification intercepte l'initialisation de l'interface et lit les dimensions actuelles de la fenêtre de jeu. Sur la base de ces données, la taille optimale du cadre des progrès est calculée, lequel s'élargit de manière adaptative en occupant la majeure partie de l'écran.
Le système regroupe automatiquement tous les onglets enregistrés en pages distinctes (pagination). L'algorithme calcule le nombre maximal d'onglets pouvant tenir dans les limites des panneaux supérieur et inférieur de la fenêtre selon une formule qui tient compte de la largeur de la fenêtre et des marges définies. Si le nombre de branches de progrès dépasse la limite de la page, la modification crée des pages virtuelles supplémentaires et ajoute des boutons fléchés interactifs dans la partie inférieure de l'interface. Lors du changement de page, le moteur de rendu masque les onglets des pages inactives, ce qui empêche la surcharge de la mémoire vive par des objets graphiques et élimine les conflits de superposition des éléments.
Principales fonctionnalités et fonctions
La fonction principale de Paginated Advancements & Custom Frames est la réorganisation du menu graphique des progrès. La modification propose plusieurs outils pratiques pour la navigation :
· Pagination dynamique : Ajoute des flèches de changement de page dans le coin inférieur de la fenêtre des progrès. Les joueurs peuvent parcourir un nombre quelconque d'onglets, même si plus de cinquante modifications avec leurs propres chaînes de tâches sont activées dans l'assemblage.
· Épinglage des onglets : L'utilisateur peut ajouter n'importe quel onglet à la liste des favoris. Un bouton spécial en forme d'étoile est prévu à cet effet sur chaque onglet. Un onglet épinglé est automatiquement déplacé vers la première page et affiché en tête de liste, indépendamment de son ordre de tri alphabétique ou interne au jeu.
· Conservation de l'état de la session : Le mod mémorise le dernier onglet de progrès ouvert. En cas de fermeture du menu et de sa réouverture via la touche L, l'interface affichera le même onglet sur lequel le joueur s'était arrêté, au lieu de revenir au premier onglet standard.
· Débogueur de progrès (Advancement Debugger) : Un mode spécial pour les développeurs d'assemblages et les auteurs de quêtes. Il s'active dans la configuration ou lors de l'activation des info-bulles avancées (touches F3 + H). Lorsque le curseur survole une icône de progrès, une fenêtre d'info-bulle supplémentaire s'affiche avec des informations techniques : l'identifiant interne (par exemple, minecraft:adventure/arbalistic) et la liste des déclencheurs (conditions) requis pour l'accomplissement. La combinaison de touches Ctrl + C copie l'identifiant du progrès sélectionné dans le presse-papiers.
Configuration, compatibilité et écosystème
L'utilisateur peut modifier les paramètres d'affichage du menu des progrès via le fichier de configuration. L'emplacement et le format du fichier dépendent du chargeur de modifications :
· Fabric et Quilt : Pour que les paramètres fonctionnent, l'installation de la bibliothèque Cloth Config API est nécessaire. Les paramètres sont écrits dans le fichier paginatedadvancements.json (ou paginatedadvancements.json5) dans le dossier config.
· NeoForge : Les versions du mod à partir de 2.8.0 utilisent le système de configuration intégré de NeoForge, ce qui exclut le besoin de bibliothèques supplémentaires. Le fichier est généré sous le nom paginatedadvancements-client.toml dans le dossier config.
Les paramètres clés suivants sont disponibles dans le fichier de configuration :
· showDebugTooltips – une valeur booléenne (true ou false) qui contrôle l'affichage des informations techniques pour le débogage des progrès.
· maxDebugLines – un nombre entier qui limite le nombre maximal de lignes de déclencheurs dans la fenêtre d'info-bulle, empêchant le texte de déborder de l'écran en cas de grand nombre d'exigences.
· disableBackgroundFade – un paramètre pour désactiver l'assombrissement de l'arrière-plan du jeu pendant la consultation du menu des progrès.
· spacing – le pas en pixels pour régler la distance entre les onglets voisins sur le panneau.
· enablePinning – autorise ou interdit aux joueurs d'épingler les onglets sélectionnés.
La modification prend en charge un système de personnalisation des icônes via le mécanisme Custom Frames (cadres personnalisés). Par défaut, Minecraft propose trois types de cadres : task (tâche ordinaire), goal (objectif) et challenge (défi). Le mod permet de créer de nouveaux types à l'aide de packs de données.
Pour ajouter un nouveau cadre, il faut créer un fichier JSON dans le pack de données au chemin suivant :
assets/<identifiant_du_mod>/advancement_frame_types/<nom_du_cadre>.json
Exemple de contenu du fichier :
{ |
Les textures du cadre sont placées aux chemins suivants :
· assets/<identifiant_du_mod>/textures/gui/sprites/advancements/<nom_du_cadre>_unobtained.png – aspect du cadre avant l'accomplissement du progrès.
· assets/<identifiant_du_mod>/textures/gui/sprites/advancements/<nom_du_cadre>_obtained.png – aspect du cadre après l'accomplissement.
Pour associer le cadre créé à un progrès spécifique, on utilise un fichier de mappage dans le pack de données au chemin assets/<identifiant_du_mod>/advancement_frames/<nom_du_fichier>.json :
[ |
Le mod a été développé comme un utilitaire purement côté client, c'est pourquoi il ne nécessite pas d'installation sur le serveur. Il est entièrement compatible avec les grands mods industriels et magiques (tels que Create, Ender IO, Botania) qui ajoutent des systèmes de quêtes complexes et de nombreux onglets de progrès. Pour les utilisateurs de l'ancien chargeur Forge, une adaptation non officielle du mod sous le nom de ForgedPaginatedAdvancements est disponible. Pour lancer les dernières versions du mod sur la plateforme NeoForge 26.1+, l'utilisation de l'environnement d'exécution Java 25 est obligatoire.
Conclusion
Paginated Advancements & Custom Frames résout efficacement le problème de l'espace limité de l'interface vanille des progrès, qui devient critique dans les grands assemblages de modifications. Contrairement à son équivalent Better Advancements, qui met principalement la fenêtre à l'échelle sans ajouter de pages, ce mod propose une séparation claire en pages et un épinglage pratique des onglets. La modification facilite le travail des développeurs d'assemblages modifiés grâce au débogueur intégré et au système flexible d'enregistrement de nouveaux types de cadres via les structures JSON des packs de données. La seule limite notable est la nécessité de créer des packs de ressources clients supplémentaires pour un affichage correct des cadres graphiques personnalisés.
Installation
Une installation classique prend environ 5 minutes. Le déroulé est le même ; seuls le loader et le build correspondant changent.
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











