Unversioned changes to wool values within the blocks.json and terrain_texture.json
Partner Rank: 2
Verification Builds: 1.19.70 (wools); 1.20.0.21 (wools and carpets)
Regression Builds: 1.19.22 (it may be later than this)
Summary: Changes within the blocks.json are unversioned resulting in the wrong textures being present in live content.
Affects currently Live Content: Yes, Monsters of the Deep
Impact: Live content incorrectly shows texture changes present in previous versions.
Repro Steps:
- Download the attached file or mcpack, and load a creative world in 1.19.22
- Give yourself red wool and red carpet blocks
- Observe they pull the coral textures
- Load the same world in 1.19.70
- Observe the wools have changed texture, whereas the carpets are still coral textured
- Load the same world again in 1.19.20 beta
- Observe that both blocks are now no longer using the changes present in the file.
Observed Results: Texture values were changed in the blocks.json to point to new values within the terrain_texture. This has led to incorrect textures being present in live content. The change has also been staggered, the carpets still reference the old terrain_texture values in some 1.19 builds.
Expected Results: Terrain_texture changes are versioned to prevent textures changing in old maps.
Screenshots/Videos attached: Yes
Notes:
We had remapped some blocks to other textures (rather than retexuring the PNGs) as a way to make the block changes compatible with any texture pack. However, since the blocks.json values were changed they no longer reference the changes we made in the terrain_texture.json.
Within 1.19.70 carpets still used the old blocks.json values and appeared as expected whereas wool blocks do not. However, via looking at the files within 1.20.0.21, it now shows the new values being used. The change is to move away from an array listing the wool textures, which are also used by carpets, to individual values within the terrain_texture. This is a similar change to other data value blocks, although it’s not been tested if they result in similar changes Jigabov reports similar problems for fences.
The bigger concern here is if in the future blocks.json values are changed, and as far as we are aware, not directly noted on change logs or elsewhere it could lead to many of our maps, and others, having the incorrect textures placed on blocks. If changes cannot be versioned, we should be informed of the changes.
This is likely related to MCM-1655 (ADO 1019308)