[OUTDATED] MinecraftGUI - A GUI manager

Not always true, ForgeEssentials works with Vanilla clients (I think). Sponge (forge mod) works with vanilla too.

Yes. This doesn’t apply at all times.
But when a Forgemod sends unplausible Data to a Vanilla Client, it can make the Client crash.

See above:
The question was if devs should use
a) Forgemod + Forge Clientmod
b) Sponge Plugin + Forge Clientmod.

I’d choose b) anytime possible.

With a sponge plugin. Its easier for other plugins to depend on it.

Which also has an API for using the built-in plugin messaging system that you should be using in this! :3

3 Likes

May be, but with my own system I switched to Sponge without changing any line of my plugin.

You have a point their.
But you could make something like this:

//plugin core
public interface pluginConnection{
   private void sendMessage(String message, String reciever);
}

//sponge
public class SpongePluginConnection implements pluginConnection{
//Code for sponge
}

//Bukkit
public class BukkitPluginConnection implements pluginConnection{
//Code for bukkit
}

//than somewhere in your core.
public class Forwared{
   pluginConnection connection;
   public Forwared(pluginConnection connection){
      this.connection = connection;
   }

   protected void onMessage(String message, String reciever){
       connection.sendMessage(message, reciever);
   }
}

This way you only need 1 extra class for each API.

The thing is, we think that it is wasteful to have a whole new protocol next to minecraft. Also realising that not everyone has the ability to open ports. Think on people that use hosting.

Yes, I could have done this way, but at the beginning when I started the transition, Sponge was not very developed.

2 Likes

which is totally fine.
maybe evolve your project now to utilize all features sponge provides? :wink:

Yes, this could be an option for the next version.

2 Likes

by not using plugin channels, you lose encryption, compatibility with proxies, compatibility with existing firewall configurations (and a lot of server hosts), and have to manage your own connection state.

use plugin channels. it’ll make your life so much easier.

also, I don’t see any links to source or javadocs or download locations – at least link to github/wherever you’re hosting this, even if you aren’t posting builds.

4 Likes

Isn’t Sponge supposed to support something like this out of the box?

No, as Sponge currently doesn’t support clientmods :wink:

New features have been implemented and videos are coming.