MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Créer la base de son mod

    Planifier Épinglé Verrouillé Déplacé Les bases
    1.8.x1.11.x1.12.x1.9.x
    60 Messages 21 Publieurs 29.8k Vues 7 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • M Hors-ligne
      MissChey
      dernière édition par

      Pour info, cette méthode fonctionne également parfaitement en 1.11.x, si vous pensez que ça peut être utile de l’ajouter dans le titre 🙂

      1 réponse Dernière réponse Répondre Citer 0
      • M Hors-ligne
        Melgaran
        dernière édition par

        Bonjour j’ai une erreur dans le clien proxy.

        mes “override” ne fonctionne pas “Error: method does not override or implement a method from a supertype”

        ( je tien à précisé que je suis très mauvais en code vus que je suis autodidacte et que je commence avec ce tutos)

        voici mon code pour clientproxy:

        package be.melgaran.modrpg.Proxy;
        
        import net.minecraft.block.Block;
        import net.minecraft.client.Minecraft;
        import net.minecraft.client.renderer.ItemModelMesher;
        import net.minecraft.client.renderer.block.model.ModelResourceLocation;
        import net.minecraft.item.Item;
        
        /**
        * Created by Melgaran on 05-06-17.
        */
        public class clientproxy extends commonproxy {
        
           @Override
           public static void registerItemTexture(Item item, int metadata, String name)
           {
               ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
               mesher.register(item, metadata, new ModelResourceLocation("ModRpg:" + name, "inventory"));
           }
           @Override
           public static void registerItemTexture(Item item, String name)
           {
               registerItemTexture(item, 0, name);
           }
        
           @Override
           public static void registerBlockTexture(Block block, int metadata, String name)
           {
               registerItemTexture(Item.getItemFromBlock(block), metadata, name);
           }
           @Override
           public static void registerBlockTexture(Block block, String name)
           {
               registerBlockTexture(block, 0, name);
           }
        }
        
        1 réponse Dernière réponse Répondre Citer 0
        • robin4002R Hors-ligne
          robin4002 Moddeurs confirmés Rédacteurs Administrateurs
          dernière édition par

          Il y a des erreurs car les fonctions sur lequel tu as mis un @Override n’existe pas dans la classe commonproxy.
          Et surtout, mettre un @Override sur une fonction static n’a pas de sens.

          1 réponse Dernière réponse Répondre Citer 0
          • MendesM Hors-ligne
            Mendes
            dernière édition par

            Petit changement pour les versions plus “récentes” de forge (ou en tout cas la mienne 1.11.2-2476).
            Où les fichiers ressources doivent uniquement être en minuscules
            ex: fr_fr.lang

            Le fichier pack.mcmeta est par défaut sous cette forme

            {
               "pack": {
                   "description": "examplemod resources",
                   "pack_format": 3,
                   "_comment": voir plus bas
               }
            }
            

            “A pack_format of 3 should be used starting with Minecraft 1.11. All resources, including language files, should be lowercase (eg: en_us.lang). A pack_format of 2 will load your mod resources with LegacyV2Adapter, which requires language files to have uppercase letters (eg: en_US.lang).”

            J’étais perturbé en suivant le tutoriel “Créer un item simple” et de ne toujours pas avoir les fichiers .lang utilisés (à moins que j’ai loupé quelque part cette précision ?).

            1 réponse Dernière réponse Répondre Citer 0
            • robin4002R Hors-ligne
              robin4002 Moddeurs confirmés Rédacteurs Administrateurs
              dernière édition par

              En effet, j’ai modifié le tutoriel pour le préciser.

              1 réponse Dernière réponse Répondre Citer 0
              • L Hors-ligne
                Lord_McKoy
                dernière édition par

                Bonjour à tous

                Je suis nouveau sur le forum ^^

                Je suis rendu à 14.56 sur la vidéo ( environ ) et lorsque que je met la commande @EventHandler,
                l’import que j’ai n’est pas le même dans la vidéo, à la fin j’ai une asterix :

                import net.minecraftforge.fml.common.eventhandler.*;
                
                

                Et à la ligne 15, ou il y à écrit @EventHandler, j’ai une ampoule avec une croix qui dit “EventHandler cannot be resolved to a type”.
                Je ne sais pas d’ou ça vient, une idée ?

                merci d’avance 🙂

                1 réponse Dernière réponse Répondre Citer 0
                • AymericRedA Hors-ligne
                  AymericRed
                  dernière édition par

                  Salut,

                  ça ne devrait pas poser problème mais tu peux toujours supprimer la ligne avec l’import puis refaire l’important manuellement en mettant la souris sur l’erreur du @EventHandler. Si ça pose toujours problème, tu peux aussi écricre @Mod.EventHandler.

                  Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                  AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                  Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                  Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                  1 réponse Dernière réponse Répondre Citer 0
                  • PrSnakeP Hors-ligne
                    PrSnake
                    dernière édition par

                    Merci pour le tuto, super bien fait et je dois dire que c’est très pratique d’avoir mis le résultat sur github et pas mal de détails c’est assez intéressant plus les pré-requis franchement c’est du bon travail ! 🙂

                    1 réponse Dernière réponse Répondre Citer 0
                    • seb19992S Hors-ligne
                      seb19992
                      dernière édition par

                      Bonjour,
                      Je commence le modding sur minecraft et je suis en train de suivre les tutoriels. Désolé d’ailleurs par avance si je déterre un sujet qui ne devrait pas l’être ou si je poste ma question au mauvais endroit, je suis nouveau.
                      Je n’arrive pas bien à comprendre à quoi sert un proxy et un logger. Si jamais ce sont des éléments de base de java que je devrais connaître, je demande pas forcément qu’on me ré-explique, une redirection vers une explication bien faite sur internet me conviendra totalement. Et si jamais c’est mieux expliqué dans la suite des tutoriels, désolé par avance pour le dérangement.

                      Merci d’avance pour vos réponses.

                      1 réponse Dernière réponse Répondre Citer 0
                      • robin4002R Hors-ligne
                        robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                        dernière édition par

                        Salut,
                        Il n’y a aucun problème à répondre dans les tutoriels si c’est pour posé des questions en rapport avec ce dernier, peu importe l’âge du tutoriel.

                        Le logger est un objet qui va te servir par la suite pour afficher des messages dans la console, avec automatiquement le nom de ton mod entre crochet au début de message.
                        Il te mettra d’afficher les erreurs, ou simplement des informations dans les logs.

                        Les classes de proxy te permette quand à elle se séparer la logique client de la logique serveur, très important car si tu mets de la logique client sur des classes communes au client et au serveur, ton mod va crasher lorsqu’il sera installé sur un serveur.

                        1 réponse Dernière réponse Répondre Citer 0
                        • seb19992S Hors-ligne
                          seb19992
                          dernière édition par

                          Ok ! Merci beaucoup ! Je pense que c’est plus clair, ça va m’aider à comprendre la suite. Une autre chose, tu ne précises pas vraiment pourquoi on passe un “File configFile” en argument de la fonction preInit de la classe proxy common. Est-ce que ça va s’éclaircir par la suite ?

                          1 réponse Dernière réponse Répondre Citer 0
                          • robin4002R Hors-ligne
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                            dernière édition par robin4002

                            Il va servir si tu fais un fichier de configuration.
                            Si tu ne prévois pas d’avoir de fichier de config, tu n’as pas besoin de cette argument.

                            1 réponse Dernière réponse Répondre Citer 0
                            • seb19992S Hors-ligne
                              seb19992
                              dernière édition par

                              Ok, je vais le laisser pour l’instant, je verrai s’il me sert plus tard, sinon je le retirerai. Merci beaucoup ! J’ai d’autres questions, mais je vais les poser dans les tutoriels concernés au fur et à mesure que j’avance. (Je les relis et ré-écoute plusieurs fois pour être sûr de ne pas être passé à côté des réponses à mes questions avant de les poser ! ^^)

                              1 réponse Dernière réponse Répondre Citer 0
                              • JustAnDevJ Hors-ligne
                                JustAnDev
                                dernière édition par JustAnDev

                                @robin4002 a dit dans Créer la base de son mod :

                                Et à l’intérieur de la fonction «public void init(FMLInitializationEvent event)» ajoutez «proxy.init();»
                                Vos deux fonctions dans la classe principale devraient être maintenant comme cela :
                                @EventHandler public void preInit(FMLPreInitializationEvent event) { logger = event.getModLog(); proxy.preInit(event.getSuggestedConfigurationFile()); } @EventHandler public void init(FMLInitializationEvent event) { proxy.init(); }

                                logger cannot be resolved to a variable
                                oui logger cannot be resolved to a variable

                                le code

                                package com.google.modaichmod;
                                
                                import net.minecraftforge.fml.common.Mod;
                                import net.minecraftforge.fml.common.Mod.EventHandler;
                                import net.minecraftforge.fml.common.Mod.Instance;
                                import net.minecraftforge.fml.common.SidedProxy;
                                import net.minecraftforge.fml.common.event.FMLInitializationEvent;
                                import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
                                
                                @Mod(modid = ModDaichMod.MODID, name = "Mod Daich's mod for 1.7.10", version = "0.0.3", acceptedMinecraftVersions = "[1.8.9]")
                                
                                public class ModDaichMod 
                                    {
                                	 
                                    public static final String MODID = "tutorial";
                                    
                                	@Instance(ModDaichMod.MODID)
                                	   public static ModDaichMod instance;
                                	
                                	@SidedProxy(clientSide = "à modifier ensuite", serverSide = "à modifier ensuite")
                                    public static DaichCommon proxy;
                                
                                	@EventHandler
                                    public void preInit(FMLPreInitializationEvent event)
                                    {
                                        logger = event.getModLog();
                                        proxy.preInit(event.getSuggestedConfigurationFile());
                                    }
                                 
                                    @EventHandler
                                    public void init(FMLInitializationEvent event)
                                    {
                                        proxy.init();
                                    }
                                    }
                                
                                
                                
                                

                                s

                                1 réponse Dernière réponse Répondre Citer 0
                                • robin4002R Hors-ligne
                                  robin4002 Moddeurs confirmés Rédacteurs Administrateurs @robin4002
                                  dernière édition par robin4002

                                  Il faut lire tout le tutoriel, sans sauter des étapes.

                                  @robin4002 a dit dans Créer la base de son mod :

                                  Nous allons maintenant ajouter le logger (importez org.apache.logging.log4j.Logger) et les deux fonctions suivantes :

                                     public static Logger logger;
                                  
                                      @EventHandler
                                      public void preInit(FMLPreInitializationEvent event)
                                      {
                                          logger = event.getModLog(); // initialise le logger.  event.getModLog() retourne un logger avec votre modid
                                      }
                                  
                                      @EventHandler
                                      public void init(FMLInitializationEvent event)
                                      {
                                  
                                      }
                                  
                                  1 réponse Dernière réponse Répondre Citer 0
                                  • L Hors-ligne
                                    Lutinrose
                                    dernière édition par

                                    Bonjour,

                                    À l’étape “Code” j’ai un problème : Intellij ne reconnait pas modid lorsque je fais @Mod(modid = “nomdumode”)

                                    Intellij me souligne en rouge “modid” et me renvoie l’erreur :
                                    Cannot resolve method ‘modid’

                                    J’ai essayé de redémarrer Intellij mais ça n’a rien changé

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • robin4002R Hors-ligne
                                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                      dernière édition par

                                      Bonjour,
                                      Tu es en quelle version ?

                                      L 1 réponse Dernière réponse Répondre Citer 0
                                      • L Hors-ligne
                                        Lutinrose @robin4002
                                        dernière édition par

                                        @robin4002
                                        Mon Intellij est en version ultimate 2019.1.3
                                        J’utilise Minecraft Forge - MC 1.13.2 avec la version de Minecraft 1.14.2 (car je n’ai pas trouvé comment mettre une version précédente du jeu).
                                        Est-ce que le problème pourrait venir de la version de Minecraft qui ne correspond pas à celle de Forge ?

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • robin4002R Hors-ligne
                                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                          dernière édition par robin4002

                                          La version qui se trouve sur ton launcher n’a aucune incidence sur ta version de développement.
                                          Comme tu as pris le MDK de forge 1.13.2, tu es en 1.13.2

                                          Ton problème vient du fait que tu es en train de suivre un tutoriel pour la 1.8.x à la 1.12.x.
                                          Celui pour la 1.13.2 est ici : https://www.minecraftforgefrance.fr/topic/5359/créer-la-base-d-un-mod (la version des tutoriels est indiqués à l’aide des tags, visible en bas à gauche).

                                          L 1 réponse Dernière réponse Répondre Citer 0
                                          • L Hors-ligne
                                            Lutinrose @robin4002
                                            dernière édition par

                                            @robin4002
                                            Merci, problème réglé !
                                            Effectivement, je n’avais pas vu que j’étais sur un tutoriel d’une version précédente.

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 3
                                            • 2 / 3
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB