Skip to content

Incompatibilities

Horizon tries not to break much; however, there are some things it’s incompatible with.

  • The legacy plugin loader. The legacy plugin loader(LegacyPluginLoadingStrategy.java) is completely unsupported in Horizon. This is due to Horizon having a few internal mixin injections to the ModernPluginLoadingStrategy.java file, and just supporting the legacy format is not in the scope of development ATM, as people should be using the modern plugin loading strategy. To ensure you are using the modern strategy, please ensure your server does not contain the startup flag -Dpaper.useLegacyPluginLoading=true.
  • UniverseSpigot. Due to how Universe’s loader is set up, Horizon is fundamentally incompatible with Universe. Do not ask CanvasMC or Universe for support; it will not work and is not planned to work.
  • Spigot and Bukkit. Horizon strictly works only for Paper servers and forks, and is untested on Spigot and Bukkit, and you will not receive support for using Spigot or Bukkit with Horizon
  • Ignite and Eclipse. Eclipse is a fork of Ignite, and Horizon derives some source from Eclipse since this project supersedes Eclipse. As such, they are both completely and fundamentally incompatible with Horizon. Horizon, in comparison to Ignite, is generally more inclined and intended for expanding upon Ignite’s initial structure and idea, aimed at specifically, plugin usage to match closer to things like Paper’s patching style and such (transformers, for example). This also uses things like the plugin YAML and such, and is compatible with using the main entrypoint in plugins, unlike Ignite. Horizon is intended to expand plugin capabilities further for Paper, while Ignite is meant for a more universal MIXIN launcher for Java servers.