diff --git a/bukkit/src/main/java/com/viaversion/viaversion/ViaVersionPlugin.java b/bukkit/src/main/java/com/viaversion/viaversion/ViaVersionPlugin.java index f6145aac7..126292f58 100644 --- a/bukkit/src/main/java/com/viaversion/viaversion/ViaVersionPlugin.java +++ b/bukkit/src/main/java/com/viaversion/viaversion/ViaVersionPlugin.java @@ -114,6 +114,9 @@ public class ViaVersionPlugin extends JavaPlugin implements ViaPlatform getServer().getPluginManager().registerEvent(serverInitEventClass, new Listener() { }, EventPriority.HIGHEST, (listener, event) -> manager.onServerLoaded(), this); + } else if (Via.getManager().getInjector().lateProtocolVersionSetting()) { + // Enable after server has loaded at the next tick + runSync(manager::onServerLoaded); } else { manager.onServerLoaded(); } diff --git a/bukkit/src/main/java/com/viaversion/viaversion/bukkit/platform/BukkitViaInjector.java b/bukkit/src/main/java/com/viaversion/viaversion/bukkit/platform/BukkitViaInjector.java index 5bf0dce2c..0085aadea 100644 --- a/bukkit/src/main/java/com/viaversion/viaversion/bukkit/platform/BukkitViaInjector.java +++ b/bukkit/src/main/java/com/viaversion/viaversion/bukkit/platform/BukkitViaInjector.java @@ -153,6 +153,11 @@ public class BukkitViaInjector extends LegacyViaInjector { } } + @Override + public boolean lateProtocolVersionSetting() { + return !PaperViaInjector.PAPER_PROTOCOL_METHOD; + } + public boolean isBinded() { if (PaperViaInjector.PAPER_INJECTION_METHOD) { return true;