Compiler votre mod



  • Sommaire

    • But
    • Editer le gradle.build
    • Recompiler
    • Trouver le .jar

    But

    Dans ce tutoriel, notre but sera de rendre notre mod public, c'est à dire avoir un .jar que nous pouvons distribuer a n'importe qui, afin qu'il puisse utiliser notre mod avec une installation de forge de base, c'est a dire sans avoir à installer les sources de forge.

    #Editer le gradle.build(Editer le gradle.build)

    Le fichier gradle.build est le fichier qui va donner les instructions a gradle pour recompiler votre mod.
    Il est donc nécessaire de le modifier pour qu'il compile notre mod.

    Tout d'abord, il vous faudra notepad++. Si vous ne l'avez pas, je suis gentil, donc je vous donne le lien.
    Quand vous l'aurez, faite un clic droit sur le fichier gradle.build dans votre installation de forge puis faite "Edit with notepad++"

    Maintenant vous aurez trois champ à modifier :

    Le champ entouré de noir : C'est la version de votre mod. Mettez ce que vous souhaitez.
    Le champ entouré de rouge : C'est votre classe principal, avec le chemin derrière. Si votre classe se situe dans le package fr.vous et que cette classe s'appelle Mod, alors vous devrez mettre fr.vous.Mod
    Le champ entouré de bleu : c'est le modid de votre mod.

    Voilà, c'est tout pour gradle.build.

    Recompiler

    Si vous êtes sur windows, alors téléchargez ce script, et placez le dans le même dossier que gradlew.bat et gradle.build

    Si vous avez bien placé le script, vous devriez voir ceci :

    Executez le script, et passez a la partie suivante.

    Si vous êtes sur Mac (ou linux, ou solaris, soyons fou) executez gradle avec pour argument build.

    C'est bon, les fichiers on été compilé.

    #Trouver le .jar(Trouver le .jar)

    Si il n'y a eut aucune erreur, le .jar est situé dans /build/libs/modid-version.jar

    Ce jar peut être placé dans le dossier mods dans appdata, et forge le chargera sans problème.



  • Tutoriel certes pratique, mais il donne simplement une base facilement trouvable.

    Expliquer comment ajouter des choses plus complexes ( Version automatique etc… ) le rendrait beaucoup plus intéressant


  • Administrateurs

    Pourquoi faire télécharger un .bat alors qu'il suffit de faire shift + clic droit, ouvrir une fenêtre de commande et écrire gradlew build ?
    Et même si le bat est plus pratique, les personnes peuvent le faire eux même ?

    Et comme l'a dit gugu, un tutoriel pour taper une commande c'est bof. Je prévois déjà depuis un moment de faire un tutoriel plus poussé sur la modification du build.gradle.



  • En fait, j'ai fait ce tutoriel pour que les débutant moddeur ait un tutoriel (même si il n'approfondis pas beaucoup) qui leur permettent d'avoir un .jar utilisable. Parceque j'ai cherché sur google "Comment compiler un mod minecraft forge 1.7.2" je suis tombé sur aucun tutoriel français, donc je me suis dis que ça serait une bonne idée de mettre un tuto simple juste pour pouvoir donner son mod à des potes.
    Pour le bat, j'avais tout simplement la flemme d'ajouter des lignes pour dire "Fait Ctrl + R, puis tapez cmd, puis rendez vous dans le chemin blabla…"



  • @'D4Death':

    Pour le bat, j'avais tout simplement la flemme d'ajouter des lignes pour dire "Fait Ctrl + R, puis tapez cmd, puis rendez vous dans le chemin blabla…"

    Et bin, vive la motivation :p.



  • Bonjour/Bonsoir 🙂

    J'ai un problème lorsque je compile le mod :


    Powered By MCP:
    http://mcp.ocean-labs.de/
    Searge, ProfMobius, Fesh0r,
    R4wk, ZeuX, IngisKahn
    MCP Data version : unknown


    :compileApiJava UP-TO-DATE
    :processApiResources UP-TO-DATE
    :apiClasses UP-TO-DATE
    :sourceMainJava
    :compileJava
    warning: [options] bootstrap class path not set in conjunction with -source 1.6
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: illegal character: '\u00a9'
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: <identifier>expected
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: illegal start of type
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: illegal start of type
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: illegal start of type
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);

    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: illegal start of type
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);

    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: illegal start of type
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);

    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:55: error: illegal start of type
    public static ToolMaterial FerRaffin+® = EnumHelper.addToolMaterial("FERRAF", 2,
    500, 7.0F, 2.5F, 12);

    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:73: error: illegal character: '\u00a9'
    EpeeFerRaf = new ItemRafSword(FerRaffin+®).setUnlocalizedName("itemEpeeR
    af").setTextureName(ModTest.MODID + ":EpeeRaf").setCreativeTab(CreativeTabs.tabC
    ombat);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:73: error: illegal start of expression
    EpeeFerRaf = new ItemRafSword(FerRaffin+®).setUnlocalizedName("itemEpeeR
    af").setTextureName(ModTest.MODID + ":EpeeRaf").setCreativeTab(CreativeTabs.tabC
    ombat);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:73: error: ';' expected
    EpeeFerRaf = new ItemRafSword(FerRaffin+®).setUnlocalizedName("itemEpeeR
    af").setTextureName(ModTest.MODID + ":EpeeRaf").setCreativeTab(CreativeTabs.tabC
    ombat);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:74: error: illegal character: '\u00a9'
    HacheFerRaf = new ItemRafAxe(FerRaffin+®).setUnlocalizedName("itemHacheR
    af").setTextureName(ModTest.MODID + ":HacheRaf").setCreativeTab(CreativeTabs.tab
    Tools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:74: error: illegal start of expression
    HacheFerRaf = new ItemRafAxe(FerRaffin+®).setUnlocalizedName("itemHacheR
    af").setTextureName(ModTest.MODID + ":HacheRaf").setCreativeTab(CreativeTabs.tab
    Tools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:74: error: ';' expected
    HacheFerRaf = new ItemRafAxe(FerRaffin+®).setUnlocalizedName("itemHacheR
    af").setTextureName(ModTest.MODID + ":HacheRaf").setCreativeTab(CreativeTabs.tab
    Tools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:75: error: illegal character: '\u00a9'
    PelleFerRaf = new ItemRafSpade(FerRaffin+®).setUnlocalizedName("itemPell
    eRaf").setTextureName(ModTest.MODID + ":PelleRaf").setCreativeTab(CreativeTabs.t
    abTools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:75: error: illegal start of expression
    PelleFerRaf = new ItemRafSpade(FerRaffin+®).setUnlocalizedName("itemPell
    eRaf").setTextureName(ModTest.MODID + ":PelleRaf").setCreativeTab(CreativeTabs.t
    abTools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:75: error: ';' expected
    PelleFerRaf = new ItemRafSpade(FerRaffin+®).setUnlocalizedName("itemPell
    eRaf").setTextureName(ModTest.MODID + ":PelleRaf").setCreativeTab(CreativeTabs.t
    abTools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:76: error: illegal character: '\u00a9'
    PiocheFerRaf = new ItemRafPickaxe(FerRaffin+®).setUnlocalizedName("itemP
    iocheRaf").setTextureName(ModTest.MODID + ":PiocheRaf").setCreativeTab(CreativeT
    abs.tabTools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:76: error: illegal start of expression
    PiocheFerRaf = new ItemRafPickaxe(FerRaffin+®).setUnlocalizedName("itemP
    iocheRaf").setTextureName(ModTest.MODID + ":PiocheRaf").setCreativeTab(CreativeT
    abs.tabTools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:76: error: ';' expected
    PiocheFerRaf = new ItemRafPickaxe(FerRaffin+®).setUnlocalizedName("itemP
    iocheRaf").setTextureName(ModTest.MODID + ":PiocheRaf").setCreativeTab(CreativeT
    abs.tabTools);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:77: error: illegal character: '\u00a9'
    FauxFerRaf = new ItemRafHoe(FerRaffin+®).setUnlocalizedName("itemFauxRaf
    ").setTextureName(ModTest.MODID + ":FauxRaf").setCreativeTab(CreativeTabs.tabToo
    ls);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:77: error: illegal start of expression
    FauxFerRaf = new ItemRafHoe(FerRaffin+®).setUnlocalizedName("itemFauxRaf
    ").setTextureName(ModTest.MODID + ":FauxRaf").setCreativeTab(CreativeTabs.tabToo
    ls);
    ^
    C:\Users\Zery59\Desktop\All dossiers\forge\build\sources\java\com\google\zery45y
    outube\modtest\common\ModTest.java:77: error: ';' expected
    FauxFerRaf = new ItemRafHoe(FerRaffin+®).setUnlocalizedName("itemFauxRaf
    ").setTextureName(ModTest.MODID + ":FauxRaf").setCreativeTab(CreativeTabs.tabToo
    ls);
    ^
    23 errors
    1 warning
    :compileJava FAILED

    FAILURE: Build failed with an exception.

    • What went wrong:
      Execution failed for task ':compileJava'.

    Compilation failed; see the compiler error output for details.

    • Try:
      Run with –stacktrace option to get the stack trace. Run with --info or --debug
      option to get more log output.

    BUILD FAILED

    Total time: 33.56 secs</identifier>

    Voilà je sais pas trop pourquoi ça ne fonctionne pas, si vous avez besoins des mes classes, dîtes moi lesquelles 🙂

    Merci d'avance.


  • Administrateurs

    2 choix pour résoudre ton problème:
    -soit tu changes l'encodage de ta workspace.
    -soit tu supprimes tous les accents.


  • Administrateurs

    Il ne faut pas mettre d'accent dans les noms des variables.



  • Excusez moi d'avoir répondu si tardivement, j'ai eu un problème d'internet

    Je vais essayer et je vous dis tout ça 🙂


    Merci, merci, merci, merci INFINIMENT !!!

    Merci 🙂 Je vous adore 🙂


  • Administrateurs

    Je referai un tutoriel plus détaillé.