Configuration ‐ World Definition - xBigEllx/realistic-block-physics-mirror GitHub Wiki
This page explains how to modify and create world definitions.
This section covers each configurable property of a world definition. Each table row corresponds to a configurable property, which covers its name/key, data type, a brief description, and its default value when omitted by the user.
Ref | Key | Type | Description | Default |
---|---|---|---|---|
1 | Defaults |
... | ||
2 | Dimensions |
List<String> | A list of Minecraft dimension IDs to assign the world definition to. | [] |
3 | ChunkAnalysis |
... | ||
4 | Physics |
... | ||
5 | PhysicsEnabled |
Boolean | Whether block physics should be enabled for the dimension[s]. | true |
Important
In Minecraft 1.12.2
, dimensions are represented as numerical IDs, whereas all versions beyond are represented as traditional resource locations (e.g., "minecraft:overworld").
Ref | Key | Type | Description | Default |
---|---|---|---|---|
1.1 | DefaultBlockDefinition |
Boolean |
Specifies the default block definition to give to blocks that do not have one specified. Leave this empty if you do not wish to apply physics to blocks that do not have a specified block definition. This is mainly used when wanting to apply physics to blocks that have been introduced by other mods, which removes the need of you to create individual block definitions for them. |
"" |
1.2 | DefaultBlocksBlacklist |
List<BlockIdentifier> | A list of block IDs and tags that should not be given default block definitions. | ["<minecraft>"] |
Important
Setting DefaultBlockDefinition
to a block definition that contains blacklisted blocks will only apply physics to the blocks that aren't blacklisted.
Warning
Take care when removing the default entry of DefaultBlocksBlacklist
when a value for DefaultBlockDefinition
has been specified, as this will cause Bedrock and other unintended Vanilla blocks to receive physics, likely causing damage to your world.
Ref | Key | Type | Description | Default |
---|---|---|---|---|
3.1 | Enabled |
Boolean |
Whether cave strengthen calculations should accept liquid pockets as stable areas. This setting will be ignored if chunk analysis has been globally disabled via the main configuration file. |
true |
3.2 | MaxAltitude |
Integer | A factor of additional strengthening to apply to caves. Higher values should result in less cave collapses (unless close to the surface). | 320 |
3.3 | MinAltitude |
Integer | The minimum altitude that chunk analysis updates will occur on blocks. | -64 |
Ref | Key | Type | Description | Default |
---|---|---|---|---|
4.1 | BlockDefinitionBlacklist |
List<string> | A list of block definition names that should not be enabled for the dimension[s]. | [] |
4.2 | CaveStrengthening |
... | Physics properties that are exclusively related to the strengthening of caves. | |
4.3 | PhysicsEngine |
String | Specifies which physics engine to apply to the dimension[s] for block physics calculations. | "realistic" |
Ref | Key | Type | Description | Default |
---|---|---|---|---|
4.2.1 | IgnoreLiquidPockets |
Boolean | Whether cave strengthen calculations should accept liquid pockets as stable areas. | false |
4.2.2 | StrengthenFactor |
Integer | A factor of additional strengthening to apply to caves. Higher values should result in less cave collapses (unless close to the surface). | 3 |
Realistic Block Physics generates its own default world definitions for all Vanilla Minecraft dimensions. These definitions can be freely modified and deleted however you please. Additional world definitions can also be created beyond the defaults, and reusing existing definitions as templates is the easiest way to do this (it is also helpful for allowing you to easily see each configurable property).
There is no set limit to the number of world definitions that can be created, but each one must be given a unique name.
Important
The name of each file (excluding the file extension) ultimately becomes the name of the world definition. Whenever the definition needs to be referenced in other parts of the configuration, this is the name that must be used.