mojira.dev
MC-212630

Melon and pumpkin stem model template names are badly named

The resource pack attached offers a complete fix for this issue. Mojang have my full permission to (and are encouraged to) replace the affected vanilla model files with the contents of the resource pack.

Download resource pack:

  • 1.17.1:

[media]

The bug

The stem (for pumpkins/melons, not mushrooms or nether fungi) block models, which are functionally template models due to only containing the block shape and being referenced by other models to apply textures, are not prefixed with "template_". This is unlike a multitude of other template models which the game uses, which are in fact prefixed with "template_".

In addition, these template models are named extremely differently from the models which utilize them, which is confusing and unintuitive.

How to reproduce

This is as easy as just navigating to the assets/minecraft/models/block directory and checking the file names.

  1. Open the game jar file using one's preferred method

  2. Check the model file of a block that uses the cross model, such as melon_stem_stage4.json

    1. Note that it references block/stem_growth3.json, and also note that it both isn't prefixed with template_ and also uses very different terminology ("growth" rather than "stage")

  3. Check the model of a block such as a wall torch, anvil, chorus flower, ...

    1. Note that the model it references is prefixed with template_ due to the referenced model in question being a template model

Expected and actual results

The table below summarizes the expected file names for the models in question.

User model name

Expected template model name

Actual template model name

<melon/pumpkin>_stem_stage0.json

template_stem_stage0.json

stem_growth0.json

<melon/pumpkin>_stem_stage0.json

template_stem_stage1.json

stem_growth1.json

<melon/pumpkin>_stem_stage0.json

template_stem_stage2.json

stem_growth2.json

<melon/pumpkin>_stem_stage0.json

template_stem_stage3.json

stem_growth3.json

<melon/pumpkin>_stem_stage0.json

template_stem_stage4.json

stem_growth4.json

<melon/pumpkin>_stem_stage0.json

template_stem_stage5.json

stem_growth5.json

<melon/pumpkin>_stem_stage0.json

template_stem_stage6.json

stem_growth6.json

<melon/pumpkin>_stem_stage0.json

template_stem_stage7.json

stem_growth7.json

attached_<melon/pumpkin>_stem.json

template_attached_stem.json

stem_fruit.json

How to fix

Fixing this is as simple as renaming the 9 stem template mode .jsons from their current names to their expected names, and then repointing all model files that reference them to the new names. The resource pack attached to this issue fixes all 18 of the models to point to the newly renamed stem templates.

The pack also cleans up formatting for consistency, and also has a multitude of bonus fixes attached:

  • MC-96463 - The backface mirroring on the stem cross planes has been removed, as this is undesirable for cross models due to an ugly mirror symmetry effect that appears as a result. This change does not affect the attached part of attached stems.

  • MC-236474 - Stems no longer have ugly dark shading, in order to bring them more in line with other plants.

  • MC-236476 - Some of the 0-16 plane ranges have been changed to 0.8-15.2 for consistency with cross models, which should make pixels appear more square.

Other thoughts

Like was mentioned at the end of MC-236461, these crops use an "age" block state, but all associated models use "stage" instead. Perhaps the model names would be worth changing again to amend this issue?

Related issues

Attachments

Comments

migrated
[media]
Avoma

Can confirm.

Avoma

Can confirm in 21w05b.

migrated

Confirmed for 1.17.1.

muzikbike

(Unassigned)

Confirmed

Textures and models

incorrect-asset-names

1.16.4, 20w49a, 20w51a, 21w03a, 1.16.5, 21w05b, 1.17.1, 21w40a

Retrieved