Skip to content

A striped down version of Terra++ to use as a library, without any dependency to Minecraft or Forge

License

Notifications You must be signed in to change notification settings

SmylerMC/terraminusminus

 
 

Repository files navigation

TerraMinusMinus

GitHub License GitHub Workflow Status

What is it?

Terra-- is a fork of Terra++ intended to strip down dependencies to Minecraft and Forge so it can be used safely in as dependency for other projects (this is not a mod).

In particular, it is ships the map projection code as well as the world generation engine and its HTTP client.

How to use it in your project?

Terra-- is available at maven.smyler.net. You need to add that repository in your pom.xml or build.gradle build files, and then declare Just add the required maven repositories to your build.gradle, and declare Terraminusminus as a dependency.

I.e.:

repositories {

    // Smyler's repository has the Terraminusminus builds
    maven {
        name = "Smyler Snapshots"
        url = "https://maven.smyler.net/snapshots/"
    }
    
    // Classic JCenter repository that has most of what we need
    jcenter()
    
}

dependencies {

    // Include this repository as a dependency.
    // master-SNAPSHOT indicates to use the last commit built from master,
    // you can replace this with  a reference to another branch 
    compile 'net.buildtheart.terraminusminus:terraminusminus-core:master-SNAPSHOT'

    // Alternatively, if you want to include compatibility code to make Terra-- work with other projects,
    // you can include the relevant module (or multiple of them).
    // The terraminusminus-core module will be included as a transitive dependency.
    // For example, to include Bukkit API compatibility code:
    compile 'net.buildtheart.terraminusminus:terraminusminus-bukkit:master-SNAPSHOT'
    
    // Your other dependencies would go down there...
}

Versioning

Terra-- versions are split into two parts, the first of which represents the semver-compliant Terra-- API version and the second the Minecraft content compatibility version.

For example, version 2.0.0-1.21.4 implements version 2.0.0 of the Terra-- API and aims to be compatible with Minecraft 1.21.4.

The Minecraft compatibility version influences the content of the default data files (e.g. osm.json5), as well as the versions of dependencies Terra-- has in common with Minecraft (e.g. Gson).

Snapshot builds are available at maven.smyler.net.

APIs:

About

A striped down version of Terra++ to use as a library, without any dependency to Minecraft or Forge

Topics

Resources

License

Stars

Watchers

Forks

Languages

  • Java 100.0%