Depending on Create
Create version: 6.0.0
Minecraft version: 1.21.1
This page describes how a mod developer can add a dependency on Create.
Preliminary Information
Release jars of Create...
- are built and published manually.
- are published to CurseForge and Modrinth.
- are published when the developers feel that enough features have been added since the previous release.
- do not have a build number.
Non-release jars of Create...
- are built and published automatically by the CI.
- are published to the Maven.
- are published every time there is a new commit.
- do have a build number.
Even though release jars do not have a build number, they were still built from a commit, which also has a corresponding non-release jar. This is to say that each release jar is associated with a unique, near identical non-release jar on the Maven.
It is not advisable to depend on a non-release jar that does not have a corresponding release jar as it may contain code that does not exist in a release jar. Your mod may not work in production if it uses such code since users will be using a release jar as opposed to the non-release jar you depended on during development.
The intended way to access Create jars to depend on them is through the Maven.
For ease of use, this page will always contain the build numbers that exactly correspond to the release jar of the version at the top of the page.
Quick Access
If you are an add-on developer, you will need both a development environment dependency and a production environment dependency.
If you are not an add-on developer, you will only need a development environment dependency.
Types of Dependencies
Development Environment Dependency
This type of dependency is added to the Gradle buildscript so that Gradle and your IDE can find Create"s code.
Configuration
The following code defines the maven where Create, Flywheel, and Registrate jars are hosted and defines dependencies on those.
repositories {
maven { url = "https://maven.createmod.net" } // Create, Ponder, Flywheel
maven { url = "https://mvn.devos.one/snapshots" } // Registrate
}
dependencies {
modImplementation("com.simibubi.create:create-${minecraft_version}:${create_version}") { transitive = false })
modImplementation("net.createmod.ponder:Ponder-Forge-${minecraft_version}:${ponder_version}"))
modCompileOnly("dev.engine-room.flywheel:flywheel-forge-api-${flywheel_minecraft_version}:${flywheel_version}"))
modRuntimeOnly("dev.engine-room.flywheel:flywheel-forge-${flywheel_minecraft_version}:${flywheel_version}"))
modImplementation("com.tterrag.registrate:Registrate:${registrate_version}"))
}
repositories {
maven("https://maven.createmod.net") // Create, Ponder, Flywheel
maven("https://mvn.devos.one/snapshots") // Registrate
}
dependencies {
modImplementation("com.simibubi.create:create-${property("minecraft_version")}:${property("create_version")}") { isTransitive = false }!!)
modImplementation("net.createmod.ponder:Ponder-Forge-${property("minecraft_version")}:${property("ponder_version")}")!!)
modCompileOnly("dev.engine-room.flywheel:flywheel-forge-api-${property("flywheel_minecraft_version")}:${property("flywheel_version")}")!!)
modRuntimeOnly("dev.engine-room.flywheel:flywheel-forge-${property("flywheel_minecraft_version")}:${property("flywheel_version")}")!!)
modImplementation("com.tterrag.registrate:Registrate:${property("registrate_version")}")!!)
}
minecraft_version = 1.21.1
create_version = 6.0.0-4
ponder_version = 1.0.39
flywheel_version = 1.0.0-9
registrate_version = MC1.21-1.3.0+62
Production Environment Dependency
This type of dependency is added to the neoforge.mods.toml
file so that NeoForge knows your mod will not work without a certain version of Create. This type of dependency is only useful if a development environment dependency was also added. This type of dependency should not be added if your mod is able to work in a production environment without Create.
Configuration
Add the following dependency definition to your neoforge.mods.toml
file, replacing ${modid}
with your mod's ID. This tells Forge that your mod depends on Create. If Create is not present or is outdated, NeoForge will display an error screen explaining this to the user.
[[dependencies.${mod_id}]]
modId="create"
type="required"
versionRange="[6.0.0,)"
ordering="NONE"
side="BOTH"