Updated Configuring mods (markdown)

Lukas Rieger 2020-02-21 11:07:43 +01:00
parent 54d1247b28
commit 850431a1d1

@ -34,19 +34,19 @@ After that you might need to do some more configuration. Go through the chapters
This is the most annoying part, but it is only needed with worlds (chunks) stored in the 1.12.x format! So if you have a minecraft world with only 1.13.x and above, you don't need to do this.
Before 1.13 and [the flattening](https://minecraft.gamepedia.com/Java_Edition_1.13/Flattening), blocks are stored by their numeric-id and a meta-value. So the andesite block for example has id `1` and a meta value of `5`, this is usually written like so: `1:5`.<br>
If a mod now adds a new block, this new block is being assigned to such an id. Forge then stores a mapping of the numeric-id and the textual-id of this block in a table in the world-files *(`level.dat`)*. Now BlueMap needs to know for each id:meta combination what block-state to render.
If a mod now adds a new block, this new block is being assigned to such an id. Forge then stores a mapping of the numeric-id and the literal-id of this block in a table in the world-files *(`level.dat`)*. Now BlueMap needs to know for each id:meta combination what block-state to render.
So, we have 3 id-types:
- The `numeric-id` (e.g. `169`) is some integer standing for some block. The mapped block can be different for each world.
- The `textual-id` (e.g. `minecraft:sea_lantern`) is the (namespaced) unique name of the block.
- The `resource-id` (e.g. `minecraft:sea_lantern`) declares the namespace and the name of the block-state file in resources (and resource-packs). So BlueMap would search in the loaded resources for the file `assets/<namespace>/blockstates/<id>.json` (`assets/minecraft/blockstates/sea_lantern.json`). This is usually the same as the `textual-id` but there are some rare cases where they are different.
- The `literal-id` (e.g. `minecraft:sea_lantern`) is the (namespaced) unique name of the block.
- The `resource-id` (e.g. `minecraft:sea_lantern`) declares the namespace and the name of the block-state file in resources (and resource-packs). So BlueMap would search in the loaded resources for the file `assets/<namespace>/blockstates/<id>.json` (`assets/minecraft/blockstates/sea_lantern.json`). This is usually the same as the `literal-id` but there are some rare cases where they are different.
To configure a block, you need to find all possible meta-values and their belonging textual-id + properties.
Then we format them like this: `"namespace:textual-id:meta": "namespace:resource-id[property1=value1,property2=value2]"` and add them to the config *(see example above)*. You can also use the numeric-id instead of the textual-id, but since this id can change across worlds this is not recommended.
To configure a block, you need to find all possible meta-values and their belonging literal-id + properties.
Then we format them like this: `"namespace:literal-id:meta": "namespace:resource-id[property1=value1,property2=value2]"` and add them to the config *(see example above)*. You can also use the numeric-id instead of the literal-id, but since this id can change across worlds this is not recommended.
Currently, there is no general way how to find this info, but here are some things that might help:
- Has the mod a wiki? Maybe there is some info.
- The textual-id and the properties of a block are usually displayed in-game if you press F3 and look at the block.
- The literal-id and the properties of a block are usually displayed in-game if you press F3 and look at the block.
- The BlueMap plugin has a command `/bluemap debug` that shows you all the information BlueMap has about the block at your feet and the one you are standing on. For 1.12.x this also includes the numeric-id and the meta-value.
- The mod/plugin [WorldEdit](https://www.curseforge.com/minecraft/mc-mods/worldedit) can create blocks based on numeric-id:meta for you
- BlueMap generates a folder `missing-configs` that contains files with all blocks BlueMap did not find any configuration for. Those generated configs contain the default values BlueMap "guessed" for the blocks.