MCPcopy Index your code
hub / github.com/BuildTheEarth/terraplusplus

github.com/BuildTheEarth/terraplusplus @v1.1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.1.0 ↗ · + Follow
1,244 symbols 3,375 edges 213 files 314 documented · 25% updated 5mo agov1.1.0 · 2021-03-02★ 13616 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

MIT License GitHub Release Discord Chat

What is it?

Terra++ is a fork of Terra 1 to 1 (a mod that utilizes public online datasets to generate the Earth's structures and features without any unfamiliar blocks or biomes at a 1 to 1 scale) which aims to greatly improve the performance, fix bugs and add new, useful and fast features to the original mod.

The mod is constantly being worked on and being updated as we add more features and fine tune the mod to achieve a better connection between the real world and the world of blocks.

The latest version can always be compiled from our Github, however a version of it will always be included with the BTE modpack, and we'll do our best to keep it up to date.

Features

  • Major roads, minor roads and Grass Pathways from OpenStreetMap
  • Elevation and biome placement using public terrain datasets.
  • Procedural Tree placement
  • Oceans based on elevation with depth data
  • "Customize World" GUI that does not require MalisisCore
  • Teleport by latitude and longitude using /tpll latitude longitude [elevation]
  • Ore spawning just below surface
  • Caves, Dungeons, and other standard underground features are still available and procedurally generated using CubicWorldGen as a baseline. Though, they are left disabled by default unless modified in the generator settings.

Commands and Permissions

  • Click Here to view a list of all commands and permissions

APIs:

Prerequisites

Obtaining

Stable releases of TerraPlusPlus are uploaded on our curseforge page. Builds for every commit can be found on our Jenkins Page kindly hosted by @daPorkchop_

If you want to build it yourself manually, even though Jenkins does it for you, here are the building instructions.

Extension points exported contracts — how you extend this code

IEarthPopulator (Interface)
A cube populator for earth terrain data. @author DaPorkchop_ @see ICubicPopulator [7 implementers]
src/main/java/net/buildtheearth/terraplusplus/generator/populate/IEarthPopulator.java
IScalarDataset (Interface)
A dataset consisting of floating-point scalar values. @author DaPorkchop_ [9 implementers]
src/main/java/net/buildtheearth/terraplusplus/dataset/IScalarDataset.java
IElementDataset (Interface)
A dataset consisting of arbitrary elements. @author DaPorkchop_ [6 implementers]
src/main/java/net/buildtheearth/terraplusplus/dataset/IElementDataset.java
IDataset (Interface)
@author DaPorkchop_ [6 implementers]
src/main/java/net/buildtheearth/terraplusplus/dataset/IDataset.java
MatchCondition (Interface)
@author DaPorkchop_ [19 implementers]
src/main/java/net/buildtheearth/terraplusplus/dataset/osm/match/MatchCondition.java

Core symbols most depended-on inside this repo

put
called by 92
src/main/java/net/buildtheearth/terraplusplus/config/GlobalParseRegistries.java
max
called by 49
src/main/java/net/buildtheearth/terraplusplus/util/interval/Interval.java
min
called by 45
src/main/java/net/buildtheearth/terraplusplus/util/interval/Interval.java
equals
called by 30
src/main/java/net/buildtheearth/terraplusplus/util/TilePos.java
build
called by 29
src/main/java/net/buildtheearth/terraplusplus/generator/IEarthAsyncDataBuilder.java
format
called by 27
src/main/java/net/buildtheearth/terraplusplus/util/TranslateUtil.java
stream
called by 26
src/main/java/net/buildtheearth/terraplusplus/util/bvh/BVH.java
size
called by 25
src/main/java/net/buildtheearth/terraplusplus/util/bvh/BVH.java

Shape

Method 910
Class 298
Interface 32
Enum 4

Languages

Java100%

Modules by API surface

src/main/java/net/buildtheearth/terraplusplus/control/AdvancedEarthGui.java89 symbols
src/main/java/net/buildtheearth/terraplusplus/dataset/osm/dvalue/BiOp.java39 symbols
src/main/java/net/buildtheearth/terraplusplus/control/PresetEarthGui.java21 symbols
src/main/java/net/buildtheearth/terraplusplus/util/http/HostManager.java20 symbols
src/main/java/net/buildtheearth/terraplusplus/generator/TerrainPreview.java20 symbols
src/main/java/net/buildtheearth/terraplusplus/generator/CachedChunkData.java20 symbols
src/main/java/net/buildtheearth/terraplusplus/generator/EarthGenerator.java19 symbols
src/main/java/net/buildtheearth/terraplusplus/util/bvh/QuadtreeBVH.java18 symbols
src/main/java/net/buildtheearth/terraplusplus/util/http/Http.java17 symbols
src/main/java/net/buildtheearth/terraplusplus/util/interval/IntervalTree.java16 symbols
src/main/java/net/buildtheearth/terraplusplus/util/OrderedRegistry.java16 symbols
src/main/java/net/buildtheearth/terraplusplus/generator/EarthGeneratorSettings.java16 symbols

For agents

$ claude mcp add terraplusplus \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact