Dimension definition

minecraft:floating_islands noise settings.Dimensions are JSON files located in data packs that define dimensions for the game. New dimensions added can be accessed by using commands, like /execute in <dimension> run teleport <coordinates>.
Usage
Dimensions are stored as JSON files within a data pack, at the path data/<namespace>/dimension/<name>.json. Alternatively, a Custom world preset can be used to customize all dimensions in a world. Dimensions stored separately override the dimension set in the selected world preset. This allows datapacks to only override a single dimension while keeping the other dimensions untouched. However, the user-selected world preset then doesn't have an impact on the given dimension.
JSON format
When stored as separate dimensions, they follow the following syntax:
- [NBT Compound / JSON Object] The root tag.
- [String] type: One dimension type (an [String] ID). Can be preset
overworld,the_nether,the_end,overworld_caves, or a custom dimension type - [NBT Compound / JSON Object] generator: Generation settings used for that dimension.
- [String] type: The generator type as resource location. One of
noise,flat, ordebug. - Additional fields of the generator, described below.
- [String] type: The generator type as resource location. One of
- [String] type: One dimension type (an [String] ID). Can be preset
Generator types
debug
The generator type used when selecting debug mode in the world creation menu. This generator has no additional fields.
flat
The generator type used for superflat worlds.
- Additional fields:
- [NBT Compound / JSON Object] settings: Superflat settings.
- Flat generation settings see Template:Nbt inherit/flat generator settings/template
- [NBT Compound / JSON Object] settings: Superflat settings.
noise
The generator used in all the default dimensions.
- Additional fields:
- [String][NBT Compound / JSON Object] settings: One noise settings (an [String] ID, or a new [NBT Compound / JSON Object] noise settings definition) — Settings for the noise generator.
- [NBT Compound / JSON Object] biome_source: Settings determining the biome layout.
- [String] type: The biome source type as a resource location.
- Additional fields of the biome source, described below.
Biome sources
checkerboard
The checkerboard biome source places biomes in a checkerboard pattern.
- Additional fields:
- [String][NBT List / JSON Array] biomes: Any number of biome(s) (an [String] ID, or a [String] tag with
#, or an [NBT List / JSON Array] array containing [String] IDs) - [Int] scale: Optional. Value between 0 and 62 that defaults to 2. Determines the size of the checkerboard grid. A scale of 0 means each cell of the grid is one chunk wide. Doubles each time the scale increases.
- [String][NBT List / JSON Array] biomes: Any number of biome(s) (an [String] ID, or a [String] tag with
fixed
The fixed biome source, also called single biome, uses one specified biome everywhere.
multi_noise
- Additional fields:
- [String] preset: A reference to a parameter list. The default parameter lists are
overworldandnether.
- [String] preset: A reference to a parameter list. The default parameter lists are
- Or:
- [NBT List / JSON Array] biomes: List of biome parameters points. Needs at least one entry. Biomes can appear in more than one parameter point.
- [NBT Compound / JSON Object]: A parameter point.
- [String] biome: One biome (an [String] ID) — The biome used at this parameter point.
- [NBT Compound / JSON Object] parameters: The parameters of this entry
- Noise parameter for biome (See World generation § Biomes for usages of each parameter in vanilla game) see Template:Nbt inherit/parameter point/template
- [NBT Compound / JSON Object]: A parameter point.
- [NBT List / JSON Array] biomes: List of biome parameters points. Needs at least one entry. Biomes can appear in more than one parameter point.
the_end
The biome source used for the End dimension. This biome source has no additional fields.
Multi noise parameter list
A multi-noise biome source parameter list is stored as JSON files within a data pack, at the path data/<namespace>/worldgen/multi_noise_biome_source_parameter_list/<name>.json. It is used to avoid changing world preset files when adding new biomes to experimental data packs.
The syntax is as follows:
- [String] preset: A reference to a hardcoded parameter list preset. The available presets are
overworldandnether.
- [String] preset: A reference to a hardcoded parameter list preset. The available presets are
History
| Java Edition | |||||||
|---|---|---|---|---|---|---|---|
| 1.16 | Pre-release 1 | Added dimensions to data packs. | |||||
| 1.16.2 | 20w29a | The noise settings for custom dimensions can now also be stored in separate files. | |||||
| pre1 | Custom dimensions now use the same folder pattern in data packs as other resources: namespace/<type>/resource.json. | ||||||
| 1.19 | 22w11a | Removed the seed field in noise generator and the_end biome source, and the world seed is now always used for all dimensions.
| |||||
| Dimension types can no longer be inlined in the dimension, they have to be a reference to a separate dimension_type file. | |||||||
| 1.19.4 | 1.19.4-pre1 | Added multi-noise biome source parameter list. | |||||
External links
| |||||||||||||||||||||||||||||||
|
| |||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||