Cubic Skies reworks clouds and weather to make them 3D and localized, respectively. EXTREMELY WIP

Overview


Cubic Skies

Cubic Skies is my second mod, and the first one to change vanilla gameplay instead of just the visuals. The mod's clouds and weather is based on a suggestion by Axoladdy called Up, Up, and Update: Sunshine Edition. I actually always wanted to see the voxel clouds from this suggestion ingame since the first time I saw the suggestion a few years ago, but no one was making UUaU into a mod so I decided to do it myself.

At their greatest height range—which would be during a thunderstorm—clouds go from normal cloud height to y300 (y192 - y364 in 1.18) meaning that clouds are 172 blocks tall at their max.

Why not make Cubic Skies a part of Fabulous Clouds instead of it's own mod?

There are many reasons why voxel clouds and the weather rework aren't a part of Fabulous clouds, but here are most of the main ones:

  • There are people who like the vanilla 2D clouds and wouldn't like 3D clouds. They might want to have a mostly vanilla experience and think that the features in Cubic Skies isn't vanilla-like.
  • Customizable cloud layers would have to be removed. Voxel clouds are already going to take up the entire world above cloud height, meaning there isn't enough space in the minecraft world to add more cloud layers. And generating one layer of voxel clouds is already probably going to be very laggy, I don't want the performance to be doubled by adding voxel cloud layers.
  • I'm probably going to have to make my own version of vibrant clouds too because it changes the cloud color to the product of the fog color and the default cloud color, meaning that the rain clouds would be too dark to see during rain because of rain fog.
  • Noise clouds function by editing a cloud texture, which would not exist with voxel clouds.
  • Voxel clouds cannot be toggleable because voxel clouds would automatically have to disable pretty much all of Fabulous Clouds's features.
  • The weather rework requires voxel clouds to be a thing.
  • The weather rework has to be server-side. Otherwise things like the trident, snow cover, and other feature that are affected weather would not work properly. This would lead to bugs like players being able to trident fly when it isn't raining on the server.

The biggest difference between Fabulous Clouds and Cubic Skies is that Fabulous Clouds is not meant to actually change vanilla gameplay and is designed to be entirely client-side so it's able to work on multiplayer without the server adding the mod. Fabulous Clouds is also highly configurable and every feature is toggleable. Cubic Skies changes vanilla gameplay and is both server-side and client-side so both the client and the server have to have to mod installed. Cubic Skies isn't going to have anywhere near as much configurability, and features will not be toggleable.

Progress/Planned Features.

Tags:

  • [FC]: Probably will get added to Fabulous Clouds instead.
  • [Mod]: The feature might be different enough from the scope of Fabulous Clouds and Cubic Skies it could become its own mod.
  • [Und]: I am undecided on if this should go into Fabulous Clouds, be its own mod, or be a part of Cubic Skies. Probably won't be in the first release.
  • [Future]: Won't get added in the first release but probably will in a future version.

Fixes and Technical Changes:

  • What the fuck why is fog broken.
  • Clouds are server-side instead of client-side.

Voxel Clouds:

  • Clouds generate in three dimensions now instead of on a plane.
  • Dynamic, procedurally generated cloud shapes based on noise.
  • Add cloud chunks so I only have to draw the cloud vertices once. Cloud chunks would be 4 x 57 x 4 cloud voxels large.
  • Cloud chunks generate as you move.
  • Cloud cover changes by editing the variables used to generate new clouds. Clouds that are already generated never change shape.
  • Make cloud shapes look good and base them on real world cloud types.
  • Rain clouds actually make up the entire cloud instead of random cloud voxels being rain clouds.

Weather Rework:

  • There are two types of clouds: Rain and Fair clouds.
  • Cloud cover changes what the weather is. You can get a general picture of what the cloud covers will be here, with the main difference being that cloud cover influences weather instead of weather changing cloud cover.
  • Weather is localized based on the number and density of rain clouds in the cloud chunk you're under. The more rain clouds there are the stronger the rain/rain fog. Thunder is based on if your under a thunderstorm cloud chunk.

