Installer les outils nécessaires à la création de mod (édition 2019)


  • Moddeurs confirmés Rédacteurs Administrateurs

    Pour créer un mod Minecraft, un certain nombre d'outils sont nécessaires (comme le kit de développement de Java) ou fortement utiles. S'il est techniquement possible de faire un mod avec un simple éditeur de texte (oui, vraiment !) et donc de se passer d'un environnement de développement, ce dernier rend le développement bien plus agréable et fluide. Enfin, un mod Minecraft n'étant pas uniquement de la logique mais aussi du graphisme et du modélisme, il sera également utile d'avoir un logiciel de manipulation d'image ainsi qu'un logiciel de modélisme.
    Ce tutoriel fait le point sur les outils à avoir.

    Sommaire du tutoriel

    Le kit de développement Java

    La première étape va être d'installer le JDK (Java Development Kit). Ce dernier permet de compiler du code source Java en byte code (le code lisible par la JVM de Java, qui fait partie du JRE (Java Runtime Environment, ce qui permet de lancer un programme Java)). Il contient également des bibliothèques et d'autres outils en rapport avec le développement Java.
    L'installateur d'OpenJDK est disponible au téléchargement sur le site adoptopenjdk.
    Il faut bien prendre la version 8. (Forge n'est pas encore compatible avec la 11).
    Sélectionnez bien la JVM HotSpot. (Forge n'est pas compatible avec OpenJ9)

    Information

    Sous Linux, l'OpenJDK est disponible dans la plupart des distributions dans les paquets. Sous Debian, Ubuntu ou autres dérivés il peut être installé à l'aide de la commande sudo apt install openjdk-8-jdk.

    Pour les utilisateurs de Windows, il faudra, dans la majorité des cas, paramétrer manuellement la variable JAVA_HOME afin de s'assurer que la mise en place de l'environnement de développement de mod Forge se fasse correctement.
    Autant donc le faire tout de suite en allant dans les paramètres de Windows, en tapant variables dans la recherche puis en cliquant sur Variable d'environnement... et en cliquant sur Nouvelle... dans la catégorie « variables système » :
    java-home-windows.jpg
    (cliquez pour agrandir)
    Pour finir mettre en nom de variable JAVA_HOME et en valeur le chemin complet du dossier d'installation (par exemple C:\Program Files\Java\jdk1.8.0_201).

    Optionnellement, on peut en profiter au passage pour modifier Path et y ajouter %JAVA_HOME%\bin ce qui rendra la commande javac disponible dans la console.

    Une fois l'installation terminée, exécuter la commande javac -version dans un terminal ou dans le powershell devrait renvoyer la version du jdk installée.

    Un environnement de développement

    Comme dit en introduction, un IDE sera bien plus pratique qu'éditer du code avec un simple éditeur de texte. Il permettra une meilleure visualisation du projet, apportera une coloration syntaxique du code, suggérera de compléter le code que vous êtes en train d'écrire, compilera votre code à chaque modification et permettra de le déboguer. Tant de fonctions essentielles pour fluidifier et simplifier le développement.

    Il existe de nombreux environnements de développement, ce tutoriel va donc se contenter de présenter les deux les mieux intégrés avec le développement de mod Minecraft.

    Eclipse

    eclipse-logo.png

    Créé par IBM en 2001, Eclipse est un IDE open source modulaire se voulant généraliste (il supporte donc beaucoup de langages, dont le Java).
    Le site propose différents packages, contenant à chaque fois leur lot de plugins préinstallés.
    Pour du développement de mod Minecraft, le package "Eclipse IDE for Java Developers" conviendra parfaitement.

    Depuis maintenant plus d'un an, Eclipse fourni un installateur qui permet de choisir où et quel package installer : https://www.eclipse.org/downloads/packages/installer

    Information

    Si vous êtes sous Ubuntu ou autre distribution compatible avec snap, il est possible d'installer Eclipse avec snap
    Ne prenez pas le paquet .deb disponible dans les dépôts, car il contient une version obsolète d'Eclipse, n'ayant pas l'intégration Gradle.

    IntelliJ IDEA

    intellij-idea-logo.png

    Également créé en 2001, mais par JetBrains, IntelliJ IDEA est historiquement un IDE propriétaire et payant. Mais à partir de la version 9 parue en 2009, une version communautaire gratuite sous licence Apache 2.0 est éditée. Celle-ci contient tout ce qu'il faut pour du modding Minecraft, les fonctionnalités supplémentaires de la version ultimate n'ayant pas d'utilité dans ce cas.
    L'installateur d'Intellij IDEA est disponible à l'adresse suivante : https://www.jetbrains.com/idea/download/

    Information

    Pour les utilisateurs d'Ubuntu ou autre distribution Linux compatible snap, Intellij IDEA est disponible sur la boutique snap

    Visual Studio Code

    vscode-logo.png

    Visual Studio Code est un éditeur bien plus récent (2015) développé par Microsoft. Son code est sous licence libre (MIT) par contre l'exécutable distribué sur le site est sous une licence propriétaire Microsoft.

    Conçu au début comme un simple éditeur de code, il est plus léger que la plupart des IDE (malgré le fait qu'il est conçu en technologie web avec Electron), il est rapide et plutôt basique en termes de fonctionnalités. En revanche les très nombreuses extensions permettent de rendre VS Code aussi puissant et efficace que la plupart des IDE (intégration avec les langages, auto-complétion intelligente, débogueur efficace, etc.).

    Il peut être téléchargé à l'adresse suivante : https://code.visualstudio.com/Download
    Une fois installé il faudra installer le pack d'extension pour le développement Java : https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack

    Le support de VS Code par ForgeGradle a été ajouté par moi-même en octobre 2019 (ma contribution est ici).

    Un logiciel d'édition d'image

    Essentiel pour la création des textures, il ne sera pas possible de faire sans logiciel d'édition d'image supportant les couches alpha (la transparence).
    Il en existe de nombreux, qui ont des fonctionnalités plus ou moins complètes / complexes.
    Il y a bien sûr Adobe Photoshop très complet et conçu pour le monde professionnel de la retouche d'image, mais qui est payant.
    Mais il y a aussi des logiciels libres et gratuits comme :

    • GIMP - GNU Image Manipulation Program, créé en 1995 et faisant partie de la suite de logiciel GNU, disponible sur toutes les plateformes (Linux, MacOS et Windows)
    • Krita - plus récent (créé en 2005) et faisant partie de la suite de logiciel KDE. Il est également disponible sur toutes les plateformes.

    Enfin en logiciel gratuit, compatible uniquement Windows, il y a le logiciel Paint.net qui supporte la transparence et donc qui convient pour Minecraft.

    Un logiciel de modélisation

    Ici, à nouveau, il y a du choix, puisqu'il est possible grâce à Forge d'utiliser le format standard .obj (avec des limitations en revanche). On peut donc utiliser un logiciel comme Blender ou n'importe quel autre programme capable d'exporter dans ce format.
    Pour les formats plus spécifiques à Minecraft (les modèles en json), l'excellent BlockBench conviendra. Il est multiplateforme et est même disponible en tant qu'application web (utilisation dans le navigateur).

    Licence et attribution

    Creative Commons

    Ce tutoriel rédigé par @robin4002, corrigé par @BrokenSwing et @DiabolicaTrix et publié sur Minecraft Forge France est mis à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International

    retour Sommaire des tutoriels



  • 124a6716-b341-48a6-b061-e7098d938e0d-image.png
    Bonjour, comme vous le voyiez je n'arrive pas à installer Eclipse IDE for Java Developers. Aidez moi s'il vous plait!



  • Voici les logs:

    [...] [2019-07-24 14:30:00] Downloading org.eclipse.platform_root
    [2019-07-24 14:30:00] Downloading org.eclipse.rcp_root
    [2019-07-24 14:30:00] Downloading org.eclipse.platform.ide.executable.win32.win32.x86_64
    [2019-07-24 14:30:01] Collected 3 artifacts for http://download.eclipse.org/releases/2019-09 in 0.783s
    [2019-07-24 14:30:01] An error was detected while performing the engine operation and the changes are being rolled back. See the log for details.
    [2019-07-24 14:30:01] ERROR: org.eclipse.equinox.p2.engine code=4 An error occurred during the org.eclipse.equinox.internal.p2.engine.phases.CheckTrust phase.
      at org.eclipse.oomph.util.OomphPlugin.coreException(OomphPlugin.java:280)
      at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl$3.commit(ProfileTransactionImpl.java:548)
      at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.commit(ProfileTransactionImpl.java:340)
      at org.eclipse.oomph.setup.p2.impl.P2TaskImpl.perform(P2TaskImpl.java:758)
      at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:3824)
      at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:3752)
      at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:3733)
      at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:3626)
      at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage.installPerform(SimpleVariablePage.java:1305)
      at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage.access$32(SimpleVariablePage.java:1167)
      at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage$20.run(SimpleVariablePage.java:1112)
      ERROR: org.eclipse.equinox.p2.engine code=0 session context was:(profile=G__Program Files (x86)_eclipse_java-2019-09_eclipse, phase=org.eclipse.equinox.internal.p2.engine.phases.CheckTrust, operand=, action=).
      ERROR: org.eclipse.equinox.p2.engine code=0 Error reading signed content.
      java.io.IOException: Exception in opening zip file: C:\Users\Baptiste ANDRES\.p2\pool\plugins\ch.qos.logback.classic_1.0.7.v20121108-1250.jar
        at org.eclipse.osgi.framework.util.SecureAction.getZipFile(SecureAction.java:340)
        at org.eclipse.osgi.internal.signedcontent.SignedBundleHook.getSignedContent(SignedBundleHook.java:217)
        at org.eclipse.equinox.internal.p2.engine.phases.CertificateChecker.checkCertificates(CertificateChecker.java:77)
        at org.eclipse.equinox.internal.p2.engine.phases.CertificateChecker.start(CertificateChecker.java:58)
        at org.eclipse.equinox.internal.p2.engine.phases.CheckTrust.completePhase(CheckTrust.java:55)
        at org.eclipse.equinox.internal.p2.engine.Phase.postPerform(Phase.java:255)
        at org.eclipse.equinox.internal.p2.engine.Phase.perform(Phase.java:105)
        at org.eclipse.equinox.internal.p2.engine.PhaseSet.perform(PhaseSet.java:50)
        at org.eclipse.equinox.internal.p2.engine.Engine.perform(Engine.java:80)
        at org.eclipse.equinox.internal.p2.engine.Engine.perform(Engine.java:48)
        at org.eclipse.equinox.internal.provisional.p2.director.PlanExecutionHelper.executePlan(PlanExecutionHelper.java:46)
        at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl$3.commit(ProfileTransactionImpl.java:544)
        at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.commit(ProfileTransactionImpl.java:340)
        at org.eclipse.oomph.setup.p2.impl.P2TaskImpl.perform(P2TaskImpl.java:758)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:3824)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:3752)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:3733)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:3626)
        at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage.installPerform(SimpleVariablePage.java:1305)
        at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage.access$32(SimpleVariablePage.java:1167)
        at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage$20.run(SimpleVariablePage.java:1112)
      Caused by: java.io.FileNotFoundException: C:\Users\Baptiste ANDRES\.p2\pool\plugins\ch.qos.logback.classic_1.0.7.v20121108-1250.jar (Le fichier spécifié est introuvable)
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:225)
        at java.util.zip.ZipFile.<init>(ZipFile.java:155)
        at java.util.zip.ZipFile.<init>(ZipFile.java:169)
        at org.eclipse.osgi.framework.util.SecureAction.getZipFile(SecureAction.java:322)
        at org.eclipse.osgi.internal.signedcontent.SignedBundleHook.getSignedContent(SignedBundleHook.java:217)
        at org.eclipse.equinox.internal.p2.engine.phases.CertificateChecker.checkCertificates(CertificateChecker.java:77)
        at org.eclipse.equinox.internal.p2.engine.phases.CertificateChecker.start(CertificateChecker.java:58)
        at org.eclipse.equinox.internal.p2.engine.phases.CheckTrust.completePhase(CheckTrust.java:55)
        at org.eclipse.equinox.internal.p2.engine.Phase.postPerform(Phase.java:255)
        at org.eclipse.equinox.internal.p2.engine.Phase.perform(Phase.java:105)
        at org.eclipse.equinox.internal.p2.engine.PhaseSet.perform(PhaseSet.java:50)
        at org.eclipse.equinox.internal.p2.engine.Engine.perform(Engine.java:80)
        at org.eclipse.equinox.internal.p2.engine.Engine.perform(Engine.java:48)
        at org.eclipse.equinox.internal.provisional.p2.director.PlanExecutionHelper.executePlan(PlanExecutionHelper.java:46)
        at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl$3.commit(ProfileTransactionImpl.java:544)
        at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.commit(ProfileTransactionImpl.java:340)
        at org.eclipse.oomph.setup.p2.impl.P2TaskImpl.perform(P2TaskImpl.java:758)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:3824)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:3752)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:3733)
        at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:3626)
        at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage.installPerform(SimpleVariablePage.java:1305)
        at org.eclipse.oomph.setup.internal.installer.SimpleVariablePage.access$32(SimpleVariablePage.java:1167)
        ... 1 more
    
    [2019-07-24 14:30:01]
    

  • Moddeurs confirmés Rédacteurs Modérateurs Administrateurs

    C'est normal que ton dossier de session s'appelle comme ceci : Baptiste ANDRES.p2 ?
    Il est probable que le problème vienne de ce dossier justement, du coup, essaye d'installer Eclipse directement à la racine de C:.



  • quand je modifie la racine, je ne peux plus installer.



  • 26ac4be9-3855-45b0-bddf-9010a38bf3f2-image.png


  • Moddeurs confirmés Rédacteurs Administrateurs

    Il faut lancer l'installateur en admin pour écrire dans le dossier C:\Program Files (x86).
    Par contre ce n'est pas normal de le mettre de x86, sauf si tu as pris la version 32 bits et dans ce cas tu devrais changer vers la 64.



  • Toujours la même erreur...



  • une autre idée? Je peux encore plus de log?


  • Moddeurs confirmés Rédacteurs Administrateurs



  • Normale que c'est la version 32 bits?


  • Moddeurs confirmés Rédacteurs Administrateurs

    Non c'est la 64 bits.



  • ah ok merci je pense que tout fonction


  • Moddeurs confirmés Rédacteurs Administrateurs

    Ajout de Visual Studio Code dans la liste.


Log in to reply