Modded worlds and vanilla worlds in multiverse?

The sponge implementation would have to include something like multiverse.

well, a vanilla client doesn’t report anything :cry:

Also, as I mentioned before, mods would have to follow conventions. There are mods out there that do some super duper hacky things, with nothing but Minecraft and Forge in mind. Those things would make the whole server inaccesible to clients without those mods (I’ll just say ASM here…)

Such a feature would be on the mod devs, not sponge.

As it stands, it the architectue used to load mods and minecraft’s architecute don’t allow for any separation.

Everything in Minecraft / Forge / FML is handled via central registries, common to all worlds that are loaded by the client. That couldn’t be changed without a complete rewrite. It would change the way worlds are saved / loaded, the way mods are loaded, it would limit mods in what they can do (As I mentioned… ASM… which is always on a global scope) and generally make thimgs way more buggy.

As I said, it would probably be best to just avoid this completely and just use multiple server instances that are connected, each with a unique set of mods.

Does Forge report anything in terms of which mods are installed? I suspect it must (at least in current version) to check if a client can join a server. If it can do that at least, it’s viable that if the check doesn’t produce a response, then we can assume said mods aren’t installed as a fallback XD I wouldn’t be too concerned with non-forge mods as Sponge probably won’t bother explicitly supporting them.

On the note of separation, you’re probably right. I’ve no experience whatsoever developing Forge mods or ASM, so I’ll have to take your word for it. Would just be nice in general to allow server owners to make their servers much more attractive to diverse audiences without the hassle of multi-server connections and such. Although I suppose it’s the next best thing.

Yeah, Forge reports which mods are installed on the client trying to connect, along with the versions of all of them. Right now when someone connects to the server I run (It’s a 1.7.10 cauldron server), it prints messages like this

[21:51:18 INFO]: Client attempting to join with 4 mods : [email protected],[email protected],[email protected],Minestuck@89
[21:51:18 INFO]: Attempting connection with missing mods [CodeChickenCore, MobiusCore, NotEnoughItems, OpenEye, NBTEdit, MapWriter, Opis] at CLIENT
[21:51:19 INFO]: [Server thread] Server side modded connection established

If it didn’t report any mods to the server, then that would mean it’s a vanilla client.

ASM could definitely cause issues with this idea, but most mods like to avoid using ASM if possible, I think.
It would be better for modders to make their mods support this themselves, but making a way to do this without each mod having to do it themselves would at least allow for more mods to be optional on the client or kept to one world.

Well, personally think the better approach would be to make running multiple instances and linking them (possibly on multiple machines) easier.