Достижение (Java Edition)/Формат JSON

Формат JSON Пользовательские достижения находятся в наборах данных как отдельные файлы в формате JSON:

Эти файлы имеют следующую структуру:

- Корневой тег.
- display: Необязательно. Данные об отображении.
- icon: Данные для значка.
- item: Идентификатор предмета.
- nbt: NBT-данные предмета.

- title: Заголовок достижения.
- title: Текстовый JSON (текст и форматирование как при использовании команды
`/tellraw`

). - frame: Необязательно. Форма рамки значка достижения.
`challenge`

— зубчатая,`goal`

— округлая,`task`

— обычная (по умолчанию). - background: Необязательно. Путь к файлу фона (только для первого достижения во вкладке).
- description: Описание достижения.
- description: Текстовый JSON (текст и форматирование как при использовании команды
`/tellraw`

). - show_toast: Принимает значения
`true`

или`false`

. Показывает выполненное достижение в верхнем правом углу. По умолчанию включено. - announce_to_chat: Принимает значения
`true`

или`false`

. Сообщает в чат о выполненном достижении. По умолчанию включено. - hidden: Принимает значения
`true`

или`false`

. Скрывает достижение и достижения, последующие за ним, пока оно не будет выполнено. По умолчанию выключено.

- icon: Данные для значка.
- parent: Путь к предку достижения (не применимо к корневому достижению).
- criteria: Необходимые к выполнению условия.
- requirements: Необязательно. Список списков требуемых условий. Можно пропустить, если требуются все условия.
- rewards: Необязательно. Награды при получении достижения.
- recipes: Список рецептов (значения типа string).
- loot: Список таблиц добычи (значения типа string).
- experience: Количество опыта.
- function: Функция, которую нужно выполнить.


- display: Необязательно. Данные об отображении.

### Список триггеров

#### minecraft: bred_animals

Вызывается, когда игрок свёл двух животных. Условия:

- conditions:
- child: Потомок сведённых животных.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон

- parent: Предок.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон

- partner: Партнёр (полезен для проверки условия лошадь + осёл = мул)
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон


- child: Потомок сведённых животных.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:bred_animals",
"conditions": {
"child": {
"type": "mule"
},
"parent": {
"location": {
"biome": "minecraft:beaches"
}
},
"partner": {
"effects": {
"minecraft:speed": {
"amplifier": {
"min": 2
}
}
}
}
}
}
}
}
```

#### minecraft: brewed_potion

Вызывается, когда игрок взял зелье из зельеварки. Условия:

- conditions:
- potion: Идентификатор зелья.


Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:brewed_potion",
"conditions": {
"potion": "minecraft:strong_swiftness"
}
}
}
}
```

#### minecraft: changed_dimension

Вызывается, когда игрок перемещается в другое измерение. Условия:

- conditions:
- from: Измерение, откуда игрок переместился. Принимает 3 значения.
- to: Измерение, куда игрок переместился. Принимает 3 значения.


Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:changed_dimension",
"conditions": {
"from": "minecraft:the_end",
"to": "minecraft:overworld"
}
}
}
}
```

#### minecraft: channeled_lightning

Вызывается, когда игрок поражает сущность молнией от чар «Громовержец». Условия:

- conditions:
- victims: Сущности, поражённые молнией.
- :
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон


- :

- victims: Сущности, поражённые молнией.

#### minecraft: construct_beacon

Вызывается, когда игрок изменяет конструкцию маяка. Условия:

- conditions:
- level: Уровень обновлённой конструкции маяка.
- level:
- max: Максимальное значение.
- min: Минимальное значение.



Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:construct_beacon",
"conditions": {
"level": {
"min": 3
}
}
}
}
}
```

#### minecraft: consume_item

Вызывается, когда игрок съедает/выпивает предмет. Условия:

- conditions:
- item: Употреблённый предмет.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон


- item: Употреблённый предмет.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:consume_item",
"conditions": {
"item": {
"item": "minecraft:enchanted_golden_apple",
"nbt": "{display:{Name:\"Example\"}}"
}
}
}
}
}
```

#### minecraft: cured_zombie_villager

Вызывается, когда игрок излечивает зомби-крестьянина. Условия:

- conditions:
- villager: Крестьянин, результат излечения.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон

- zombie: Зомби-крестьянин, который был прямо перед завершением излечения (не тогда, когда он только начал излечиваться).
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон


- villager: Крестьянин, результат излечения.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:cured_zombie_villager",
"conditions": {
"villager": {
"location": {
"biome": "minecraft:plains"
}
},
"zombie": {
"distance": {
"horizontal": {
"max": 10
}
}
}
}
}
}
}
```

