This is a template project that can be used to setup a multi-loader Minecraft Mod development environment with Balm.
The gradle setup is heavily based on Jared's MultiLoader Template.
- Click "Use this template" on GitHub to create a new repository based on this template.
- Clone the repository to your local machine.
- Open the project in IntelliJ IDEA.
- Open
gradle.propertiesand configure your mod's metadata. - Now that you've set a mod id, you should rename all instances of
yourmodandYourModto your mod id / name, both in code and in file names. - The majority of code lies in the
commonfolder, while the mod-loader specific folders are only needed for implementing third party mod compatibility. - The template includes a basic example for most of Balm's features. Delete parts that you don't need before releasing your mod.
- Don't forget to replace your mod's logo in
common/src/main/resources/yourmod-icon.png.
If you need to add dependencies, do so in dependencies.gradle. I recommend leaving the build.gradle files untouched
to make updating to newer versions of the template easier.
Configure the mod's metadata as well as any mod loader or dependency versions in this file.
Ideally, you should never make changes to build.gradle directly.
This file is used as a changelog for uploads to Modrinth and CurseForge.
You should replace this file with a license of your choice.
Unless you fully understand the implications of the license you choose, you should keep this as All Rights Reserved.
This is used for Modrinth's modrinthSyncBody gradle task, updating the Modrinth project page to match the Markdown
file.
This is where Maven repositories for fetching dependencies are configured. It is good practice to filter each repository to only the groups you expect to download from them.
If you're interested in contributing to the mod, you can check out issues labelled as "help wanted".
When it comes to new features, it's best to confer with me first to ensure we share the same vision. You can join us on Discord if you'd like to talk.
Contributions must be done through pull requests. I will not be able to accept translations, code or other assets through any other channels.