Skip to content

yeelp/Distinct-Damage-Descriptions

Repository files navigation

ko-fi

(Supporting me on Kofi helps me develop mods full time!)

GitHub Downloads (all assets, all releases) Discord

Modrinth Game Versions CurseForge Game Versions

Adding physical D&D-style damage types to Minecraft to deepen the combat!

If you'd like to learn more about Distinct Damage Descriptions (shortened to DDD), check out the Modrinth or CurseForge descriptions! This README is to document building and contributing

Using Gradle with Distinct Damage Descriptions

This section assumes the following:

  • You know how to set up a Forge MDK for the correct Minecraft version.
  • You have the correct Java version installed and your JAVA_HOME system environment variable and points to an approriate JDK installation and is correctly prioritized in your PATH environment variable. (Note that from 1.12 until 1.18, Minecraft ran on Java 8.)
  • You have your IDE of choice at hand.

Using Gradle with Distinct Damage Descriptions is the same as building with pretty much any other mod.

Cloning

If you're more comfortable using something like Git GUI to clone a repo, then fair enough, you probably know what you're doing. 👍

Otherwise, create a directory for DDD, and clone the repository with

git clone https://github.com/yeelp/Distinct-Damage-Descriptions.git

then finish any additional Forge MDK setup that may be required.

Building

Building is easy. First, navigate to where you cloned DDD with any shell and execute

gradlew build

from inside that directory. If successful, this will output .jar files to ./build/libs. One is the actual jar, and the second, which will have -sources appended to the file name, is the source of what you just built.

If you'd rather not use the Gradle wrapper for whatever reasons, then you also probably already know what you're doing. 😉

Adding Distinct Damage Descriptions as a dependency

If you want DDD as a dependency for a mod you're developing, you can use the Curse Maven plugin to add it as a dependency. In your build.gradle, under dependencies, you can add the following

deobfProvided curse.maven:distinct-damage-descriptions-403617:<versionslug>

where <versionslug> is the slug for the version you want as a dependency. Typically, you'd always want the latest version. This will add that version of DDD as an optional dependency. For a required dependency, you use deobfCompile instead, and make sure that in your mod's @Mod annotation, you add the DDD version in the dependencies field. To have DDD v1.5.1 be a required dependency, you add "required-after:distinctdamagedescriptions[1.5.1,)" to the dependencies field. (This actually adds DDD as a required dependency that requires version v1.5.1 or greater.)

Finding the version slug

To find the version slug, open up the CurseForge page for DDD and go to the Files tab. By default, the files should be sorted with the newest (and therefore latest version) at the top. Click the file corresponding to the version you want as a dependency. Then, if you check the URL of the page, you'll see the version slug at the end. For example, for DDD v1.5.1, navigating to its page on CurseForge will show the following URL in the address bar:

https://www.curseforge.com/minecraft/mc-mods/distinct-damage-descriptions/files/5027467

The numbers at the end is the version slug. So, 5027467 is the version slug for v1.5.1.

Bringing it all together, the dependency entry in your build.gradle script's dependencies section to add DDD v1.5.1 as an optional dependency would look like

deobfProvided curse.maven:distinct-damage-descriptions-403617:5027467

Check DDD's contributing guidelines for specific contributing information.