Dimension definition
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[edit | edit source]
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[edit | edit source]
When stored as separate dimensions, they follow the following syntax:
- The root tag.
- type: One dimension type (an ID). Can be preset
overworld
,the_nether
,the_end
,overworld_caves
, or a custom dimension type - generator: Generation settings used for that dimension.
- type: The generator type as resource location. One of
noise
,flat
, ordebug
. - Additional fields of the generator, described below.
- type: The generator type as resource location. One of
- type: One dimension type (an ID). Can be preset
Generator types[edit | edit source]
debug[edit | edit source]
The generator type used when selecting debug mode in the world creation menu. This generator has no additional fields.
flat[edit | edit source]
The generator type used for superflat worlds.
- Additional fields:
- settings: Superflat settings.
- Flat generation settings
- settings: Superflat settings.
noise[edit | edit source]
The generator used in all the default dimensions.
- Additional fields:
- settings: One noise settings (an ID, or a new noise settings definition) — Settings for the noise generator.
- biome_source: Settings determining the biome layout.
- type: The biome source type as a resource location.
- Additional fields of the biome source, described below.
Biome sources[edit | edit source]
checkerboard[edit | edit source]
The checkerboard biome source places biomes in a checkerboard pattern.
- Additional fields:
fixed[edit | edit source]
The fixed biome source, also called single biome, uses one specified biome everywhere.
multi_noise[edit | edit source]
- Additional fields:
- preset: A reference to a parameter list. The default parameter lists are
overworld
andnether
.
- preset: A reference to a parameter list. The default parameter lists are
- Or:
- biomes: List of biome parameters points. Needs at least one entry. Biomes can appear in more than one parameter point.
the_end[edit | edit source]
The biome source used for the end dimension. This biome source has no additional fields.
Multi noise parameter list[edit | edit source]
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:
- preset: A reference to a hardcoded parameter list preset. The available presets are
overworld
andnether
.
- preset: A reference to a hardcoded parameter list preset. The available presets are
History[edit | edit source]
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. |