BG-Software-LLC / SuperiorSkyblock2

Optimized, feature packed Skyblock core.
https://bg-software.com/superiorskyblock/
GNU General Public License v3.0
161 stars 137 forks source link

Might cause some plugin load issues aka ciruclar #1643

Closed AlbusThePenguin closed 1 year ago

AlbusThePenguin commented 1 year ago

Minecraft's Version

1.19.4

Plugin's Version

SuperiorSkyblock2-2022.9-b981.jar

Describe the bug

    if (Bukkit.getPluginManager().isPluginEnabled("Multiverse-Core")) {
        Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "mv import " + worldName + " normal -g " + plugin.getName());
        Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "mv modify set generator " + plugin.getName() + " " + worldName);
    }

    Seems like the plugin loads before multiverse and causes conflicts as a result of this only being called 'onEnable()'. 
    causing other plugins to have issues with circular loads as a result. 

happens on both clean installs and not.

To Reproduce

Install wildstacker, multiverse and superior skyblock on latest paper. 1.19.4

Additional Information

No response

OmerBenGera commented 1 year ago

Show me the circular plugin warning from your console.

AlbusThePenguin commented 1 year ago

[10:31:41 INFO]: Loaded 7 recipes [10:31:42 INFO]: Starting minecraft server version 1.19.4 [10:31:42 INFO]: Loading properties [10:31:42 INFO]: This server is running Paper version git-Paper-466 (MC: 1.19.4) (Implementing API version 1.19.4-R0.1-SNAPSHOT) (Git: 7af4cd3) [10:31:42 INFO]: Server Ping Player Sample Count: 12 [10:31:42 INFO]: Using 4 threads for Netty based IO [10:31:42 INFO]: [ChunkTaskScheduler] Chunk system is using 1 I/O threads, 4 worker threads, and gen parallelism of 4 threads [10:31:42 INFO]: Default game type: SURVIVAL [10:31:42 INFO]: Generating keypair [10:31:42 INFO]: Starting Minecraft server on 0.0.0.0:25567 [10:31:42 INFO]: Using epoll channel type [10:31:42 INFO]: Paper: Using libdeflate (Linux x86_64) compression from Velocity. [10:31:42 INFO]: Paper: Using OpenSSL 3.0.x (Linux x86_64) cipher from Velocity. [10:31:42 ERROR]: [SimpleProviderStorage] Circular plugin loading detected! [10:31:42 ERROR]: [SimpleProviderStorage] Circular load order: [10:31:42 ERROR]: [SimpleProviderStorage] Multiverse-Core -> SuperiorSkyblock2 -> WildStacker -> CMI -> CMILib -> Multiverse-Core [10:31:42 ERROR]: [SimpleProviderStorage] Multiverse-Core -> SuperiorSkyblock2 -> WildStacker -> CMI -> Multiverse-Core [10:31:42 ERROR]: [SimpleProviderStorage] Please report this to the plugin authors of the first plugin of each loop or join the PaperMC Discord server for further help. [10:31:42 ERROR]: [SimpleProviderStorage] If you would like to still load these plugins, acknowledging that there may be unexpected plugin loading issues, run the server with -Dpaper.useLegacyPluginLoading=true [10:31:42 ERROR]: Encountered an unexpected exception java.lang.IllegalStateException: Circular plugin loading from plugins Multiverse-Core, Multiverse-Core at io.papermc.paper.plugin.storage.SimpleProviderStorage.handleCycle(SimpleProviderStorage.java:70) ~[paper-1.19.4.jar:git-Paper-466] at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:39) ~[paper-1.19.4.jar:git-Paper-466] at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:36) ~[paper-1.19.4.jar:git-Paper-466] at org.bukkit.craftbukkit.v1_19_R3.CraftServer.loadPlugins(CraftServer.java:423) ~[paper-1.19.4.jar:git-Paper-466] at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:273) ~[paper-1.19.4.jar:git-Paper-466] at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1103) ~[paper-1.19.4.jar:git-Paper-466] at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:319) ~[paper-1.19.4.jar:git-Paper-466] at java.lang.Thread.run(Thread.java:833) ~[?:?] [10:31:42 ERROR]: This crash report has been saved to: /home/container/./crash-reports/crash-2023-03-24_10.31.42-server.txt [10:31:42 INFO]: Stopping server [10:31:42 INFO]: Saving players [10:31:42 INFO]: Saving worlds [10:31:42 INFO]: ThreadedAnvilChunkStorage: All dimensions are saved [10:31:42 INFO]: Flushing Chunk IO [10:31:42 INFO]: Closing Thread Pool Untitled

another important note is that it only happens when I also include Wildstacker, but the issue stems from skyblock. Tried a different stacker plugin and got the same issue, registered that plugin as a paper plugin instead and it fixed the issue for that plugin. It's the paper discord community who regarded the skyblock as the cause, not me.

OmerBenGera commented 1 year ago

The issue is that SSB must be loaded before MultiverseCore, and CMI needs to be loaded after it, and it causes this circular dependency problem. I will look what can be done regarding this, however I can't promise anything.

AlbusThePenguin commented 1 year ago

So without CMI it would work? Am coding my own core and it's nearly finished. I'll try replace CMI with that.

OmerBenGera commented 1 year ago

So without CMI it would work? Am coding my own core and it's nearly finished. I'll try replace CMI with that.

Without any of the plugins listed in this circular dependency it will work - anything that will break this chain.

OmerBenGera commented 1 year ago

I am closing this for now, as I can't really do anything regarding this.