#### minecraft: effects_changed

Вызывается, когда к игроку применяется эффект. Условия:

- conditions:
- effects: Список эффектов игрока.
- <minecraft:эффект>: Идентификатор эффекта.
- amplifier: Уровень эффекта.
- amplifier:
- max: Максимальное значение.
- min: Минимальное значение.

- duration: Длительность эффекта в игровых тактах.
- duration:
- max: Максимальное значение.
- min: Минимальное значение.



- <minecraft:эффект>: Идентификатор эффекта.

- effects: Список эффектов игрока.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:effects_changed",
"conditions": {
"effects": {
"minecraft:weakness": {},
"minecraft:slowness": {
"amplifier": 2,
"duration": {
"min": 100,
"max": 500
}
}
}
}
}
}
}
```

#### minecraft: enchanted_item

Вызывается, когда игрок чарует предмет на столе зачаровывания (не вызывается, если на наковальне или с помощью команд). Условия:

- conditions:
- item: Зачарованный предмет.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон

- levels: Уровни, потраченные на чар.
- levels:
- max: Максимальное значение.
- min: Минимальное значение.


- item: Зачарованный предмет.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:enchanted_item",
"conditions": {
"item": {
"item": "minecraft:wooden_sword",
"enchantments": [
{
"enchantment": "minecraft:sharpness",
"levels": {
"min": 2
}
}
]
},
"levels": {
"min": 3
}
}
}
}
}
```

#### minecraft: enter_block

Вызывается, когда игрок входит в блок. Проверяет условия каждый игровой такт. Условия:

- conditions:
- block: ID блока, в котором стоит игрок.
- state: Состояния блока.
- <состояние>: Состояние блока. Ключ — название состояния блока, значение — требуемое значение данного состояния.



Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:enter_block",
"conditions": {
"block": "minecraft:rose_bush",
"state": {
"half": "lower"
}
}
}
}
}
```

#### minecraft: entity_hurt_player

Вызывается, когда игрок получает урон. Условия:

- conditions:
- damage: Урон, нанесённый игроку.
- Теги урона see Шаблон:Nbt наследование/условия/урон/шаблон


- damage: Урон, нанесённый игроку.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:entity_hurt_player",
"conditions": {
"damage": {
"source_entity": {
"type": "skeleton"
},
"direct_entity": {
"type": "arrow"
},
"taken": {
"min": 4.0
}
}
}
}
}
}
```

#### minecraft: entity_killed_player

Вызывается, когда сущность убивает игрока. Условия:

- conditions:
- entity: Проверяет сущность, которая убила игрока, нанеся косвенный урон (например: скелет, который выпустил стрелу из лука).
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон

- killing_blow: Тип урона, убившего игрока.
- Теги, применимые ко всем типам урона see Шаблон:Nbt наследование/условия/тип_урона/шаблон


- entity: Проверяет сущность, которая убила игрока, нанеся косвенный урон (например: скелет, который выпустил стрелу из лука).

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:entity_killed_player",
"conditions": {
"entity": {
"type": "skeleton"
},
"killing_blow": {
"is_projectile": true
}
}
}
}
}
```

#### minecraft: filled_bucket

Вызывается, когда игрок заполняет ведро чем-либо. Условия:

- conditions:
- item: Предмет, полученный в результате.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон


- item: Предмет, полученный в результате.

#### minecraft: fishing_rod_hooked

Вызывается, когда игрок удочкой ловит предмет или тянет сущность. Условия:

- conditions:
- entity: Подтянутая сущность.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон

- item: Пойманный предмет.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон

- rod: Использованная удочка.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон


- entity: Подтянутая сущность.

#### minecraft: impossible

Вызывается только командами.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:impossible"
}
}
}
```

#### minecraft: inventory_changed

Вызывается, когда инвентарь игрока изменяется. Условия:

- conditions:
- items: Список предметов в инвентаре игрока. Все предметы из списка должны быть в инвентаре игрока, но не все предметы из инвентаря игрока должны быть в списке.
- :
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон


- :
- slots:
- empty: Количество пустых ячеек в инвентаре.
- empty:
- max: Максимальное значение.
- min: Минимальное значение.

- full: Количество полностью заполненных ячеек (например, яблоко — 64 предмета, снежок — 16).
- full:
- max: Максимальное значение.
- min: Минимальное значение.

