Tutoriel (Serveur)(modding)[1.4.6] MCPortCentral - à vous les mods bukkit

Pour ton 2nd problème: Comme le decompile.bat de marche pas, ton fichier ne se décompile pas, et tu n'as donc pas le fichier mcpxxx/src/minecraft_server.jar, puisque celui ci est la décompilation du dossier que tu as mis dans jars.
Il faut donc résoudre le premier problème pour résoudre le second. à partir d'ici je suis incapable de t(aider.
 
Si il y a rien dedans c'est parce que la decompilation à planté. IL faut installer forge dans le minecraft.jar du dossier lib, sinon tu va encore avoir l'erreur
Code:
Retroguard error: com.rl.obf.classfile.classfilexception: classnotfound cpw/mods/fml/common/network/IguiHandler
 
bon j'ai résolu le problème de la compil, mais au moment de glisser mon dossier de mod dans le src de elicpse j'ai énormément d'erreurs.

Déja ce mod est un mod "test" j'ai créé 2 set d'armures, 2 monstres basiques et 1 livre special (quand tu cliques droit avec ce livre, ça t'ouvres une fenêtre ou tu peux faire défiler des pages) pour tester les gui.

Au niveau des armes / armures j'ai résolu mes erreurs dans eclipse. Pour le livre c'est un peu plus compliqué, mon code de base étant:

Code:
import net.minecraft.server.v1_4_6.CreativeModeTab;
import net.minecraft.server.v1_4_6.EntityHuman;
import net.minecraft.server.v1_4_6.Item;
import net.minecraft.server.v1_4_6.ItemStack;
import net.minecraft.server.v1_4_6.World;
 
public class livredecartes extends Item
{
    public livredecartes(int var1)
    {
        super(var1);
        this.maxStackSize = 64;
        this.a(CreativeModeTab.l);
    }
 
    public String getTextureFile()
    {
        return "/chewdri/harrypotterv2/client/Items.png";
    }
 
    public boolean interactWith(ItemStack var1, EntityHuman var2, World var3, int var4, int var5, int var6, int var7, float var8, float var9, float var10)
    {
        ModLoader.openGUI(var2, new GuiWithButtonr(var2));
        return true;
    }
}


L'erreur souligne Modloader, j'ai lu que c'était pas bien de mélanger forge et modloader, malheuresement j'ai pas trouvé d'autres tuto expliquant la façon d'ouvrir une Gui sans utiliser ModLoader.

Du coup toutes mes autres class de livres ont des erreurs byzarres.

Par exemple pour la class "GuiwithbuttonR" (qui represente la couverture du livre)

j'avais à l'origine ce code:

Code:
import org.lwjgl.opengl.GL11;
 
import cpw.mods.fml.common.network.OpenGuiPacket;
 
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.src.ModLoader;
import net.minecraft.world.World;
 
public class GuiWithButtonr extends GuiScreen {
   
   
    public static EntityPlayer player;
    public final int xSizeOfTexture = 250;
    public final int ySizeOfTexture = 250;
    public GuiWithButtonr(EntityPlayer player) {
        // TODO Auto-generated constructor stub
    }
 
    @Override
    public void drawScreen(int x, int y, float f)
    {
    drawDefaultBackground();
 
    int var4 = this.mc.renderEngine.getTexture("/chewdri/harrypotterv2/client/GUItest.png");
    GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
    this.mc.renderEngine.bindTexture(var4);
 
    int posX = (150);
    int posY = (20);
 
    drawTexturedModalRect(posX, posY, 0, 0, xSizeOfTexture, ySizeOfTexture);
 
    super.drawScreen(x, y, f);
 
 
}
   
    public void initGui()
    {
    this.controlList.clear();
 
    int posX = (150);
    int posY = (140);
   
   
 
    this.controlList.add(new GuiButton(0, posX+ 40, posY + 40, 100, 20, "Page 1"));
   
    {}
   
    }
   
    public void actionPerformed(GuiButton button)
    {
     
      this.mc.displayGuiScreen((GuiScreen)null);
      this.controlList.clear();
      this.mc.displayGuiScreen(new Guipage2(this.player));
   
     
     
    }
   
   
   
   
}

et je me retrouve avec

Code:
package chewdri.harrypotterv2.common;
 
import net.minecraft.server.v1_4_6.EntityHuman;
 
public class GuiWithButtonr extends aul
{
    public static EntityHuman player;
    public final int xSizeOfTexture = 250;
    public final int ySizeOfTexture = 250;
 
    public GuiWithButtonr(EntityHuman var1) {}
 
    public void a(int var1, int var2, float var3)
    {
        this.e();
        int var4 = this.f.o.b("/chewdri/harrypotterv2/client/GUItest.png");
        GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
        this.f.o.b(var4);
        short var5 = 150;
        byte var6 = 20;
        this.b(var5, var6, 0, 0, 250, 250);
        super.a(var1, var2, var3);
    }
 
    public void A_()
    {
        this.i.clear();
        short var1 = 150;
        short var2 = 140;
        this.i.add(new atb(0, var1 + 40, var2 + 40, 100, 20, "Page 1"));
    }
 
    public void a(atb var1)
    {
        this.f.a((aul)null);
        this.i.clear();
        this.f.a(new Guipage2(player));
    }
}


Concernant les class de mobs, je n'ai pas d'erreurs dans les class du package "common" à savoir les Entitymob, par contre au niveau des Modelmob et rendermob dans Client, j'ai des erreurs tout le long.


Sinon encore merci pour ce tuto
 
Ba la classGuiWithButtonr, tu la supprime, c'est du client.
Et la ligne
Code:
        ModLoader.openGUI(var2, new GuiWithButtonr(var2));
Tu la supprime
 
Je comprends pourquoi on doit supprimer des class, si je les supprimes elles pas ne plus être en jeu ?

Fin bref j'ai supprimer toutes mes class client + les class gui qui étaient dans common et la ligne que tu m'as dit.

J'ai exporté mon mod et je l'ai mis dans le fichier "mod" du serveur mcp que j'ai créé. Lorsque je lance minecraft et que j'éssaie de me co sur ce serveur en localhost, je reste bloqué apres le "logging in" et j'ai cette erreur dans la console:

Code:
>21:11:51 [INFO] [ForgeModLoader] User chewadri connecting with mods [chewdriHP]
 
21:11:51 [INFO] Disconnecting chewadri [/127.0.0.1:57343]: Internal server error
 
21:11:51 [SEVERE] [ForgeModLoader] Error handling login related packet - connect
ion from chewadri refused
java.lang.NullPointerException
        at net.minecraft.server.v1_4_6.PlayerList.attemptLogin(PlayerList.java:2
47)
        at net.minecraft.server.v1_4_6.PendingConnection.completeConnection(Pend
ingConnection.java:133)
        at cpw.mods.fml.common.network.FMLNetworkHandler.handleClientConnection(
FMLNetworkHandler.java:161)
        at cpw.mods.fml.common.network.FMLNetworkHandler.onConnectionReceivedFro
mClient(FMLNetworkHandler.java:114)
        at net.minecraft.server.v1_4_6.PendingConnection.d(PendingConnection.jav
a:127)
        at net.minecraft.server.v1_4_6.PendingConnection.c(PendingConnection.jav
a:50)
        at net.minecraft.server.v1_4_6.DedicatedServerConnectionThread.a(Dedicat
edServerConnectionThread.java:45)
        at net.minecraft.server.v1_4_6.DedicatedServerConnection.b(SourceFile:29
)
        at net.minecraft.server.v1_4_6.MinecraftServer.r(MinecraftServer.java:62
9)
        at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:22
8)
        at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:51
