Skip to main content

Receive Advancement

The arc:on_advancement action type is triggered when a player receives an advancement.

Action Data

When this action is triggered, the following action data is made available to be used by conditions and rewards:

Action Data TypeDescription
arc:advancementRepresents an in-game advancement that was earned.

Example

The following example will give the player an apple every time they complete any advancement.

data/my_datapack/arc/apple_for_any_advancement.json
{
"holder": {
"type": "arc:player",
"id": "arc:player"
},
"type": "arc:on_advancement",
"rewards": [
{
"type": "arc:command",
"command": "give %player% minecraft:apple"
}
]
}
Limitation

As of this version, there is no built-in condition to filter by a specific advancement ID. This means the action will trigger for any advancement the player receives. To check for a specific advancement (e.g., minecraft:story/smelt_iron), you would need to create a custom ConditionType that reads the arc:advancement data provided by this action.

Compatible Condition Types

The following condition types can be used with this action type:

Compatible Reward Types

The following reward types can be used with this action type: