Yes, I know. There is a WorldEdit mod, I need to get data from its channel for my mod on the client. I can leave the mod only on the server and register the WorldEdit channel. But I am testing the mod in the ide and at startup the WorldEdit channel is registered on both sides, which prevents the mod from launching
There is a channel from which I need to receive incoming data, but as I noticed, Forge does not provide such an opportunity or am I missing something? It would be possible to register the desired channel and add a listener to it, but then the game will crash and give an error about an already existing channel.
Yes, but what's the point of carrying 20+ dependencies with you when you can load only what you need(yes, my mod can do this), but I need to load these dependencies during startup. I found this Launch.classLoader.addURL but apparently this does not work with the new version of Forge.
And the last question, I have libraries that are loaded into mods/myfolder and I need to load them. Fabric has a FabricLauncherBase.getLauncher() But I don't see anything in forge that can allow this to be done
Is it possible to switch the mod to the server-only state? So that even if the mod was installed on the client, it could not start(it was skipped by the mod loader)
Previously, the registration was in FMLServerStartingEvent, now there is an additional event for this, but this is inconvenient. That's why I'm asking how this can be done. Or is it possible to call FMLServerStartingEvent at the beginning, and then RegisterCommandsEvent?
Oh, okey.
@SubscribeEvent
public void serverStarting(FMLServerStartingEvent e) {
// Creating managerProvider
managerProvider.register();
}
// In ManagerProvider
public void register() {
MinecraftForge.EVENT_BUS.addListener(this::onCommandRegister);
}
But it doesn't work for me
Hi, i have a FMLServerStartingEvent and i need register RegisterCommandsEvent, but i can't make this. Event registration only goes through the constructor, are there any workarounds to solve this?