The bug
Children of hidden advancements are always hidden as well even if they explicitly set hidden
to false
.
In-depth description
For the purposes of this bug report I will be using the Minecraft 'story' advancement tree to explain, overriding the default in a custom folder within the worlds directory. This is reproducible with custom advancements, but I wanted to use the vanilla ones for the sake of making the demonstration clearer.
Parent advancements with their "hidden" field set to "true" will pass this field value on to any and all children advancements within the tab, meaning that even if the parent advancement is completed the children icons will not display until they are also complete.
Specifying "hidden": "false" within these children's .json file does not avoid this issue, limiting options of guiding players down branches of a story once they have discovered an initial secret within a custom map or semi-vanilla survival world.
Expected behavior
When the hidden advancement was unlocked, it's childrens icons would then display as part of the tree due to having no "hidden" field specified within their .json file (therefore defaulting to false in theory). A hidden advancement not achieved by a player should also not show it's children (as is the current working implementation)
Actual behavior
When the hidden advancement was unlocked, it's childrens icons do not show up in the advancements screen despite having no mention of "hidden": "false"
within their .json
file.
How to reproduce
Download the attached advancements
and
and place them in the following directory of your world folder
data\advancements\custom
Open the world or use
/reload
Grant yourself the hidden parent advancement
/advancement grant @s only custom:root
Open the advancement GUI
→ The child advancement is not visibleGrant yourself the child advancement to make sure it was loaded
/advancement grant @s only custom:child
Attachments
Comments 3
Sorry for the confusion, I did not realize that @unknown is the reporter and therefor set the Confirmation Status to "Community Consensus". Now tested it myself and therefor set it to "Confirmed".
@@unknown since you are the reporter you can edit fields like the affected version yourself and do not have to comment on the report.
Confirmed for Minecraft 1.12 Pre-Release 2