Skip to content

Getting started

Crystal Spider edited this page Oct 2, 2024 · 12 revisions

Add as a dependency

Since Soul Fire'd is built on a MultiLoader environment, you can depend on it regardless of whether you use a MultiLoader environment too or not.

Note: if you're not using a MultiLoader environment, the root build.gradle and the loader-specific build.gradle are the same, and you don't need Soul Fire'd common module.

Add required Maven repositories

In your root build.gradle add the following repositories:

repositories {
  // Required only for 1.18.2
  maven { url = "https://jitpack.io" }
  // Crystal Nest repository where Soul Fire'd is hosted.
  maven {
    name = "Crystal Nest"
    url = "https://maven.crystalnest.it"
  }
  // Fuzs repository where Soul Fire'd required dependency FCAP is hosted. Not needed since 1.21
  maven {
    name = "Fuzs Mod Resources"
    url = "https://raw.githubusercontent.com/Fuzss/modresources/main/maven/"
  }
}

Specify Soul Fire'd version

In your gradle.properties add this line:

soul_fire_d_version = 5.0.1

Make sure to point to the latest version for the specific Minecraft version.

Import Soul Fire'd common module

In your common build.gradle add the following dependency:

dependencies {
  implementation "it.crystalnest:soul-fire-d-common:$minecraft_version-$soul_fire_d_version"
}

Import Soul Fire'd loader-specific modules

Fabric

In your fabric build.gradle add the following dependency:

dependencies {
  modImplementation "it.crystalnest:soul-fire-d-fabric:$minecraft_version-$soul_fire_d_version"
}
NeoForge

In your neoforge build.gradle add the following dependency:

dependencies {
  implementation "it.crystalnest:soul-fire-d-neoforge:$minecraft_version-$soul_fire_d_version"
}
The NeoForge module is available since version 1.20.2.
Forge

In your forge build.gradle add the following dependency:

dependencies {
  // Forge deobfuscation strips dependencies, so you need to import Cobweb too. If missing, add the version property and set it to 1.0.0
  implementation fg.deobf("it.crystalnest:cobweb-forge:$minecraft_version-$cobweb_version")
  implementation fg.deobf("it.crystalnest:soul-fire-d-forge:$minecraft_version-$soul_fire_d_version")
}
The Forge module is unavailable since version 1.21.

Declare Soul Fire'd dependency

Depending on the mod loader, you need to declare Soul Fire'd dependency in different ways.

Fabric

In your fabric.mods.json add the following dependency:

"depends": {
  "soul_fire_d": "^${soul_fire_d_version}"
}

Otherwise, if Soul Fire'd is not strictly required, add this instead:

"suggests": {
  "soul_fire_d": "^${soul_fire_d_version}"
}
NeoForge

In your mods.toml (neoforge.mods.toml since 1.20.5) add the following dependency:

[[dependencies.${mod_id}]]
  modId = "soul_fire_d"
  # Change this to "optional" if Soul Fire'd is not required.
  # Change this field to use Forge syntax if on 1.20.2
  type = "required"
  versionRange = "[${soul_fire_d_version},)"
  ordering = "AFTER"
  side = "BOTH"
Forge

In your mods.toml add the following dependency:

[[dependencies.${mod_id}]]
  modId = "soul_fire_d"
  mandatory = true # Change this to false if Soul Fire'd is not required.
  versionRange = "[${soul_fire_d_version},)"
  ordering = "AFTER"
  side = "BOTH"