mojira.dev
MC-182944

Killing the Ender Dragon grants the "Free the End" advancement regardless of dimension the dragon was killed in

When you summon and kill the Ender Dragon in the overworld, the "Free The End" advancement is granted.

How to reproduce

1. Run the command:

/advancement revoke @s only minecraft:end/kill_dragon

2. Run the command:

/summon ender_dragon ~ ~ ~ {Health:1f}

3. Hit the ender dragon

❌ You get the achievement even if you are not in the End.

Code Analysis can be found in the comment by @unknown

Linked issues

Attachments

Comments 6

Hi there!

I can confirm in 1.16.1 as well as snapshot 20w28a.

I can confirm for 20w46a.

Can confirm in 1.16.5.

  • This is due to the .json for end/killed_dragon does not contain a specific criteria for what dimension it is killed in.

  • This is customizable with a Datapack if prefered.

//...  (comments aren't allowed in json btw lol)
      "conditions": {
        "entity": [
          {
            "condition": "minecraft:entity_properties",
            "predicate": {
              "type": "minecraft:ender_dragon"
            },
            "entity": "this"
          }
        ]
    //missing the following:
//           "location": {
//          "dimension": "minecraft:the_end"
//        }
      }
  • This may be a bug, however it might be good to leave it that way, for if you accidently move it to another dimension and kill it there, you are still freeing anything under the Dragon's influence, and also so you don't need to kill it more times than you may or may not want to in order to get the advancement.

Can confirm in 1.17.1. Steps to reproduce:
1. Type

/advancement revoke @s only minecraft:end/kill_dragon

2. Type

/summon ender_dragon ~ ~ ~ {Health:1f}

3. Hit the ender dragon.

4. ❌ You get the achievement even if you are not in the End.

Can confirm in 1.19.2.

[media]

sofiasean560

(Unassigned)

Confirmed

Advancements

1.15.2, 20w19a, 1.16.1, 20w28a, 1.16.2, ..., 1.19 Pre-release 3, 1.19.2, 1.19.4, 23w16a, 1.20.1

Retrieved