- occupied: Количество занятых слотов в инвентаре.
- occupied:
- max: Максимальное значение.
- min: Минимальное значение.



- items: Список предметов в инвентаре игрока. Все предметы из списка должны быть в инвентаре игрока, но не все предметы из инвентаря игрока должны быть в списке.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:inventory_changed",
"conditions": {
"items": [
{
"item": "minecraft:polished_granite",
"count": {
"min": 5,
"max": 10
}
},
{
"item": "minecraft:lime_wool"
},
{
"item": "minecraft:wooden_sword",
"durability": {
"min": 50
},
"nbt": "{display:{Name:\"Example\"}}"
}
],
"slots": {
"occupied": 3
}
}
}
}
}
```

#### minecraft: item_durability_changed

Вызывается, когда предмет в инвентаре меняет прочность. Условия:

- conditions:
- delta: Разница в прочности.
- delta:
- max: Максимальное значение.
- min: Минимальное значение.

- durability: Оставшаяся прочность.
- durability:
- max: Максимальное значение.
- min: Минимальное значение.

- item: Предмет до того, как он был повреждён.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон



Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:item_durability_changed",
"conditions": {
"delta": -2,
"item": {
"item": "minecraft:wooden_axe",
"durability": {
"max": 1
}
}
}
}
}
}
```

#### minecraft: levitation

Вызывается, когда игрок левитирует. Условия:

- conditions:
- distance:
- absolute:
- max: Максимальное значение.
- min: Минимальное значение.

- horizontal:
- max: Максимальное значение.
- min: Минимальное значение.

- x:
- max: Максимальное значение.
- min: Минимальное значение.

- y:
- max: Максимальное значение.
- min: Минимальное значение.

- z:
- max: Максимальное значение.
- min: Минимальное значение.


- absolute:
- duration: Длительность левитации в игровых тактах.
- duration:
- max: Максимальное значение.
- min: Минимальное значение.


- distance:

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:levitation",
"conditions": {
"distance": {
"horizontal": {
"min": 5
},
"y": {
"min": 2
}
},
"duration": {
"min": 100
}
}
}
}
}
```

#### minecraft: location

Вызывается каждые 20 игровых тактов (1 секунда) и проверяет, где находится игрок. Условия:

- conditions:
- location:
- Теги, применимые ко всем местонахождениям see Шаблон:Nbt наследование/условия/местонахождение/шаблон


- location:

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:location",
"conditions": {
"biome": "jungle",
"feature": "Jungle_Pyramid",
"dimension": "minecraft:overworld",
"position": {
"x": 0,
"y": 60,
"z": {
"min": -10,
"max": 10
}
}
}
}
}
}
```

#### minecraft: nether_travel

Вызывается, когда игрок перемещается в Нижний мир, а затем в обычный мир. Условия:

- conditions:
- distance: Расстояние в обычном мире между точками, где игрок вошёл в Нижний мир и где он вышел.
- absolute:
- max: Максимальное значение.
- min: Минимальное значение.

- horizontal:
- max: Максимальное значение.
- min: Минимальное значение.

- x:
- max: Максимальное значение.
- min: Минимальное значение.

- y:
- max: Максимальное значение.
- min: Минимальное значение.

- z:
- max: Максимальное значение.
- min: Минимальное значение.


- absolute:

- distance: Расстояние в обычном мире между точками, где игрок вошёл в Нижний мир и где он вышел.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:nether_travel",
"conditions": {
"distance": {
"horizontal": {
"min": 1000
},
"absolute": {
"min": 1100
}
}
}
}
}
}
```

#### minecraft: placed_block

Вызывается, когда игрок ставит блок. Условия:

- conditions:
- block: Поставленный блок. Содержит ID блока.
- item: Предмет, который был использован, прежде чем блок был поставлен.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон

- location: Местонахождение поставленного блока.
- Теги, применимые ко всем местонахождениям see Шаблон:Nbt наследование/условия/местонахождение/шаблон

- state: Состояния блока.
- <состояние>: Состояние блока. Ключ — название состояния блока, значение — требуемое значение данного состояния.



Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:placed_block",
"conditions": {
"block": "minecraft:wall_torch",
"state": {
"facing": "west"
},
"location": {
"position": {
"x": 10,
"z": 14
},
"biome": "minecraft:plains"
},
"item": {
"item": "minecraft:torch"
}
}
}
}
}
```

#### minecraft: player_hurt_entity

Вызывается, когда игрок ударяет моба или игрока. Условия:

