Terrarium: World

Terrarium: World

140 Downloads

Terrarium

Pixel-Perfect Earth Terrain for Minecraft

Generate pixel-perfect worlds from real elevation data, with dynamic tile loading and customizable terrain shaping.


๐ŸŒ Terrain Data Pipeline

  • Source: AWS S3 (elevation-tiles-prod/terrarium/{zoom}/{x}/{y}.png)
  • Temperature and Precipitation Personal Source Hosted on GitHub, I compiled this using QGIS. (clim-monthly/{month}/{zoom}/{x}/{y}) This is a temporary hosting solution
  • Pixel-to-Block: 1 pixel = 1 Minecraft block.
  • Tile System:
    • Each tile = 256ร—256 pixels (256ร—256 blocks ingame).
    • zoom level determines tile count per axis (2^zoom tiles).
    • Example: zoom: 8 = 2โธ = 256 tiles โ†’ 256ร—256 = 65,536 blocks wide.

๐Ÿ—ƒ๏ธ Downloads

  • While it is still at Alpha quality, you can download indev test versions here
  • Support is not guarunteed

- BlossomLib is required, and FabricAPI

๐Ÿ”๏ธ Technical Notes

  • Scale Examples:
    • zoom: 10 = 1,024 tiles โ†’ 262,144ร—262,144 blocks.
    • zoom: 13 = 8,192 tiles โ†’ 2,097,152ร—2,097,152 blocks.

๐ŸŒฉ๏ธ Performance:

  • Higher zoom = larger worlds but slower generation.
  • Reduce zoom to 8โ€“10 for survival-friendly sizes.

World Size Comparison

  • zoom: 10 (small - ~1:48) vs. zoom: 13 (planetary-scale - ~1:6).

๐Ÿ–ผ๏ธ Screenshots:

  • Taken with v0.0.2-beta.1 + Conquest Reforged + Photon/UShader

Zoom: 13 | Height 768


2025-04-10_21 09 04 2025-04-10_21 24 04 2025-04-10_21 25 46


๐Ÿ› ๏ธ How It Works

  • Tile Fetching: Downloads 256ร—256 PNG tiles from AWS based on zoom and caches.
  • Height Mapping: Converts RGB pixels to block heights, scaled by additionalAlt.
  • Biome Placement: Vanilla biomes mapped using elevation (startingY + altitudeDropoff).

๐Ÿ”ง Configuration

/config/BlossomMods/Terrarium.json:
```json {
"zoom": 13, // 2ยนยณ tiles = 8,192 tiles wide (โ‰ˆ2M blocks at 256px/tile). "worldHeight": 768, // Max Y height. "startingY": 0, // Base height offset (negative for deeper oceans). "adjustXoffset": 400000, // Where on the map the world should generate: spawn location essentially! "adjustZoffset": 800000, "ELEVATION_URL": "https://s3.amazonaws.com/elevation-tiles-prod/terrarium/", //elevation data source "TEMPERATURE_URL": "https://raw.githubusercontent.com/ly-nxs/terrarium-data/refs/heads/main/tiles/climate-monthly/", //climate data source "CACHE_DIR": "./tiles", //tile cache dir "month": 0, //month for climate data, currently only january - 0, and february - 1 "noise_biome_scale": 0.01 //scale for biome noise factor }