Crash Gui en multijoueur



  • Bonjour j'ai créer un GUI ( mon premier) tout fonctionne en solo mais malheureusement en multijoueur u vilain crash

    
    –-- Minecraft Crash Report ----
    // You're mean.
    
    Time: 24/02/15 19:18
    Description: Exception in server tick loop
    
    cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: net/minecraft/client/gui/GuiScreen
    at cpw.mods.fml.common.LoadController.transition(LoadController.java:162)
    at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:515)
    at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:88)
    at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:314)
    at net.minecraft.server.dedicated.DedicatedServer.startServer(DedicatedServer.java:120)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:445)
    at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752)
    Caused by: java.lang.NoClassDefFoundError: net/minecraft/client/gui/GuiScreen
    at mods.tuto.TutoMod.preInit(TutoMod.java:814)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:513)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
    at com.google.common.eventbus.EventBus.post(EventBus.java:275)
    at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:208)
    at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:187)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
    at com.google.common.eventbus.EventBus.post(EventBus.java:275)
    at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
    at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:513)
    ... 5 more
    Caused by: java.lang.ClassNotFoundException: net.minecraft.client.gui.GuiScreen
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 33 more
    Caused by: java.lang.RuntimeException: Attempted to load class net/minecraft/client/gui/GuiScreen for invalid side SERVER
    at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:50)
    at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279)
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176)
    ... 35 more
    
    A detailed walkthrough of the error, its code path and all known details is as follows:
    ---------------------------------------------------------------------------------------
    
    -- System Details --
    Details:
    Minecraft Version: 1.7.10
    Operating System: Windows 8.1 (amd64) version 6.3
    Java Version: 1.8.0_31, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 983267232 bytes (937 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
    JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
    AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
    FML: MCP v9.05 FML v7.10.85.1236 Minecraft Forge 10.13.2.1236 5 mods loaded, 5 mods active
    mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) Unloaded->Constructed->Pre-initialized
    FML{7.10.85.1236} [Forge Mod Loader] (forgeSrc-1.7.10-10.13.2.1236.jar) Unloaded->Constructed->Pre-initialized
    Forge{10.13.2.1236} [Minecraft Forge] (forgeSrc-1.7.10-10.13.2.1236.jar) Unloaded->Constructed->Pre-initialized
    custommenu{1.1.0} [Custom Menu] (bin) Unloaded->Constructed->Pre-initialized
    tutoMod{1.0} [Tuto] (bin) Unloaded->Constructed->Errored
    Profiler Position: N/A (disabled)
    Is Modded: Definitely; Server brand changed to 'fml,forge'
    Type: Dedicated Server (map_server.txt)
    

    Merci de votre aide


  • Administrateurs

    Salut,
    C'est normal, les classes client n'existe pas en serveur. Le serveur n'a aucune interface.



  • hmmmm mais mon serveur ne ce lance pas quand je mais mon mod …..

    comment faire ?



  • Ton mod rajoute quoi ?


  • Administrateurs

    at mods.tuto.TutoMod.preInit(TutoMod.java:814)

    (tu aurai pu appeler ta classe principale autrement que TutoMod)
    Tu as quoi à la ligne 814 ? Envoie-même toute la classe via un pastebin ou avec la balise java (car elle m'a l'air très grande x))



  • euh ma ligne 814 ….

    blockBleu = new BlockBleu(Material.sponge);

    Mon mod rajoute beaucoup de chose ^^


  • Administrateurs

    Et dans la classe BlockBleu il y a quoi ?



  • @'Antoine_':

    euh ma ligne 814 ….

    blockBleu = new BlockBleu(Material.sponge);

    HS
    C'est comme ça que tu crées un block ? Sans même lui assigner de texture ou de nom non-localisées ? C'est bizarre. T'aurais pas 2 ou 3 explications à me donner quand même xD ?



  • J'ai rien vu dans la classe robin donc ça ma soûlé j'ai fait un backup donc je vais réessayer de rajouter mon gui ^^

    et Julot10085 pour répondre à ta question j’ai noté que la ligne 814 car le crash parler de cette ligne en particulier.

    Je ressaye mon Gui je te tient au courant



  • Voila j'ai trouvé le problème viens du Block qui fait apparaître mon GUI Voici la classe:

    
    public class BlockBleu extends Block
    {
    public BlockBleu(Material material)
    {
    super(material);
    }
    public void onEntityWalking(World world, int x, int y, int z, Entity entity)
    {
    Minecraft.getMinecraft().displayGuiScreen(new Guituto());
    }
    }
    

  • Administrateurs

    En oui, forcement …
    Pourquoi tu ouvre le gui de cette façon sur une classe commun au client et au serveur ?
    Ton gui fait quoi exactement ?



  • Euh ces mon premier Gui et sur un tuto il donnais cette méthode et ça marchais en solo alors voila ….

    Le Gui sert a rien pour le moment ^^


  • Administrateurs

    Et tu compte en faire quoi ?
    Car il serait peut-être mieux de passer par un gui handler.
    Sinon tu peux mettre un @SideOnly ou mettre la condition if(world.isRemote)



  • Pour utilisé un bouton qui tp le mieux est de passer par quoi ?


  • Administrateurs

    Pour ça reste sur le code actuel pour ouvrir le gui, par contre pour l'action de tp il faudra passer par un paquet.



  • Oui mais j'ai une erreur sur le Block en multijoueur …. de quoi ca peux venir ?


  • Administrateurs

    @'robin4002':

    Sinon tu peux mettre un @SideOnly ou mettre la condition if(world.isRemote)



  • Je kiffe les fr.ModTuto.xxx



  • Merci robin bon je passe en résolu je m'attaque au packet maintenant 😃