- conditions:
- damage: Нанесённый урон.
- Теги урона see Шаблон:Nbt наследование/условия/урон/шаблон

- entity: Сущность, получившая урон.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон


- damage: Нанесённый урон.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:player_hurt_entity",
"conditions": {
"damage": {
"blocked": true,
"type": {
"direct_entity": {
"type": "arrow"
}
}
},
"entity": {
"type": "player",
"nbt": "{Tags:[\"example\"]}"
}
}
}
}
}
```

#### minecraft: player_killed_entity

Вызывается, когда игрок убивает моба. Условия:

- conditions:
- entity: Убитая сущность.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон

- killing_blow: Тип урона, убивший сущность.
- Теги, применимые ко всем типам урона see Шаблон:Nbt наследование/условия/тип_урона/шаблон


- entity: Убитая сущность.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:player_killed_entity",
"conditions": {
"entity": {
"type": "creeper",
"nbt": "{powered:1b}",
"location": {
"biome": "minecraft:the_void"
},
"effects": {
"minecraft:slowness": {},
"minecraft:weakness": {
"amplifier": {
"min": 2
}
}
}
},
"killing_blow": {
"source_entity": {
"nbt": "{SelectedItem:{id:\"minecraft:wooden_sword\",}}"
}
}
}
}
}
}
```

#### minecraft: recipe_unlocked

Вызывается, когда игрок разблокирует рецепт. Условия:

- conditions:
- recipe: Разблокированный рецепт.


Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:recipe_unlocked",
"conditions": {
"recipe": "minecraft:wooden_sword"
}
}
}
}
```

#### minecraft: slept_in_bed

Вызывается, когда игрок ложится на кровать. Условия:

- conditions:
- Теги, применимые ко всем местонахождениям see Шаблон:Nbt наследование/условия/местонахождение/шаблон


Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:slept_in_bed",
"conditions": {
"location": {
"biome": "minecraft:desert",
"feature": "Village",
"position": {
"y": {
"min": 50,
"max": 100
}
}
}
}
}
}
}
```

#### minecraft: summoned_entity

Вызывается, когда призывается сущность. Работает с железными големами, снежными големами, драконом Края и Иссушителем. Использование раздатчиков, чтобы поставить черепы визер-скелета или тыквы, всё ещё вызывает срабатывание триггера, а яйца призывания, команды и спаунер мобов не вызывают. Условия:

- conditions:
- entity:
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон


- entity:

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:summoned_entity",
"conditions": {
"entity": {
"type": "minecraft:snow_golem"
}
}
}
}
}
```

#### minecraft: tame_animal

Вызывается, когда игрок приручает животное. Условия:

- conditions:
- entity: Прирученная сущность.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон


- entity: Прирученная сущность.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:tame_animal",
"conditions": {
"entity": {
"type": "minecraft:parrot",
"nbt": "{Variant:2}"
}
}
}
}
}
```

#### minecraft: tick

Вызывается каждый игровой такт (20 раз в секунду).

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:tick"
}
}
}
```

#### minecraft: used_ender_eye

Вызывается, когда игрок использует Око Края (в мире с генерированной крепостью). Условия:

- conditions:
- distance: Горизонтальная дистанция между игроком и крепостью.
- distance:
- max: A maximum value.
- min: A minimum value.



Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:used_ender_eye",
"conditions": {
"distance": {
"min": 100,
"max": 200
}
}
}
}
}
```

#### minecraft: used_totem

Вызывается, когда игрок использует тотем. Условия:

- conditions:
- item: Тотем бессметрия.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон


- item: Тотем бессметрия.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:used_totem",
"conditions": {
"item": {
"item": "minecraft:totem_of_undying"
}
}
}
}
}
```

#### minecraft: villager_trade

Вызывается, когда игрок торгует с крестьянином. Условия:

- conditions:
- item: Купленный предмет. Тег «count» проверяет количество одной сделки, а не нескольких.
- Теги, применимые ко всем предметам see Template:Nbt наследование/условия/предмет/шаблон

- villager: Крестьянин, продавший предмет.
- Теги, применимые ко всем сущностям see Шаблон:Nbt наследование/условия/сущность/шаблон


- item: Купленный предмет. Тег «count» проверяет количество одной сделки, а не нескольких.

Пример

```
{
"criteria": {
"example": {
"trigger": "minecraft:villager_trade",
"conditions": {
"item": {
"item": "minecraft:emerald",
"count": {
"min": 1
}
},
"villager": {
"nbt": "{Career:1}"
}
}
}
}
}
```