-
-
Notifications
You must be signed in to change notification settings - Fork 1
Contributing
LabsZero edited this page Sep 22, 2026
·
5 revisions
Contributions are welcomed, in any form.
You are welcome to:
- Submit bugs or something not working to the GitHub issues page.
- Submit new translations here.
- A Java IDE that supports Gradle (IntelliJ IDEA is recommended).
- Understanding of Java, Gradle, Minecraft, ModLoaders(Forge/NeoForge/Fabric/QuiltMC), and Paper/Bukkit.
- LunarArc is based on SpongeMixin. Understanding how to write Mixins and how they work is important.
Clone this project and import it into a Java IDE.
- The
lunararc-commoncontains most of the codes.- The mixins are in
io/lunararcdevs/lunararc/common/mixinpackage. - The bridges provide the interface among our mixins and platforms, they are implemented in mixins.
- The other codes including the remapper are in the
io/lunararcdevs/lunararc/common/modpackage.
- The mixins are in
- The
lunararc-forgelunararc-neoforgelunararc-fabricandlunararc-quiltcontains platform-specific codes, its structure is similar to thelunararc-common. - The
bootstrapbundles subprojects to a server jar. - The
installerwill install mod loaders automatically at run time. - The
buildSrcis used for remapping the papermc jar in the developing environment. - The
i18n-configcontains multi-language translations of lunararc.
- In general, follow Google Java Style.
- Mixins should follow this implementation policy: mixin method names and bridge class names
- Shadows should be wrapped using
@formatter:off/onfor readability
Following steps:
- Update Minecraft and mod-loader versions in
build.gradle. - Update Paper/Bukkit and core project dependencies in
gradle/libs.versions.toml. - Check the upstream commits, all from PaperMC, MinecraftForge, NeoForged, FabricMC and QuiltMC.
- Update resource files, including
async-catcher.json,lunararc.accesswidener(don’t forget to remove the duplicate entries in AW).