Minecraft Modding
Учебник по созданию Minecraft модов
mode_editРедактировать

Основноеlink

Начиная с 1.12, система достижений претерпела значительные изменения. Новая система отслеживания, увеличено количество достижений и многое другое, но теперь же у многих, кто пишет моды появился вопрос: "Как же теперь делать достижения? Опять они со своим json…". Всё на много проще чем кажется! Теперь нам достаточно создать root.json и сами достижения в папке с ресурсами игры!

В данной статье вы научитесь делать основу для вкладки достижений.

Перейдём по пути:

└── src    
    └── main
        └── resources
            └── assets
                └── tut
                    └── advancements

В этой папке у нас будут храниться категории (Категории хранятся в папках!). Создадим к примеру категорию craft, в ней будут достижения связанные с крафтом. Далее создадим файл root.json с таким содержимым:

{
    "display": {
        "icon": {
            "item": "minecraft:stone"
        },
        "title": {
            "translate": "advancements.tutorial.root.title"
        },
        "description": {
            "translate": "advancements.tutorial.root.description"
        },
        "background": "tut:textures/gui/advancements/backgrounds/tutorial.png",
        "show_toast": false,
        "announce_to_chat": false
    },
    "criteria": {
        "killed_something": {
            "trigger": "minecraft:player_killed_entity"
        },
        "killed_by_something": {
            "trigger": "minecraft:entity_killed_player"
        }
    },
    "requirements": [["killed_something", "killed_by_something"]]
}
"criteria": {
  "crafting_table": {
      "trigger": "minecraft:inventory_changed",
      "conditions": {
            "items": [
                  {
                     "item": "minecraft:crafting_table"
                  }
            ]
      }
  }
}
"items": [
      {
         "item": "minecraft:crafting_table"
      },
      {
         "item": "minecraft:stone"
      },
      {
         "item": "minecraft:dye",
         "data": 5
      }
]

Можно так же использовать nbt и data. Теперь можете зайти в игру и выполнить один из ранее добавленных критериев!

Таблица критериев:

Критерий Описание
impossible Невозможный критерий. Применяется только в root рецептах Minecraft.
player_killed_entity Критерий который выполняется при убийстве сущности игроком.
entity_killed_player Критерий который выполняется при убийстве игрока сущностью.
enter_block Критерий который выполняется при активации блока.
inventory_changed Критерий который выполняется при добавлении предмета в инвентарь.
recipe_unlocked Критерий который выполняется при открытии нового рецепта.
player_hurt_entity Критерий который выполняется при ударе сущности игроком.
entity_hurt_player Критерий который выполняется при ударе игрока сущностью.
enchanted_item Критерий который выполняется при зачаровывании предмета.
brewed_potion Критерий который выполняется при окончании варки зелья.
construct_beacon Критерий который выполняется при постройке структуры. Например: сделать маяк и установить его.
used_ender_eye Критерий который выполняется при использовании ока эндера.
summoned_entity Критерий который выполняется при призыве голема, возрождении дракона или иссушителя.
bred_animals Критерий который выполняется при скрещивании двух животных.
location Критерий который выполняется при перемещении в другую локацию. Например: найти замок в аду.
slept_in_bed Критерий который выполняется после сна в кровати.
cured_zombie_villager Критерий который выполняется при исцелении зомби жителя.
villager_trade Критерий который выполняется при торговле с жителем.
item_durability_changed Критерий который выполняется при изменении прочности предмета.
levitation Критерий который выполняется при левитации.
changed_dimension Критерий который выполняется при изменении измерения.
tick Критерий который выполняется через определённое количество тиков.
tame_animal Критерий который выполняется при приручении животного.
placed_block Критерий который выполняется при установки блока.
consume_item Критерий который выполняется при потреблении предмета.
effects_changed Критерий который выполняется при изменении эффектов зелий.
used_totem Критерий который выполняется при использовании тотема.
nether_travel Критерий который выполняется при переходе в ад.
Ivasik
Автор
mcmodding.ru v1.1.1