Miscellaneous Features:

  • Randomized wind directions. [FC]
  • Cloud color only changes with the time of day (sunsets, night, etc) and doesn't change with weather.
  • The inside of cloud chunks is foggy. Vertices inside cloud chunks get culled.
  • The animation of rain and snow is vivid and angled, not straight down, like in bedrock edition. [Und]
  • Cloud lighting. [Future]

Stuff I have considered adding or am considering adding.

Make a cloudgen api that allows people to edit cloudgen, using either datapacks or by allowing other mods to edit cloudgen. This is definitely going to be a thing in the future, just probably not right now.

Moon phases change cloud and fog color. Would fit better into Fabulous Clouds, but if I end up having to make my own version of vibrant clouds I might add this to both. It could also become a part of a mod that makes the night sky look better. (Starry Night?)

Lift and Drag status effects. I have not yet decided on whether I will add these or not.

Clouds shrink and grow as they move, never intersect with the terrain, pile up against mountains, and burn away over deserts. This would be very laggy because I would have to constantly redraw the cloud vertices as the clouds move over new terrain. There would also be artifacts because of terrain not being generated before suddenly appearing.

The rest of Up, Up, and Update. If I ever do this the rest of UUaU is becoming its own mod.

Building/Contributing.

Cubic Skies is in its early development phase and will be released when it is ready. In the meantime you can build the source code yourself or find a prebuilt version in github actions. Contributing to the project helps make it get done faster. If you want to contribute to the project please do. I have no idea how to do cloudgen.

Building

  1. Clone the repository.
  2. Run gradlew build in the project folder.

Contributing

  1. Clone the repository.
IntelliJ Idea
  1. Open IntelliJ IDEA.
  2. Press Open.
  3. Choose the build.gradle file and open it as a project.
You might also like...

This minecraft plugin adds @a, @p, and @r to EssentialsX Commands! Works with command block and console aswell!

EssentialsX-Target-Selectors This minecraft plugin adds @a, @p, and @r to EssentialsX Commands! Works with command block and console aswell! Usage: Ju

Sep 5, 2022

A data dumper and typing generator for the KubeJS functions, constants and classes.

A data dumper and typing generator for the KubeJS functions, constants and classes.

ProbeJS A data dumper and typing generator for the KubeJS functions, constants and classes. Great thanks to @DAmNRelentless, @LatvianModder and @yeste

May 25, 2022

Konas Client de-obfuscated and manually remaped by Gopro336, Perry, and other based people

Konas-Deobf-Remap This project doesent really have a purpose anymore now that the real source code has leaked (this is a higher version tho) Deobfusca

Aug 24, 2022

LWJGL is a Java library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL, Vulkan), audio (OpenAL), parallel computing (OpenCL, CUDA) and XR (OpenVR, LibOVR) applications.

LWJGL is a Java library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL, Vulkan), audio (OpenAL), parallel computing (OpenCL, CUDA) and XR (OpenVR, LibOVR) applications.

