レシピの追加

この記事の目的

この記事では、作業台やかまどなどのアイテムをクラフトするときに必要となるレシピの追加や編集について紹介しています。このレシピはバニラのアイテムはもちろん、オリジナルで追加したアイテムをレシピに含めることができます。

できること

レシピにはいくつかの種類の形があります。この記事では、以下の種類のレシピについて解説しています。

  • 定形レシピ
    • ボートやフェンスなどの一般的なレシピで必ず、その形でアイテムを設置しないと作成できないレシピです。
  • 不定形レシピ
    • 染料や色付きのキャンドルなどで使われ、レシピ自体の形は決まっておらず、レシピに使用するアイテムが合っていたら作成できるレシピです。
  • かまどレシピ
    • かまど向けのレシピですが、かまど以外に燻製器、溶鉱炉、焚き火で使用できます。一つのアイテムを入れると一つのアイテムが作成できる形のレシピです。

定形レシピ

まずは、一般的な形のレシピです。

{
    "format_version": "1.20.10",
    "minecraft:recipe_shaped": {
        "description": {
            "identifier": "sample:enchanted_golden_apple"
        },
        "tags": [ "crafting_table" ],
        "pattern": [
            "###",
            "#X#",
            "###"
        ],
        "key": {
            "#": {
                "item": "minecraft:gold_block"
            },
            "X": {
                "item": "minecraft:apple"
            }
        },
        "result": {
            "item": "minecraft:enchanted_golden_apple",
            "count": 2
        },
        "unlock": [
            {
                "item": "minecraft:gold_block"
            }
        ]
    }
}

format_version

このjsonファイルの記述方法のバージョンを指定します。マイクラ統合版1.21.60時点でのレシピのフォーマットバージョンの最新は1.20.10です。

minecraft:recipe_shaped

レシピの形を定形レシピに指定します。

description

レシピのIDを登録します。設定方法は以下の通りです。

"identifier": "名前空間:レシピ名"

レシピでの名前空間にはminecraftを使用することができます。また、既存のレシピを変更する場合は既存のレシピIDを指定することで上書きが可能です。既存のレシピIDはMojangが公開しているサンプルパックを参照してください。

GitHub - Mojang/bedrock-samples: Samples and assets for building Minecraft: Bedrock Edition add-ons
Samples and assets for building Minecraft: Bedrock Edition add-ons - Mojang/bedrock-samples

tags

レシピにタグを指定します。ここで、タグを指定することでどのブロックで使用可能なレシピなのかを指定できます。

定形レシピの場合は作業台のような3×3のレシピに適用できる形です。バニラのブロックでは作業台もしくはインベントリ画面内の2×2のクラフトに使用できる“crafting_table”のみです。

pattern

レシピの形を指定します。今回は3×3の大きさのレシピを指定するので横に3文字、縦に3行かけて指定してます。もし、2×2の大きさのレシピを指定する場合は横に2文字、縦に2行で構いません。

ここで指定されている文字や記号の書き方ですが、この後、キーというもので文字や記号とアイテムの紐づけを行います。レシピで同じアイテムを複数箇所に指定する場合は同じ文字や記号で指定することが可能です。また、なにもアイテムを置かないマスは半角のスペースが必要です。

そして、文字の書き方は半角の英数字と記号が可能ですが、日本語や特殊文字などは動作しない可能性もあるので注意してください。

key

キーを指定します。上でも説明しましたが、キーとはパターンで指定した文字や記号とアイテムのIDを紐づけを行います。ここの例では、アイテムIDのみを指定してますが、他にデータ値とアイテム数を指定できます。書き方は以下の通りです。

"key": {
   "文字or記号": {
      "item": "アイテムID",   // 例:"item": "minecraft:apple"
      "data": データ値   // 例:"data": 0
   }
}

データ値に関してはマイクラ統合版1.21.60時点ではほとんどのアイテムにデータ値の撤廃が進み、指定する必要はそこまでありません。

また、アイテムIDを指定するのではなく、tagでアイテムを指定することも可能です。例としては、ボートや木の道具など木材系のブロックならなんでも使うことができる場合に使用します。書き方は以下の通りです。

"key": {
   "文字or記号": {
      "tag": "タグID",   // 例:"tag": "minecraft:planks"
   }
}

タグIDの一覧は下記のサイトにあります。

Tags for Recipes
A reference document listing the tags that can be used by creators when crafting new recipes

result

レシピで作成されたアイテムを指定します。

itemには作成されるアイテムのIDを指定します。
countには作成されるアイテムの数を指定します。

キーと同様に追加でデータ値も設定できますが、キーと指定方法は同じです。

unlock

レシピがアンロック(解除)される条件を指定します。基本的にはサンプルのようにアイテムを入手したら解除するものが多いですが、その他にも条件を指定することができます。

特定のアイテムを入手した場合にアンロックする場合の書き方はこちらです。

"unlock":  [
   {
      "item": "アイテムID",   // 例:"item": "minecraft:apple"
      "data": データ値   // 例:"data": 0
   }
]

そして、他の条件を指定する場合はcontextを指定します。そして、contextで指定できる条件は以下の通りです。

AlwaysUnlocked:アイテムのロックを最初から解除する。例:作業台
PlayerInWater:プレイヤーが水に入ると解除する。例:ボート
PlayerHasManyItems:プレイヤーのインベントリに10個以上のアイテムがあると解除する。例:チェスト

書き方の例は以下の通りです。

"unlock":  [
   {
      "context": "AlwaysUnlocked"
   }
]

不定形レシピ

形の決まっていないレシピです、以下は、バニラの青いキャンドルのレシピです。

{
    "format_version": "1.20.10",
    "minecraft:recipe_shapeless": {
        "description": {
            "identifier": "minecraft:blue_candle"
        },
        "tags": [ "crafting_table" ],
        "group": "candle",
        "ingredients": [
            {
                "item": "minecraft:candle"
            },
            {
                "item": "minecraft:dye",
                "data": 18
            }
        ],
        "unlock": [
            {
                "item": "minecraft:candle"
            },
            {
                "item": "minecraft:dye",
                "data": 18
            }
        ],
        "result": {
            "item": "minecraft:blue_candle"
        }
    }
}

minecraft:recipe_shapeless

レシピの形を形のないレシピにします。

group

レシピのグループを指定します。(すべてのレシピで使用可能です。)

ingredients

不定形レシピの場合、レシピに使用する材料を「ingredients」を使って指定します。

かまどレシピ

以下のコードは生の牛肉を調理すると、ステーキができるレシピです。

{
  "format_version": "1.20.10",
  "minecraft:recipe_furnace": {
    "description": {
      "identifier": "minecraft:furnace_beef"
    },
    "unlock": [
      {
        "item": "minecraft:beef"
      }
    ],
    "tags": [
      "furnace",
      "smoker",
      "campfire",
      "soul_campfire"
    ],
    "input": "minecraft:beef",
    "output": "minecraft:cooked_beef"
  }
}

minecraft:recipe_furnace

レシピの形をかまどのような形にします。

tags

タグに関して、ここでは、複数のタグが指定されています。furnaceはかまど、smokerは燻製器、campfireは焚き火、soul_campfireは魂の焚き火のことです。

input

調理前のアイテムを指定します。

output

調理後のアイテムを指定します。

さいごに

この記事では、一般的なレシピの作り方について紹介しました。その他のレシピや詳細に関しては以下のページに書かれています。

Introduction to Recipes
A reference document discussing the basics of recipes for creators

コメント

  1. これでレシピ書いた.jsonってどこに置けばいいんですか?

  2. アップデートか分かりませんけど少し書き方が変わっています

コメント通報