How lunararcdevs/lunararc works
LunarArc is an experimental hybrid Minecraft server compatibility layer: it runs on supported mod loaders while adding Bukkit/Spigot/Paper plugin compatibility. Its principal workflow is starting the server, integrating loader-owned Minecraft classes with the shared compatibility layer, then serving modded gameplay and plugins. The README documents EssentialsX support; the tree also identifies launcher, translation, and server-behavior subsystems. Several implementation details are unsampled, so the graph limits links to documented architecture or visible calls.
Main entry points: common Shared compatibility · MultiRuntimePluginProviderStorage.java Runtime plugin loading · LauncherEntry.java Launcher entry · Launcher.java Loader launchers
Components 18
Server launch
- Launcher entry
installer/src/entry/java/io/lunararcdevs/lunararc/launcher/LauncherEntry.java - Loader launchers
installer/src/main/java/io/lunararcdevs/lunararc/launcher/Launcher.java
Loader compatibility
- Shared compatibility
lunararc-common/src/main/java/io/lunararcdevs/lunararc/common - Minecraft bridges
lunararc-common/src/main/java/io/lunararcdevs/lunararc/common/bridge - Targeted mixins
lunararc-common/src/main/java/io/lunararcdevs/lunararc/common/mixin
Plugin compatibility
- Plugin manager
lunararc-common/src/main/java/org/bukkit/plugin/SimplePluginManager.java - Plugin providers
lunararc-common/src/main/java/io/papermc/paper/plugin/storage/ServerPluginProviderStorage.java - Runtime plugin loading
lunararc-common/src/main/java/io/papermc/paper/plugin/manager/MultiRuntimePluginProviderStorage.java - Plugin classloaders
lunararc-common/src/main/java/io/papermc/paper/plugin/entrypoint/classloader/group/PaperPluginClassLoaderStorage.java
Server behavior
- Anti-xray
lunararc-common/src/main/java/io/lunararcdevs/lunararc/common/server/LunarArcAntiXrayEngine.java - Chat conversion
lunararc-common/src/main/java/io/lunararcdevs/lunararc/common/messaging/LunarArcComponentPipeline.java - Translations
i18n-config/src/main/java/io/lunararcdevs/lunararc/i18n/TranslationManager.java - World storage bridge
lunararc-common/src/main/java/io/lunararcdevs/lunararc/common/mixin/core/world/storage/LevelStorageSourceMixin.java
Other components
- Server operator
- Mod loader runtime
- Paper API contract
- EssentialsX
- World saves
Connections 14
- Server operator → Launcher entry: starts server
- Launcher entry → Loader launchers: selects launch
- Loader launchers → Mod loader runtime: launches runtime
- Mod loader runtime → Shared compatibility: hosts compatibility
- Shared compatibility → Minecraft bridges: exposes access
- Targeted mixins → Minecraft bridges: implements hooks
- Shared compatibility → Paper API contract: matches behavior
- Plugin manager → Runtime plugin loading: delegates loading
- Runtime plugin loading → Plugin providers: uses providers
- Runtime plugin loading → Plugin classloaders: registers loaders
- EssentialsX → Shared compatibility: uses mod content
- Shared compatibility → Anti-xray: provides feature
- Shared compatibility → Chat conversion: provides conversion
- World storage bridge → World saves: creates access