Minecraft Custom Biome Data Pack: Make One in 26.3
Build a minecraft custom biome data pack for 26.3: the file path, the required fields, placing it with /fillbiome and testing it with /locate.
Updated 5 Nov 2026Written for Minecraft 26.33 min read
Written for Minecraft 26.3.
A minecraft custom biome data pack is one JSON file in data/<namespace>/worldgen/biome/. The file sets the biome's temperature, rainfall, water colour and what generates in it. You can then paint the biome into your world with a command.
Before you start
Minecraft Java Edition 26.3 (data pack format 121.0).
A text editor. Any editor that saves plain JSON works.
A new world or a copy of your world. Read Pack basics first if you have never made a pack.
A data pack is a folder in your world's datapacks folder. It holds a pack.mcmeta file and a data folder. A namespace is just your own folder name inside data, such as mypack.
Create the data pack
Make the folder
<world>/datapacks/mybiomes. Inside it createpack.mcmetawith the content below.Create
data/mypack/worldgen/biome/inside the pack, then a file namedglow_meadow.json.Paste the biome JSON below into that file and save it.
Restart the server. Worldgen files load at start-up, so a restart is the safe way to pick them up.
{
"pack": {
"description": "My custom biomes",
"min_format": [121, 0],
"max_format": [121, 0]
}
}Write the biome file
This is the smallest biome that passes the format. Every key shown is required:
{
"has_precipitation": true,
"temperature": 0.8,
"downfall": 0.4,
"effects": {
"water_color": 4159204
},
"carvers": [],
"features": []
}has_precipitation: true for rain or snow, false for none. Temperature decides which.temperatureanddownfall: floats. They tint grass and foliage.water_color: a colour as one decimal number. 4159204 is the normal value. Use our colour converter to turn a hex code into a number.carversandfeatures: lists of caves and generated things (trees, ores, flowers). Both may be empty. Add the ids of vanilla features to copy a vanilla look.grass_color,foliage_colorandgrass_color_modifier(none,dark_forestorswamp) are optional extras insideeffects.
Features are ordered by generation step: raw generation, lakes, local modifications, underground structures, surface structures, strongholds, underground ores, underground decoration, fluid springs, vegetal decoration and top layer modification. Vanilla lists one array per step, 11 in total, and an empty list is allowed.
Mob spawns and sky/fog colours moved. Since 25w42a the sky, fog and sound keys are no longer in
effects, and in 26.3 the mob spawn lists were moved to environment attributes. We did not verify the attribute format, so check the Minecraft Wiki biome definition page before setting spawns or fog.
Put the biome in your world
The simplest route is to paint it onto existing terrain. Stand in the area and run, with your own coordinates:
/fillbiome ~-10 ~-10 ~-10 ~10 ~10 ~10 mypack:glow_meadowIt needs permission level 2 and only changes biome data, not blocks. The area must be loaded and its volume cannot exceed the commandModificationBlockLimit game rule. In 26.3 the biome changes in 4x4x4 cells, not per block. Add replace <filter> to change only chosen biomes.
To make the biome generate in new chunks, it has to be listed in a dimension's biome source, which is more advanced and not covered here (we did not verify that format for 26.3).
Check it worked
Run the
/fillbiomecommand. Success is a count above 0.Look at grass and water colour in the painted area. Press F3 and read the Biome line.
Run
/locate biome mypack:glow_meadow. It finds the biome only where it exists in the world.
Common problems
The command says the biome is unknown
The pack did not load. Check the folder path, the JSON for stray commas, and that you restarted.
The server will not start
A required key is missing or has the wrong type. Compare against the example above and read the console error.
The colours changed but old chunks look the same
Biome colour blends across borders, and /fillbiome works in 4x4x4 cells. Paint a bigger area.
Nothing generates in the biome
The empty features list is why. Add feature ids to the step arrays.
Related: custom structures to give your biome landmarks.