Our template is a great way to get started with Meteor addon development.
The following guide will show you how to set up a new project using said template.
We will be using IntelliJ IDEA Community Edition, but you can use any IDE.
First, a couple of prerequisites:
We will not be teaching you how to use Git, Java, Gradle or IntelliJ IDEA in detail. That is out of the scope of this
guide.
If you are not familiar with any of these, we recommend you to learn the basics before continuing, or learn as you go.
You can find documentation and many tutorials online for all of these topics.
To set up Git, we’ll need your GitHub username and email.
The first one is easy, it’s the name you use to log in to GitHub.
The second one can be found in your GitHub Email settings.
It ends with @users.noreply.github.com
.
Here, be sure to check the Keep my email addresses private
and Block command line pushes that expose my email
boxes.
This will prevent your personal email from being exposed in commits.
You can now set up Git:
git config --global user.name YOUR_GITHUB_USERNAME
git config --global user.email YOUR_GITHUB_EMAIL
Use this template
button and select Create a new repository
.Create repository
.Code
button and copy the HTTPS URL.Get from VCS
in the top right.Clone
.At this point, your project should be set up and ready to go.
You can test it by running the Minecraft Client
run configuration in the top right.
The template contains the following important files:
com.example.addon.Addon
:
The entry point of your addon, it extends the extends MeteorAddon
class.src/main/resources/fabric.mod.json
, better explained by
the fabric.mod.json specification.id
: The mod identifier of your addon.name
: The user-facing mod name.description
: The user-facing mod description.authors
: The list of authors.contact
: The contact information for the project, such as the repository URL, Discord server, etc.entrypoints/meteor
: The string pointing to your addon’s entrypoint class.mixins
: The list of mixin configuration files for the Mixin library as filenames relative to the mod
root.custom/meteor-client:color
: RGB comma separated value used for the color of your addon’s credits in the main
menu.build.gradle
: The Gradle build script contains the Loom version, the
mod’s dependencies, and other useful
variables.gradle.properties
: The Gradle properties file contains the Minecraft version used by the project,
along with the version of your addon,
it’s maven_group
(explained here)
and archives_base_name
(the
name of your mod’s JAR file).README.md
: The README file contains information about your addon, such as a description, installation
instructions, etc. You can use Markdown to format your README.You might also want to add a LICENSE
file to your repository, which contains the license of your addon.
GitHub suggest choosealicense to help you pick one.
If you want a more exhaustive list, you can use the SPDX License List instead.
At its core, Meteor and its addons are Fabric mods.
Our template is set up to work with Fabric, and follows the same conventions.
Some useful resources that will help you with our template, and Fabric mod development in general:
gradle.properties
file.This is not an exhaustive list, but it should be enough to get you started.
Meteor’s source code is not documented, so it may be hard to understand its inner workings.
The project structure, class, method and field names try to be as descriptive as possible.
You can look at the source code of other Meteor addons to see how they work and learn from them.
Our template is always up-to-date with the latest version of Meteor and Minecraft, and we encourage you to do so as well with your addons.