Skip to content

Custom Sky

Ethan Costa edited this page Sep 23, 2024 · 23 revisions

Custom Planets Sky

Learn how to have a beautiful sky !

Creation of the Resourcepack

First, you'll need to create the base of the resourcepack. The structure of the resourcepack should look like this :

├─ assets
│  └─ [namespace]
│         └─ sky
│
└─ pack.mcmeta

The sky folder This folder will contains all of the custom skies for our planets.

{
  "id": "minecraft:overworld",
  "cloud": true,
  "cloud_height": 192,
  "fog": true,
  "rain": true,
  "custom_vanilla_objects": {
    "sun": true,
    "sun_texture": "textures/environment/sun.png",
    "sun_height": 450,
    "sun_size": 200,
    "moon": true,
    "moon_phase": true,
    "moon_texture": "textures/environment/moon_phases.png",
    "moon_height": 75,
    "moon_size": 75
  },
  "sunrise_color": 16755035,
  "stars": {
    "vanilla": false,
    "moving_stars": false,
    "count": 100,
    "all_days_visible": false,
    "scale": 0.05,
    "color": {
      "r": 255,
      "g": 255,
      "b": 255
    },
    "shooting_stars": {
      "percentage": 99,
      "random_lifetime": [20, 100],
      "scale": 0.5,
      "speed": 0.4,
      "color": {
        "r": 255,
        "g": 255,
        "b": 255
      }
    }
  },
  "sky_type": "END",
  "sky_objects": [],
  "sky_color": {
    "custom_color": false,
    "color": [255, 255, 255]
  },
  "constellations": [
    "sky_aesthetics:big_dipper"
  ]
}

id: The id of the dimension

cloud: if the dimension should have cloud

cloud_height: The height of the clouds

fog: if the dimension should have fog

rain: Should the rain/snow is render

Custom Vanilla Objects

sun: If there is a sun in the dimension

sun_texture: The texture of the sun

sun_height: The height on the sky of the sun

sun_size: The size of the sun

moon: If there is a moon in the dimension

moon_phase: If there are moon phases

moon_texture: The texture of the moon

moon_height: The height of the moon

moon_size: The size of the moon


sunrise_color: The color of the sunrise (decimal color)


Stars

vanilla: should the stars need to be vanilla stars (If true, all the other params dont' count)

moving_stars: should the stars move

count: The amount of stars

all_days_visible: If the stars should be rendered even when it's the day

scale: the size of the stars

color: The R, G and B value of the stars color


Shooting Stars

(Available in 1.1.0 (1.21)

percentage: Every tick, a random number will be gererated (Min 1 and Max 1000) and if the value is equals or bigger than the percentage, a new shooting star will be created

random_lifetime: The minimum and maxium value for the random lifetime of a shooting star

scale: the scale/size of the star

speed: the speed of the star

color: the R, G and B value of the star color


sky_type: Available type "END", "NONE" and "NORMAL"

sky_objects: A list of Sky Objects


Sky Objects

Sky Objects allows you to add object to the sky.

    {
      "texture": "stellaris:textures/environment/solar_system/earth.png",
      "blend": true,
      "size": 8.0,
      "rotation": [
        60.0,
        0.0,
        5.0
      ],
      "height": 100,
      "rotation_type": "DAY"
    }

texture: The texture of the object

blend: If the object should blend

size: The size of the object

rotation: A Vector3 that is the rotation of the object

height: The height of the object in the sky

rotation_type: if the object should move with like the sun. Possibilities : DAY, NIGHT and STATIC


Sky Color

custom_color : enable the custom color

color: the R, G and B value for the sky color


Constellations

constellations: a custom list of constellation

Show Condition

With this, you can configure your custom sky to only render if the player is in a biome(s)

condition : if the condition is active

biome : which biome you want the sky to be active

biomes : a tag biome. You can only choose between biome and biomes

⚠️ : Don't make two skies active in the same biomes !

Examples

You can find exemples in the github of the Stellaris Project

New Features and breaking changes

This mod is, like I said, still in development so new feature will "normally" be available.

But this mean that the json files can be broke because of that. It's why all the new features will be set to Optional to avoid broken resource packs !

⚠️ : The features will be set optional only during the version! This means that a feature introduce in 1.1.0 will become Unoptional in 1.2.0

Clone this wiki locally