Mineuniverse
Log in Register
Mods

WorldJS: KubeJS Addon

Adds functionality for modpack developers to modify environment appearance through KubeJS
by xFray
Download Claim this project
468 downloads
0 likes
Updated Jul 6, 2026
0 hypes
KubeJS Server Utility Utility & QoL

WorldJS is a clientside KubeJS addon for modpack developers who want full control over the Minecraft world's atmosphere: sky color, fog, sun, moon, and rain textures, all in real time.

Built for personal use, but feel free to use it in your own packs.

Features

  • Override sky and fog colors on the fly
  • Replace sun, moon, and rain textures
  • Smooth 3 seconds fade transitions when colors are set or cleared, so changes don't snap
  • Both an event based API (WorldJSEvents) for one time setup and a direct API (WorldJS) for runtime changes
  • In-game commands for testing without writing scripts

Examples

One time setup on load

Use WorldJSEvents to define your defaults when the game loads:

// Set custom sky and fog colors
WorldJSEvents.skyColor(event => {
    event.setSkyColor(0xFF4400)
    event.setFogColor(0x221100)
})

// Set custom textures for the sun, moon, and rain
WorldJSEvents.skyTexture(event => {
    event.setSunTexture("kubejs:textures/environment/custom_sun.png")
    event.setMoonTexture("kubejs:textures/environment/custom_moon.png")
    event.setRainTexture("kubejs:textures/environment/custom_rain.png")
})

Runtime changes

Use WorldJS directly inside tick events, item use events, dimension change handlers, or anywhere else to change things on the fly:

// Switch the sky to red
WorldJS.setSkyColor(0xFF0000)

// Switch the fog to blue
WorldJS.setFogColor(0x0000FF)

// Swap textures
WorldJS.setSunTexture("kubejs:textures/environment/custom_sun.png")
WorldJS.setMoonTexture("kubejs:textures/environment/custom_moon.png")
WorldJS.setRainTexture("kubejs:textures/environment/custom_rain.png")

Reverting to vanilla

Each setter has a matching clear. Color clears fade smoothly back to the biome color over three seconds; texture clears are instant.

WorldJS.clearSkyColor()
WorldJS.clearFogColor()
WorldJS.clearSunTexture()
WorldJS.clearMoonTexture()
WorldJS.clearRainTexture()

// Or revert everything at once
WorldJS.reset()

Commands

For quick testing without writing scripts:

/worldjs sky set <hex>      e.g. /worldjs sky set FF0000
/worldjs sky clear
/worldjs sky status
/worldjs fog set <hex>
/worldjs fog clear
/worldjs sun set <texture>
/worldjs sun clear
/worldjs moon set <texture>
/worldjs moon clear
/worldjs rain set <texture>
/worldjs rain clear
/worldjs reset

Hex values accept either FF0000 or #FF0000.

Requirements

Credits

Thanks to Project8gbDeRam for helping out with the mod!

worldjs-1.0.1.jar
MC Client, 1.20.1, Forge
Release 2026-05-06 Get

More from xFray

Mimics Overhaul
1,676

You Might Also Like

Theurgy KubeJS
Theurgy KubeJS provides KubeJS integrations for Theurgy.
9,503,452
EntityJS
This mod uses KubeJS to dynamically register entities with full AI/Animation/Spawn Control support!
8,731,173
KubeJS TFC
KubeJS TFC integration
919,127
Forbidden Arcanus JS
Forbidden and Arcanus kubejs Compatibility
97,097
Immersive Engineering JS
kubejs compat for ie
94,624
KubeJS REI Runtime
Allows KubeJS to hide and show items from REI dynamically
89,244