7)
        at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:
447)
        at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:84
9)
21:11:51 [WARNING] Failed to handle packet for chewadri [/127.0.0.1:57343]: java
.lang.NullPointerException
java.lang.NullPointerException
        at net.minecraft.server.v1_4_6.PlayerList.attemptLogin(PlayerList.java:2
47)
        at net.minecraft.server.v1_4_6.PendingConnection.completeConnection(Pend
ingConnection.java:133)
        at cpw.mods.fml.common.network.FMLNetworkHandler.handleClientConnection(
FMLNetworkHandler.java:161)
        at cpw.mods.fml.common.network.FMLNetworkHandler.onConnectionReceivedFro
mClient(FMLNetworkHandler.java:114)
        at net.minecraft.server.v1_4_6.PendingConnection.d(PendingConnection.jav
a:127)
        at net.minecraft.server.v1_4_6.PendingConnection.c(PendingConnection.jav
a:50)
        at net.minecraft.server.v1_4_6.DedicatedServerConnectionThread.a(Dedicat
edServerConnectionThread.java:45)
        at net.minecraft.server.v1_4_6.DedicatedServerConnection.b(SourceFile:29
)
        at net.minecraft.server.v1_4_6.MinecraftServer.r(MinecraftServer.java:62
9)
        at net.minecraft.server.v1_4_6.DedicatedServer.r(DedicatedServer.java:22
8)
        at net.minecraft.server.v1_4_6.MinecraftServer.q(MinecraftServer.java:51
7)
        at net.minecraft.server.v1_4_6.MinecraftServer.run(MinecraftServer.java:
447)
        at net.minecraft.server.v1_4_6.ThreadServerApplication.run(SourceFile:84
9)
>
 
bon finalement j'ai plus ou moins reussi (sauf pour le livre, quand je clique droit ca me met "internal error et ça me deco")

Fin bref pour le moment mon mod j'ai reussi à l'installer sur un serveur hamachi. Mais comment faire pour porter ce mod sur un serveur qui est hébergé par verygames ?

Car si je met mon mod dans le dossier "mod" de mon serveur verygames via filezilla, moi je pourrais me co sans soucis vu que j'aurais le fichier mod ainsi que les fichiers forge dans minecraft.jar. Mais personne a part moi ne pourra se co dessus sans que je leur dise de faire la manip et que je leur passe mon mod.zip.

Du coup j'imagine qu'il faut créer un launcher que le joueur telecharge pour avoir les fichiers des mod et de forge automatiquement installés et mis à jour, mais comment faire ? x)
 
Oui il faudrait créer un launcher qui installe les mods tout seul.
Pour le problème internal error, c'est du a ml, comme ml n'est pas dispo sous bukkit, il faudrait que tu trouve la bonne fonction pour forge.
 
Et tu aurais une idée de comment faire ?

J'ai créé mon launcher grâce à ce tuto:

Mais il n'explique pas comment inclure des mods.
 
Moi j'ai un petit problème :

J'ai des erreurs partout, comme les importations ne marchent pas, comment les mettre ?