- 1 Aperçu
- 2 Premiers pas avec Forge
- 2.1 Remarque sur les espaces réservés
- 2.2 1. Créez un dossier pour votre projet
- 2.3 2. Obtenir une « distribution source »
- 2.4 3. Copiez les fichiers clés dans votre dossier de projet
- 2.5 3½. Remarque sur les mappages
- 2.6 4. Importer le projet gradle
- 2.7 5. Désigner le JDK
- 2.8 6. Configurer l'espace de travail
- 2.9 7. Configurer les paramètres d'exécution
- 3 Créer un mod pour Forge
- 3.1 Identifier votre module
- 3.2 Configuration de l'enregistrement des articles
- 3.3 Création d'un outil personnalisé
- 3.3.1 Couches personnalisées sur les textures vanille
- 3.3.2 Textures à partir de zéro
- 3.4 Création d'un mob personnalisé
- 3.4.1 Modèles à partir de zéro
- 3.5 Création d'un fichier de configuration
- 3.6 Partage de votre module
- 4 Lectures complémentaires
- 5 informations supplémentaires
- 6
Aperçu
Les mods (abréviation de « modifications ») peuvent modifier ou ajouter des éléments, des blocs, des entités et bien plus encore. Vraisemblablement, vous avez déjà une idée pour un mod que vous souhaitez créer. Si vous souhaitez simplement ajouter des avancées personnalisées, des fonctions, des tables de butin, des structures, des recettes ou des balises à votre jeu, découvrez comment créer un pack de données, qui ne nécessite pas de programmation. Ou cherchez à créer un pack de ressources si vous souhaitez simplement personnaliser les textures (couleurs et motifs), les modèles, la musique, les sons, les langues, les éclaboussures, les polices ou le poème de fin. Ou peut-être souhaitez-vous « forker » un mod préféré à mettre à jour pour les nouvelles versions de Minecraft. Dans tous les cas, ce guide faire une éventuelle ne couvrent que les éléments les plus élémentaires de la création d'un élément et de la création d'une entité (une chose en mouvement comme un villageois, un mouton, un zombie, etc.) et la distribution du package de mod résultant.
Les mods Minecraft se composent de fichiers jar (exemple : yournewmod.jar) qui contiennent des fichiers de classe, des fichiers JSON et des fichiers image, pour n'en nommer que quelques-uns des plus courants.
- Les fichiers de classe sont spécifiques au langage de programmation Java. Quelques tutoriels Java à essayer sont w3schools (web et mobile), SoloLearn (web et mobile) et kodevelopment (web). Vous aurez besoin d'un IDE (Integrated Development Environment) tel qu'IntelliJ ou Eclipse pour lire ou créer des fichiers de classe. Ce tutoriel se concentrera sur IntelliJ IDEA Community Edition 2019.
- Les fichiers JSON sont un moyen de détailler les caractéristiques des objets utilisés par les fichiers de classe Java. JSON est beaucoup plus simple que Java. Vous aurez besoin d'un éditeur de texte tel que Notepad++, Vim ou Emacs pour lire ou créer des fichiers JSON. Vous avez probablement déjà un éditeur de texte de base sur votre ordinateur, mais il y a de nombreux avantages à en utiliser d'autres à la place.
- Les fichiers image que vous connaissez peut-être incluent les formats .bmp et .jpg, mais Minecraft requiert le format .png (exemple : votrenouveaulogo.png) en multiples de 16 pixels carrés (exemple : 16x16, 32x32, 64x64). Vous aurez besoin d'un éditeur d'images tel que Paint.NET ou GIMP pour éditer ou créer des fichiers .png. Vous avez probablement déjà MS Paint sur votre ordinateur, mais GIMP a tellement plus de fonctionnalités et Paint.NET est assez convivial. Il existe également plusieurs sites Web avec des outils pour créer du pixel art.
Si vous avez joué à Minecraft Java Edition, vous avez probablement déjà JRE (Environnement d'exécution Java). Pour développer un mod, vous aurez besoin de trouver JDK (Java Development Kit), qui comprend le JRE et un émulateur. Créez un compte gratuit sur oracle.com et téléchargez JDK Standard Edition version 8. Suivez ensuite les instructions pour l'installer et notez l'emplacement où il s'installe. Portez une attention particulière à la section sur la mise à jour de la variable d'environnement PATH.
Avec un kit de développement Java installé et l'environnement de développement intégré IntelliJ pour manipuler Java, vous disposez désormais des outils nécessaires pour développer des logiciels personnalisés pouvant être utilisés dans une variété d'applications. Pendant que vous travaillez sur un mod, continuez à travailler sur les didacticiels Java. Les leçons vous permettront de mettre vos idées en pratique, tandis que les idées rendront les leçons plus intéressantes et mémorables.
Un autre outil que vous devez configurer avant de commencer un mod est le Forge MDK (Mod Development Kit). Forge est une collection de ressources utiles et un chargeur de mod, conçu spécifiquement pour simplifier la compatibilité entre Minecraft Java Edition et plusieurs mods créés par la communauté. Ce tutoriel se concentrera sur le MDK pour la version 1.12.2 de Minecraft Java Edition, bien que Forge pour 1.14.4 existe depuis un certain temps. Une alternative à Forge est Fabric, mais Java est toujours utilisé pour coder les mods de toute façon.
Choses que vous ne devez pas faire
Il y a certaines choses que vous devez faire attention à ne pas faire lors de la création d'un mod. Gardez cette liste à l'esprit :
- Ne faites rien qui viole les conditions d'utilisation de Mojang Studios pour Minecraft.
- Ne publiez pas de versions ou de modifications de Minecraft qui vous permettent de jouer sans avoir acheté Minecraft auprès de Mojang Studios.
- Ne publiez en aucun cas le code source décompilé de Minecraft.
- Ne modifiez pas les mods existants sans l'autorisation du ou des auteurs de ce mod. Vérifiez leur licence, généralement disponible dans le référentiel GitHub de l'auteur. Si vous ne trouvez pas la licence, vous n'êtes pas autorisé à partager une version modifiée avec qui que ce soit. Vous pouvez bricoler les fichiers pour un usage personnel uniquement.
Premiers pas avec Forge
Cet article de page Web vise à fournir une présentation infaillible de quelques éléments clés du didacticiel de Forge : https://mcforge.readthedocs.io. Marquez leur page en signet, car elle aborde de nombreux problèmes que cet article ne traitera pas. De plus, il existe plusieurs manières valables d'obtenir le résultat souhaité ; cet article de page Web se concentrera sur le plus simple, qui n'est probablement pas le plus efficace ou le plus élégant. Si vous suivez précisément les étapes décrites ici, vous devriez bientôt avoir un mod fonctionnel, que vous pourrez ensuite bricoler à votre guise. Si vous utilisez Linux, le tutoriel de Forge vous sera probablement plus utile. Si vous utilisez Windows, lisez la suite.
Remarque sur les espaces réservés
Ce didacticiel utilisera « Vous » pour représenter le profil d'utilisateur avec lequel vous êtes connecté ; si vous copiez-collez les chemins de ce didacticiel, assurez-vous de remplacer "Vous" par votre propre nom d'utilisateur Windows. Ce tutoriel utilisera "votrenouveaumod" pour représenter les sections que vous devez remplacer par le nom du mod que vous choisissez pour votre projet.
1. Créez un dossier pour votre projet
Accédez à C:/Users/You/Documents et créez un nouveau dossier. Le nom de ce dossier peut être facilement modifié ultérieurement.
2. Obtenir une « distribution source »
Visitez https://files.minecraftforge.net et assurez-vous que la version sélectionnée est la version pour laquelle vous souhaitez créer un mod. Dans la grande case "Téléchargement recommandé", cliquez sur la petite case MDK. Une boîte de dialogue apparaîtra, vous demandant où vous souhaitez enregistrer le fichier et quel nom lui donner. Choisissez n'importe quel emplacement pratique, mais laissez le nom inchangé.
3. Copiez les fichiers clés dans votre dossier de projet
Ouvrez le dossier forge-1.16.5-...-mdk (avec ou sans le décompresser au préalable) et copiez-collez les 5 fichiers suivants de ce dossier [plus d'informations nécessaires] dans le dossier du projet que vous avez créé à la première étape :
- le dossier src
- le dossier gradle
- Gradlew
- gradlew.bat
- build.gradle
3½. Remarque sur les mappages
Il existe deux ensembles différents de mappages disponibles pour les noms de méthode - les mappages communautaires "MCP" et les mappages "officiels" basés en partie sur les mappages d'obscurcissement officiels (bien que les noms de classe soient différents pour des raisons techniques). La valeur par défaut dans le MDK a récemment été changée en « officiel », mais ce didacticiel utilisera les mappages MCP pour le moment car les noms des paramètres de fonction ne sont pas disponibles dans les mappages officiels.
Modifiez la ligne suivante dans build.gradle ligne 34
canal de mappages : 'officiel', version : '1.16.5'à
canal de mappages : 'instantané', version : '20210309-1.16.5'Sur la ligne 51 de ExampleMod.java, modifiez les options en gameSettings (ou simplement commentez ou supprimez la ligne)
4. Importez le projet gradle
Ouvrez/Exécutez le programme IntelliJ IDEA. Dans l'écran d'accueil, cliquez sur Ouvrir. Une boîte de dialogue apparaîtra, vous demandant quel fichier importer. Accédez à votre dossier de projet et sélectionnez "build.Gradle", puis cliquez sur OK.
5. Désignez le JDK
Dans la fenêtre suivante, cliquez dans le champ "Gradle JVM" et accédez aux fichiers JDK que vous avez installés précédemment. Si vous avez la version 8 mise à jour 282, sélectionnez le dossier nommé "jdk1.8.0_282". Cliquez sur OK et attendez la fin de la construction, affichant les résultats dans le champ du bas.
[À FAIRE : Je n'ai pas eu d'autre fenêtre, je dois vérifier ce qui se passe lors d'une nouvelle installation d'IDEA]
[Remarque : Confirmer que la fenêtre IntelliJ IDEA 2021.1.2 n'apparaît pas, il est fort probable qu'elle détecte le JDK lui-même, elle n'apparaîtra donc que s'il ne parvient pas à localiser le JDK approprié]
6. Configurer l'espace de travail
Aucune dépendance n'a besoin d'être installée. Passer à l'étape suivante car la nouvelle mise à jour dans la configuration de la commande ForgeDecompWorkspace n'est pas nécessaire
7. Configurer les paramètres d'exécution
Après avoir rafraîchi le gradle, ouvrez le panneau du gradle et double-cliquez sur l'entrée "genIntellijRuns" dans le dossier "fg_runs". Cela créera de nouvelles configurations d'exécution qui permettront à votre mod d'être exécuté. Ensuite, ouvrez la fenêtre "Modifier les configurations" des paramètres d'exécution et regardez environ à mi-chemin, pour "Utiliser le chemin de classe du module". Cliquez sur son champ déroulant et sélectionnez l'option qui se termine par .main, puis cliquez sur Appliquer. Si les paramètres que vous venez de modifier étaient pour le client Minecraft, cliquez sur Serveur Minecraft et répétez les étapes pour définir le chemin de classe. [À FAIRE : Est-ce plus nécessaire ? C'était déjà réglé]
Vous pouvez maintenant sélectionner et exécuter runClient dans le menu déroulant de configuration d'exécution. Cela démarrera le lanceur avec votre mod inclus. Lorsque vous accédez au menu d'atterrissage, vous pouvez vérifier si votre mod est présent.
Créer un module pour Forge
Identification de votre module
Cette section est un travail en cours. S'il vous plaît aider à l'expansion ou à la création de cet article en l'étendant ou en l'améliorant. La page de discussion peut contenir des suggestions.Le projet tel que livré avec le MDK est appelé "examplemod" avec le nom de package "com.example.examplemod". Vous devrez le renommer en vos propres noms aux endroits suivants - renommer les fichiers de classe - build.gradle - META-INF/mods.toml
Les noms de package doivent être basés sur un nom de domaine dans l'ordre inverse, ou un nom qui n'est pas un nom de domaine valide si vous ne possédez pas de nom de domaine.
[TODO instructions plus claires, configurer la variable MODID]
Configuration de l'enregistrement des éléments
Cette section est un travail en cours. S'il vous plaît aider à l'expansion ou à la création de cet article en l'étendant ou en l'améliorant. La page de discussion peut contenir des suggestions.Vous pouvez créer une classe pour y mettre vos définitions. Ici, nous l'appelons RegistryHandler, bien que certains mods aient des classes distinctes pour chaque type d'objet appelées ModItems, ModBlocks, etc. et en théorie, vous pouvez simplement l'ajouter à la classe principale. Avoir au moins un fichier de classe (ou, idéalement, un package) dans lequel placer les enregistrements sans aucun code non lié à l'enregistrement offre une meilleure organisation lorsque vous développez votre mod.
package com.example.examplemod ; importer net.minecraft.item.Item; importer net.minecraft.item.ItemGroup; importer net.minecraftforge.fml.RegistryObject; importer net.minecraftforge.registries.DeferredRegister ; importer net.minecraftforge.registries.ForgeRegistries ; public class RegistryHandler { public static final DeferredRegister ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, ExampleMod.MODID); }Dans votre classe principale, configurez-la pour qu'elle soit appelée automatiquement au moment approprié, dans le constructeur public ExampleMod() :
RegistryHandler.ITEMS.register(FMLJavaModLoadingContext.get().getModEventBus());Création d'un outil personnalisé
Faisons une lance simple, avec une capacité de dégâts similaire à une épée de pierre.
Donc, pour commencer, nous devons créer un nouveau répertoire appelé tools dans votre package. Créez ensuite une nouvelle énumération Java appelée ModItemTier. Dans ce fichier, vous devez saisir une variante des éléments suivants :
package com.example.examplemod ; importer mcp.MethodsReturnNonnullByDefault ; importer net.minecraft.item.IItemTier; importer net.minecraft.item.Items; importer net.minecraft.item.crafting.Ingredient ; importer java.util.function.Fournisseur ; @MethodsReturnNonnullByDefault public enum ModItemTier implémente IItemTier { CUSTOMNAMEHERE (1, 131, 4.0F, 3.0F, 5, () -> Ingredient.fromItems(Items.FLINT)); Fournisseur final privé matériel de réparation; enchantabilité int finale privée; attaque de flotteur final privé Dommages ; efficacité du flotteur final privé; int final privé maxUses ; private int final HarvestLevel; ModItemTier(int HarvestLevel, int maxUses, float efficacité, float attackDamage, int enchantability, Supplier repairmaterial) { this.harvestLevel = HarvestLevel; this.maxUses = maxUses; this.efficiency = efficacité; this.attackDamage = attackDamage; this.enchantability = enchantability; this.repairmaterial = repairmaterial; } @Override public int getMaxUses() { return this.maxUses; } @Override public float getEfficiency() { return this.efficiency; } @Override public float getAttackDamage() { return this.attackDamage; } @Override public int getHarvestLevel() { return this.harvestLevel; } @Override public int getEnchantability() { return this.enchantability; } @Override public Ingredient getRepairMaterial() { return this.repairmaterial.get(); } }Ensuite, vous devez enregistrer votre article. Accédez à votre classe de registre d'articles[?] et créez un nouvel article comme celui-ci :
public static final RegistryObject NAME_SPEAR = ITEMS.register("name_spear", () -> new SwordItem(ModItemTier.CUSTOMNAMEHERE, 5, -2.8f, (new Item.Properties()).tab(ItemGroup.TAB_COMBAT)));.
Les chiffres sont les dégâts d'attaque de base [ajoutés aux dégâts définis dans l'ItemTier] et le modificateur de vitesse, les valeurs choisies pour l'exemple sont intermédiaires entre une épée et une hache.
Après cela, vous devez créer un fichier JSON dans src/main/resources/assets/examplemod/models/item appelé ce que vous avez défini précédemment, comme ceci :
{ "parent": "item/handheld", "textures": { "layer0": "examplemod:item/name_spear" } }Ensuite, allez dans votre dossier de textures et entrez la texture que vous allez créer à l'étape suivante. Si vous voulez en savoir plus sur la durabilité, je vous recommande cette page.
Calques personnalisés sur les textures vanille
Cette section est un travail en cours. S'il vous plaît aider à l'expansion ou à la création de cet article en l'étendant ou en l'améliorant. La page de discussion peut contenir des suggestions.Textures à partir de zéro
Ouvrez un éditeur d'images, de préférence un qui prend en charge la transparence, et créez une nouvelle image, avec une taille multiple de 16x16 (par exemple 32x32, 64x64. etc.)
Création d'un canevas de 32x32 pixels dans GIMP
Cet exemple utilise une image de 32x32 pixels et est réalisé dans GIMP.
Créez votre fichier en vous assurant qu'il est en pixels et non en pouces, en millimètres ou en toute autre mesure.
Créez un nouveau calque et supprimez le canevas d'origine. Si vous ne le faites pas, votre image aura un fond blanc.
À l'aide d'un pinceau de 1x1 pixel, commencez à dessiner votre élément. Assurez-vous d'utiliser des calques séparés pour des parties distinctes de l'élément afin de faciliter les modifications.
Lorsque vous avez terminé de créer votre art, appuyez sur fichier pour enregistrer. Si vous utilisez GIMP ou un autre éditeur avancé, il ne sera pas enregistré au format .png. Pour GIMP, il enregistre au format .xcf.
Une fois la lance terminée, appuyez sur fichier, puis enregistrez. Notez l'absence de blanc en arrière-plan, et à la place l'arrière-plan .png vierge.
Accédez à la liste déroulante d'exportation ou appuyez sur ctrl+e sous Windows ou ⌘+E pour macOS. Il s'agit d'exporter le fichier. Assurez-vous d'exporter au format .png, et non au format .jpg ou toute autre extension de fichier. S'il n'est pas enregistré au format .png, il aura un fond blanc et n'aura pas l'air correct.
Exportation de l'art de la lance de pierre sur le bureau. Notez qu'il est exporté au format .png. Certaines parties censurées pour la vie privée.
Si vous suivez ce tutoriel et souhaitez utiliser cette image, vous pouvez télécharger ce pixel art fini ici.
Création d'une foule personnalisée
Modèles de Scratch
La meilleure façon de modéliser des foules est probablement blockbench (site Web Blockbench). Blockbench est un outil de modélisation gratuit, et ce serait beaucoup plus rapide et plus facile que d'adopter l'autre approche, qui est lente. Si vous voulez modéliser avec, créez simplement un cube, positionnez-le, faites-le pivoter, dimensionnez-le et créez votre modèle comme vous le souhaitez. Si vous avez besoin de plus de cubes, vous pouvez facilement en créer un nouveau. C'est probablement la meilleure méthode pour cela. C'est rapide, facile et personnalisable.
Création d'un fichier de configuration
Cette section est un travail en cours. S'il vous plaît aider à l'expansion ou à la création de cet article en l'étendant ou en l'améliorant. La page de discussion peut contenir des suggestions.Partage de votre module
Cette section est un travail en cours. S'il vous plaît aider à l'expansion ou à la création de cet article en l'étendant ou en l'améliorant. La page de discussion peut contenir des suggestions.Pour créer votre mod, exécutez gradlew build ou ./gradlew build pour macOS. Cela produira un fichier dans build/libs avec le nom [archivesBaseName]-[version].jar. Ce fichier peut être placé dans le dossier mods d'une configuration Minecraft activée par forge et distribué. Ensuite, vous pouvez télécharger votre mod sur CurseForge
Pour aller plus loin
Cette section est un travail en cours. S'il vous plaît aider à l'expansion ou à la création de cet article en l'étendant ou en l'améliorant. La page de discussion peut contenir des suggestions.https://mcforge.readthedocs.io/en/latest/gettingstarted/
Information additionnelle
Cette section est un travail en cours. S'il vous plaît aider à l'expansion ou à la création de cet article en l'étendant ou en l'améliorant. La page de discussion peut contenir des suggestions.Recommandée:
- créez un compte GitHub pour gérer les versions de votre mod et collaborer avec d'autres développeurs.
- d'autres tutoriels (sous forme de vidéo, pour la version 1.15.2)
- Tutoriels/Charger un pack de ressources
- Tutoriels/Créer un pack de ressources
- Tutoriels/Installation d'un pack de données
- Tutoriels/Créer un pack de données
Tutoriels | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Introductory |
| ||||||||||||
Général: |
| ||||||||||||
Défis |
| ||||||||||||
Créations Équestres |
| ||||||||||||
Agriculture |
| ||||||||||||
Enchanteur et fondant |
| ||||||||||||
Bloquer les blocs |
| ||||||||||||
Mécanismes |
| ||||||||||||
Serveurs |
| ||||||||||||
Fiche |
| ||||||||||||
Désuet |
|