mojira.dev
MC-264273

Changing the dimension type of the overworld dimension breaks weather

Changing the dimension type of the overworld to any other dimension type (such as a custom one), will not allow weather changes to take effect until the server is restarted (in multiplayer logging out and back in doesn't change the weather).

Steps to reproduce:

  1. Create a data pack with the file data/minecraft/dimension/overworld.json set to

    {
        "type": "minecraft:the_nether",
        "generator": {
            "type": "minecraft:noise",
            "settings": "minecraft:overworld",
            "biome_source": {
                "type": "minecraft:multi_noise",
                "preset": "minecraft:overworld"
            }
        }
    }

    or download and install the attached data pack

[media]
  1. Enter the world and use /weather to change the weather

  2. Observe no change

  3. Close the world (in multiplayer, shut down the server)

  4. Enter the world once again

  5. Notice how the weather has now changed

Expected result:

Weather would just change on the fly, like with dimension type set to minecraft:overworld.

Actual result:
Weather only changes between server-end startups.

Attachments

Comments 2

Can confirm for 1.21.8 und 25w37a - Same issue applies when changing nether and end biomes to allow for rain/snow.

How to recreate:

I created a datapack that changes every biome file in \data\minecraft\worldgen\biome to allow for snowfall and added a different one to remove the nether roof (https://modrinth.com/datapack/topless-nether/gallery ) (That one is optional though). Here is an edited copy of the datapack I created containing only the biome files:

[media]

(The demonstration datapack should run fine in 1.21.7 – 1.21.8, and while displaying as outdated, should also run fine up to at least 25w37a. The other datapack I linked is outdated, but still runs in 1.21.8, but validation fails in 25w37a.)

Create a world with at least the demonstration datapack enabled, use

/weather rain 99d

/gamerule snowAccumulationHeight 8

and maybe increase the randomtickspeed. Then observe how the snow behaves in the overworld, switch dimensions and compare.

What I observe is very inconsistant. The first time I tried to change the weather while in the nether, it worked fine, later, it would only display a change when I relog, sometimes even relogging wouldnt change anything, and snow would never actually acumilate, only spawning one layer when first generating the chunks.

The following screenshots only use the demonstration data pack in 1.21.8.

2025-09-13_15.58.59.png

Overworld before relogging

2025-09-13_15.59.19.png

The Nether before relogging

2025-09-13_15.59.30.png

The Nether after relogging

2025-09-13_16.00.09.png

The End after relogging

Notably, when testing in 25w37a, I noticed that the issue was now partially fixed - I now had no issues getting snow to accumilate in the end, but still had to relog to get snow to show in the nether after changing the dimension and never got snow to accumilate there.

The following screenshots only use the demonstration data pack in 25w37a.

2025-09-13_16.08.38.png

The Nether after relogging

2025-09-13_16.07.50.png

The End before relogging

I assume this also affects custom dimensions, but wasnt able to test how the weather behaves there.

user-f2760

(Unassigned)

Confirmed

Platform

Normal

Custom Worlds, Data Packs

1.20.1, 1.20.2, 23w43b, 1.21, 1.21.4

Retrieved