LWJGL - Lightweight Java Game Library 3 LWJGL (https://www.lwjgl.org) is a Java library that enables cross-platform access to popular native APIs usef

Oct 5, 2022

An experimental toolset for Unity asset and asset bundle files.

DisUnity An experimental command-line toolset for Unity asset and asset bundle files written in Java, mostly designed for extraction. Download The lat

Sep 28, 2022

:wrench: LibGDX/LWJGL tutorials and examples

:wrench: LibGDX/LWJGL tutorials and examples

lwjgl-basics is a minimal shader-based library for 2D LWJGL sprite games. It provides essential utilities for handling textures, shaders, and sprite r

Oct 4, 2022

A Java game development framework that deploys to JVM, HTML5, Android and iOS.

PlayN PlayN is a cross-platform Java game development library written in Java that targets HTML5 browsers (via GWT), desktop JVMs, Android and iOS dev

Jul 20, 2022

🗺️ Minecraft map editor and mod

A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting! Use it in creative, survival in sing

Sep 30, 2022

A fast, customizable and compatible open source server for Minecraft: Java Edition

A fast, customizable and compatible open source server for Minecraft: Java Edition

Glowstone A fast, customizable and compatible open source server for Minecraft: Java Edition. Introduction Glowstone is a lightweight, from scratch, o

Sep 28, 2022
Comments
  • Instance rendering

    Instance rendering

    HELLO. I have looked through the the rendering, and batching the cloud vertices per "voxel" isn't the most optimal way for rendering them. each chunk of clouds have their own draw call, you can flatten it to be 1 draw call for EVERY chunk by either batching the chunks with glSubData, or instance rendering (the latter would be better for Windows)

    opened by chaottic 0
Owner
Nuclear Chaos
b
Nuclear Chaos
This mod makes the clouds look much better.

Fabulous Clouds is a 1.17 Fabric mod that makes minecraft's clouds look much better. It isn't going to be ported to Forge or be backported. Fabulous C

Nuclear Chaos 16 Jul 24, 2022
Makes fire created by natural lightning cosmetic, meaning no blocks are destroyed from bad weather

Lightning Podoboo Makes fire created by natural lightning cosmetic, meaning no blocks are destroyed from bad weather. Keep the doFireTick gamerule ena

Lilly Rose Berner 10 Jun 19, 2022
A Minecraft Mod for Fabric which aims to make Block Entity rendering faster and more customizable with almost no compromises.

Enhanced Block Entities EBE is a 100% client side mod for Minecraft on the Fabric mod loader which aims to increase the performance of block entity re

null 144 Sep 29, 2022
using LWJGL to make a mini minecraft (mac also can run)

MineCraft Mini Features MineCraft Lite in Java and OpenGL Physics simulation, water simulation Perlin noise algorithm to generate maps Directional flo

null 1 Jan 4, 2022
PronounMC is a Minecraft plugin designed to make it easier to keep track of pronouns.

PronounMC PronounMC is a Minecraft plugin designed to make it easier to keep track of pronouns. Supported pronouns He She They It Any Other Ask Userna

Ace 8 Sep 16, 2022
Jetserver is a high speed nio socket based multiplayer java game server written using Netty and Mike Rettig's Jetlang.It is specifically tuned for network based multiplayer games and supports TCP and UDP network protocols.

Note New version of Jetserver is called Nadron and is in a new netty 4 branch of this same repo. JetServer is a java nio based server specifically des

Abraham Menacherry 1.2k Sep 11, 2022
With the games: brick breakers, tic-tac-toe, snake and tetris With the apps: calculator, stopwatch and text editor Themes, and hyperlinks

Game-Launcher --------------------- ABOUT THE GAME LAUNCHER ------------------------- With the games: brick breakers, tic-tac-toe, snake and tetris Wi

João Devesa 2 Dec 26, 2021
please read README to see how to play this. and star me to help me! this is very helpful and thanksful for me.

Sharustry Mod Browser / 모드 브라우저로 다운로드하기 Only possible with 124 or higher, only can download "latest" release 124 버전 이상에서만 가능하고, 오직 가장 최근의 정식 릴리즈만 다운로드

Sharlotte 48 Sep 24, 2022
It's a particle system only appliaction. Made with LWJGL (OpenGL and GLFW for Java) and ImGui.

ParticleParty It's a particle system only appliaction. Made with LWJGL (OpenGL and GLFW for Java) and ImGui. How To Use Move the camera with ctrl + W/

Ahmet Aydogan 2 Jan 8, 2022
Quick and dirty framework for on-the-fly patching of classes via the java attach api and transformers.

Nuclear Quick and easy framework for on the fly patching of running java applications. Inspiration from an idea of an injectable minecraft cheat. What

0x150 8 Dec 28, 2021