/CraftTweaker

Tweak your minecraft experience

Primary LanguageJavaMIT LicenseMIT

                    GitHub issues GitHub license Jenkins Discord

Table of Contents

Introduction

CraftTweaker is a Minecraft mod which allows modpacks and servers to customize the game. With CraftTweaker you can change recipes, script events, add new commands and even change item properties! When used with other mods the possibilities become endless! Ranging from custom machine recipes to entirely new blocks and items!

Feedback

If you're looking for help with the mod, or just want to come hang out, we have a Discord server.
If you're running into a bug or have a feature request, please don't be afraid to make an issue on the tracker.

License

Distributed under the MIT License. See the LICENSE file for more information.

Setup

To set up the CraftTweaker development environment you must clone the repo and initialize the submodule.

git clone --recurse-submodules https://github.com/CraftTweaker/CraftTweaker.git

After the project has been cloned and initialized you can directly import it into your IDE of choice.

Build

Building the project is as easy as running a Gradle command! Simply run:

gradlew build

and the outputted .jar files will be put in build/libs/ folder of each subproject (Common/build/libs/, Fabric/build/libs/ and Forge/build/libs/).

CraftTweaker also has automated markdown documentation, the output of that will be in the docsOut/ folder.

Maven

Every push to this repository is built and published to the BlameJared maven, to use these builds in your project, first add the BlameJared maven to your repositories block in your build.gradle file like so:

repositories {
    maven { 
        url = 'https://maven.blamejared.com'
        name = 'BlameJared Maven'
    }
}

Then, depending on what modloader you are using, you can use the following snippets, just replace [VERSION] with the latest version for each artifact.

Fabric Maven

dependencies {
    modCompileOnly('com.blamejared.crafttweaker:CraftTweaker-fabric-1.18.1:[VERSION]')
    // Example:
    // modCompileOnly('com.blamejared.crafttweaker:CraftTweaker-fabric-1.18.1:9.0.0+24')
}

Forge Maven

dependencies {
    compileOnly(fg.deobf('com.blamejared.crafttweaker:CraftTweaker-forge-1.18.1:[VERSION]'))
    // Example:
    // compileOnly(fg.deobf('com.blamejared.crafttweaker:CraftTweaker-forge-1.18.1:9.0.0+24'))
}

Common Maven

If you are in a multi-modloader environment (Such as MultiLoader), you can bring the Common artifact (code that does not depend on any specific mod loader but rather just the vanilla game) into your Common project like so:

dependencies {
    compileOnly('com.blamejared.crafttweaker:CraftTweaker-common-1.18.1:[VERSION]')
    // Example:
    // compileOnly('com.blamejared.crafttweaker:CraftTweaker-common-1.18.1:9.0.0+24')
}