Mod Menu pour Minecraft 1.20.1, 1.21.1
Ajoute un menu de mods pour consulter la liste des mods que vous avez installés.
Mod Menu

Mod Menu vous permet de consulter les mods que vous avez installés et, si le mod le prend en charge, d'accéder rapidement et facilement aux écrans de configuration du mod.
Mod Menu prend également en charge des fonctionnalités plus avancées, comme les noms et descriptions de mods traduisibles, la prise en charge du formatage QuickText dans les descriptions de mods grâce à la Text Placeholder API de Patbox, le filtrage des mods de bibliothèque parmi les mods classiques, un vérificateur de mises à jour pour les mods hébergés sur Modrinth ou qui fournissent leurs propres sources de mise à jour, et une configuration approfondie de toutes les fonctionnalités que nous proposons.

Plateformes prises en charge
Mod Menu est actuellement disponible pour Fabric ou Quilt sur Minecraft : Java Edition 1.14 ou plus récent.

Développeurs
Mod Menu inclut un certain nombre d'API permettant aux développeurs d'améliorer l'apparence de leur mod dans Mod Menu. Celles-ci prennent la forme de clés de langue, de métadonnées JSON et même d'une API Java.
API de traduction
Vous pouvez traduire le nom, le résumé et la description de votre mod sans toucher au moindre code Java. Ajoutez simplement des clés de traduction au format pris en charge dans la langue de votre choix.
Documentation de l'API de traduction
Voici un exemple des traductions de Mod Menu en Pirate Speak. Pour créer les vôtres, remplacez simplement modmenu à la fin (PAS celui du début) de la clé de traduction par votre propre ID de mod, par exemple modmenu.descriptionTranslation.traverse.
enpt.json
"modmenu.nameTranslation.modmenu": "Menu o' mods!", "modmenu.descriptionTranslation.modmenu": "Menu o' mods ye installed matey!", "modmenu.summaryTranslation.modmenu": "Menu o' mods ye installed matey!"
La traduction du résumé est redondante ici et n'a pas besoin d'être incluse puisqu'elle est identique à la description, mais elle a été incluse pour montrer que vous pouvez traduire le résumé (une courte description du mod en une phrase) séparément de la description, même en anglais !
API de métadonnées Fabric
Il y a un certain nombre de choses que vous pouvez ajouter uniquement avec des métadonnées dans votre fabric.mod.json.
Toutes ces choses sont ajoutées dans un bloc personnalisé de votre fabric.mod.json pour les métadonnées de Mod Menu. Voici un exemple d'utilisation de nombreuses fonctionnalités que cette API propose :
fabric.mod.json
{ ... "custom": { "modmenu": { "links": { "modmenu.discord": "https://discord.gg/jEGF5fb" }, "badges": [ "library", "deprecated" ], "parent": { "id": "example-api", "name": "Example API", "description": "Modular example library", "icon": "assets/example-api-module-v1/parenticon.png", "badges": [ "library" ] }, "updatechecker": true } } }
Documentation de l'API de métadonnées Fabric
Badges ("badges": [ ])
Bien que le badge Client soit ajouté automatiquement aux mods définis comme côté client uniquement (définissez "environment": "client" dans fabric.mod.json pour cela.), d'autres badges comme les badges Library et Deprecated nécessitent d'être définis ici.
Valeurs prises en charge :
- library - doit être attribué aux mods qui ne sont que des dépendances pour d'autres mods et qui ne doivent pas être montrés à l'utilisateur par défaut, sauf s'il les active.
- deprecated - doit être attribué aux mods qui n'existent que pour des raisons d'héritage, comme un ancien module d'API ou autre.
Tous les autres seront ignorés, et Mod Menu ne prend pas en charge l'ajout de vos propres badges. Vous pouvez ouvrir un ticket ici si vous avez un cas d'usage convaincant pour un nouveau badge.
Liens ("links": { })
L'objet links permet aux auteurs de mods d'ajouter des hyperliens personnalisés à la fin de leur description. Si vous spécifiez un contact sources dans les métadonnées officielles de fabric.mod.json, il sera également inclus dans la section des liens.
Toute clé dans l'objet links sera incluse dans la section des liens, la clé étant utilisée comme clé de traduction. Par exemple, ceci :
fabric.mod.json
"custom": { "modmenu": { "links": { "modmenu.discord": "https://discord.gg/jEGF5fb" } } }
s'affichera comme un lien avec le texte "Discord", puisque "Discord" est la traduction anglaise de "modmenu.discord" fournie par Mod Menu.
Mod Menu fournit plusieurs traductions par défaut qui peuvent être utilisées pour les liens. Une liste complète est visible dans le fichier de langue de Mod Menu ici. Toutes les clés de traduction de liens par défaut prennent la forme modmenu..
Vous pouvez également fournir vos propres traductions si vous souhaitez ajouter des liens personnalisés. Assurez-vous d'utiliser votre propre namespace (et non modmenu) pour toutes les clés personnalisées.
Parents ("parent": "modid" ou { })
Les parents servent à afficher un mod comme enfant d'un autre. Cela est destiné aux mods divisés en différents modules. L'élément suivant dans un fabric.mod.json définira le mod comme enfant du mod 'flamingo' :
fabric.mod.json
"custom": { "modmenu": { "parent": "flamingo" } }
Cependant, si vous voulez regrouper des mods sous un parent, mais que le parent n'est pas un vrai mod, vous pouvez aussi le faire. Dans l'exemple ci-dessous, un mod définit des métadonnées pour un parent. Assurez-vous que ces métadonnées sont incluses dans tous les enfants qui utilisent le parent factice/fictif. Cela peut aussi servir de solution de repli pour un parent optionnel, il sera remplacé par les vraies métadonnées du mod si elles sont présentes.
fabric.mod.json
"custom": { "modmenu": { "parent": { "id": "this-mod-isnt-real", "name": "Fake Mod", "description": "Do cool stuff with this fake mod", "icon": "assets/real-mod/fake-mod-icon.png", "badges": [ "library" ] } } }
Les mods parents factices ne prennent en charge que les métadonnées suivantes :
- id (String)
- name (String)
- description (String)
- icon (String)
- badges (Array of Strings)
Désactiver le vérificateur de mises à jour ("updatechecker": false)
Par défaut, le vérificateur de mises à jour de Mod Menu utilisera le hash du jar de votre mod pour rechercher la dernière version sur Modrinth. S'il trouve un projet correspondant, il vérifiera la dernière version qui prend en charge votre loader de mods et votre version de Minecraft, et si elle a un hash différent de votre fichier existant, il indiquera à l'utilisateur qu'une mise à jour est disponible.
Vous pouvez désactiver le vérificateur de mises à jour en définissant updatechecker sur false dans vos métadonnées Mod Menu comme ceci :
fabric.mod.json
"custom": { "modmenu": { "updatechecker": false } }
API de métadonnées Quilt
Comme Mod Menu prend aussi en charge Quilt, les mêmes API que dans la section API de métadonnées Fabric sont également disponibles pour les mods Quilt, mais le format des métadonnées personnalisées est légèrement différent.
Au lieu d'un bloc "modmenu" à l'intérieur d'un bloc "custom", vous placez le bloc "modmenu" comme élément de l'objet racine. Cela devrait donc ressembler à :
quilt.mod.json
{ ... "modmenu": { // C'est ici que vont vos liens, badges, etc. } }
API Java
Pour utiliser l'API Java, vous devrez ajouter Mod Menu comme dépendance de compilation dans votre projet gradle. Cela ne rendra pas votre mod dépendant de Mod Menu, mais il sera présent dans votre environnement pour que vous puissiez tester avec.
build.gradle
// Add the Terraformers maven repo to your repositories block repositories { maven { name = "Terraformers" url = "https://maven.terraformersmc.com/" } }
// Add Mod Menu as a dependency in your environment dependencies { // Prior to Minecraft 26.x, use "modImplementation" instead implementation("com.terraformersmc:modmenu:${project.modmenuversion}") }
Ensuite, définissez la version de Mod Menu que vous utilisez dans votre gradle.properties. Vous pouvez obtenir le dernier numéro de version ici, mais vous pourriez avoir besoin d'une version différente si vous n'utilisez pas la dernière version de Minecraft. Consultez la page des versions pour une liste complète des versions.
gradle.properties
modmenuversion=VERSIONNUMBERHERE
Si vous ne voulez pas l'avoir dans votre environnement pour tester mais que vous voulez quand même compiler avec Mod Menu pour utiliser l'API Java, vous pouvez utiliser modCompileOnly au lieu de modImplementation (cela fonctionnera même si Mod Menu n'est pas mis à jour vers la version de Minecraft que vous utilisez).
Documentation de l'API Java
Pour commencer
Pour utiliser l'API, implémentez l'interface ModMenuApi sur une classe et ajoutez-la comme point d'entrée de type "modmenu" dans votre fabric.mod.json comme ceci :
fabric.mod.json
"entrypoints": { "modmenu": [ "com.example.mod.ExampleModMenuApiImpl" ] }
Écrans de configuration des mods
Les mods peuvent fournir une fabrique de Screen pour fournir un écran de configuration personnalisé à ouvrir avec le bouton de configuration. Implémentez la méthode getModConfigScreenFactory dans votre implémentation de l'API pour cela.
Le cas d'usage prévu est que les mods fournissent leurs propres écrans de configuration. L'ID de mod de l'écran de configuration est déterminé automatiquement par le conteneur du mod source d'où provient le point d'entrée.
Écrans de configuration fournis
Les mods peuvent fournir des fabriques de Screen pour fournir des écrans de configuration personnalisés à ouvrir avec les boutons de configuration d'autres mods également. Implémentez la méthode getProvidedConfigScreenFactories dans votre implémentation de l'API pour cela.
Le cas d'usage prévu est qu'un mod comme Cloth Config fournisse des écrans de configuration pour les mods qui utilisent son API.
Badges de modpack
Les mods peuvent donner aux autres mods le badge Modpack en implémentant la méthode attachModpackBadges, par exemple comme ceci :
@Override public void attachModpackBadges(Consumer consumer) { consumer.accept("modmenu"); // Indicates that 'modmenu' is part of the modpack }
Notez que les mods 'internal' comme Minecraft lui-même et le loader de mods ne peuvent pas recevoir le badge modpack, car ils ne sont pas distribués dans un modpack typique.
Méthodes utilitaires statiques
ModMenuApi propose également quelques méthodes utilitaires pour les mods qui veulent mieux fonctionner avec Mod Menu, comme créer leurs propres boutons Mods.
Créer une instance de l'écran Mods
Vous pouvez appeler cette méthode pour obtenir une instance de l'écran Mods :
Screen createModsScreen(Screen previous)
Créer un Text de bouton Mods
Vous pouvez appeler cette méthode pour obtenir le Text qui serait affiché sur un bouton Mods de Mod Menu :
Text createModsButtonText()
Comment installer Mod Menu
With Millida Launcher
Install Millida Launcher
The launcher is free: download it at millida.net/launcher and sign in with any nickname.
Click “Install” on this page
The launcher opens and installs the mod for Minecraft 1.16–26.3 on Fabric or Quilt automatically, together with its dependencies: Fabric API, Text Placeholder API.
Launch the game
A profile with it appears in the launcher: click “Play”.
Manually
Install Fabric or Quilt
The loader must match the game version of the mod file, for example Minecraft 26.3. After installing it, a separate profile appears in your launcher.
Download the file for your version
In the version list above, pick the file modmenu-21.0.0.jar (837 KB) for your game version and loader.
Put it in the mods folder
The folder is inside .minecraft (Windows: %appdata%\.minecraft\mods). If it does not exist, create it. Required dependencies go there too: Fabric API, Text Placeholder API.
Launch the loader profile
Open “Mods” in the main menu: Mod Menu should be in the list.
Mod Menu works on the player’s side only: there is no need to install it on a server.
Versions
Avec dépendances
| Minecraft | Loader | Fichier | Date | Actions |
|---|---|---|---|---|
| 26.2 | Fabric, Quilt | 26.2602 Ko 1 414 | ||
| 26.1.2 | Fabric, Quilt | 26.1.2840 Ko 377 | ||
| 1.21.11 | Fabric, Quilt | 1.21.11938 Ko 4 515 | ||
| 1.21.1 | Fabric, Quilt | 1.21.1953 Ko 525 | ||
| 26.3 | Fabric, Quilt | 26.3837 Ko 2 531 | ||
| 26.3 | Fabric, Quilt | 26.3837 Ko 2 | ||
| 26.2 | Fabric, Quilt | 26.2602 Ko | ||
| 26.1.2 | Fabric, Quilt | 26.1.2840 Ko |
Ce qu'il faut pour l'exécuter
- Fabric APIobligatoire
- Text Placeholder APIobligatoire
Avis
Soyez le premier à noter Mod Menu


