見出し画像

イチからわかる!マイクラでアドオン開発のススメ【マインクラフト統合版1.20.80対応】

こんにちは!YUKI , (ユキ カンマ) です。

マイクラでアドオン開発をはじめるために必要なものをわかりやすく解説!
簡単なアドオンも作っていきますので、最後まで読んでくださいね!


更新履歴

  • 2023/9/8    mcfunctionファイルのコマンドについて追記

  • 2024/3/4    記事冒頭、対応バージョンを追記

  • 2024/3/7    VSCodeの名称を追記

  • 2024/4/21  バージョン1.20.73に対応を確認

  • 2024/4/22  新しい記事へのリンクを追加

  • 2024/4/24  バージョン1.20.80に対応を確認




アドオンとは? MODとの違い

アドオンとは「ソフトウェアに追加する新しい機能」のことを指します。
なので、Minecraftにおいてのアドオンは
普通のマイクラにはない新しい機能
ということになりますね!

他にもMinecraftに詳しい人なら、MOD(モッド、以下MODと呼称)
という言葉を聞いたことがあるかもしれません。

MODは、Minecraft Java版におけるアドオンのことなので、
「Minecraft MOD」のように書いてあるものは統合版では使うことが出来ません!
※中にはMODとアドオン、両方に対応しているものもあるので
必ず使えないというわけではありません!

YUKI , (ユキカンマ)のnoteでは
Minecraft統合版のアドオン」を自分で開発する方法をイチから解説!


アドオン開発に必要なもの

では早速作っていきましょう。
まず最初に以下のものが必要です!
(なければ購入してくださいね)

  • Windows 10Windows 11 のどちらか ※1

  • Minecraft for Windows (Minecraft統合版のパソコン版)

以上です!

※1 Macbook、MacOSはJava版のみなので、
統合版のマイクラの起動に対応しておらず、アドオン開発では使えません!

リンク先でMinecraft for Windowsを購入しよう
GAME PASSで購入してもOK! もちろん買い切りも◎

パソコンとMinecraftを持っていたら、他に買うものはありません!
しかし、これで終わりではありません!

まだまだインストールするものがあるので、
この記事を最後まで読んでくださいね!


パソコンにインストールするもの

ここからは全て無料で用意することが出来るものを紹介します。
Webブラウザ(Google ChromeやMicrosoft Edgeなど)で検索をして、
ダウンロードしてくださいね。

Visual Studio Code (ビジュアル スタジオ コード)

VSCodeを開いた時の画面
Visual Studio Codeを開いた時の画面

Visual Studio Code」は似たような名前のソフトウェアがあるので注意!

Visual Studio Code」という名前のソフトウェアを
間違えずにダウンロードしましょう!

※似たような名前で「Visual Studio」というものがあります。
こちらもMicrosoftが出しているので怪しいソフトではないですが、
アドオン開発で使いたい方ではありません!

Visual Studioを開いた時の画面
Visual Studioは統合開発環境といい、プログラム開発をする時に便利なツール!

ここまで多機能なものは必要ないので、
皆さんはちゃんとVisual Studio Codeの方をダウンロードしましょう!

これ以降は、VSCode(ブイエスコード)と呼んでいきますね。


Blockbench (ブロックベンチ)

Blockbenchでプレイヤースキンを作っている画像
Blockbenchを使えばスキンも簡単に作れる!

詳しいインストール方法は他の方の解説でわかりやすいサイトさんがあると思うので、そちらを参考にしてみてくださいね!


これがあると便利になる!

アドオン開発をする時に便利になるVisual Studio Code(以下VSCodeと呼称)の中でインストールする拡張機能や、Minecraft公式が公開しているアドオンのサンプルをダウンロードしてきましょう。

  • Japanese Language Pack for Visual Studio Code

  • UUID Generator

  • Blockception's Minecraft Bedrock Development

一行ずつコピーをして、VSCodeの中で検索をしていきます。
VSCodeの左側のアイコンから拡張機能タブを開いて、先程コピーした拡張機能の名前を貼り付けましょう!

UUID Generatorと検索すると、一番上に表示される
例)UUID Generator を検索した画面

拡張機能をクリックした後、インストールという青いボタンがあるので
それをクリックするとインストール完了!


拡張機能の解説

Japanese Language Pack for Visual Studio Code

VSCodeを日本語化するのに必須

VSCodeの中では有名な拡張機能です!
基本的にすべて英語で書かれているVSCodeを日本語にしてくれます。

英語を勉強したい!
英語のほうが見やすい!

といった理由がなければ、ぜひインストールしてください!


UUID Generator

この拡張機能があるとVSCodeでアドオン開発を完結できる

UUIDをワンクリックで生成できる拡張機能です!
VSCode上で右クリックをした後、Generate UUID At Cursorという項目をクリックすると、すぐにUUIDを生成してくれます。

VSCodeで右クリックした時の下から2番目くらいにあります
Generate UUID At Cursorをクリック!

ちなみに、UUIDというのは世界で一つしかない番号のことです。
これを使えば、Minecraftでどんなアドオンを入れたとしても、
ちゃんと別々のアドオンとして認識してくれます。

UUIDを元にして認識するのでUUIDが異なれば違うアドオン!
UUIDが異なると正しく動作する
UUIDが同じだとマイクラは同じアドオンが入ったと思ってしまう…
UUIDが同じだと正しく動作しない(エラーが出ないこともある)

こういった不具合やエラーを防ぐためにも
UUIDを書く場所では、全てのUUIDをバラバラのものにしておきましょう!


Blockception's Minecraft Bedrock Development

アイテムIDやエンティティIDを補完してくれる便利な拡張機能

アドオン開発において、必須ではないものの必須級な拡張機能!
自分でイチから書かなくても、アイテムのIDやエンティティのIDを予測候補として出してくれます。

例えば"minecraft:skeleton"(スケルトンのID)や"minecraft:arrow"(矢のID)
といったものを途中まで入力すれば予測変換してくれます!
予測変換のことを、補完補完機能といいます。

また、この拡張機能を使う時にはフォルダー名などに
・ビヘイビアーパックなら、BP または bp
・リソースパックなら、RP または rp
が含まれているか、
・ビヘイビアーパックなら、behavior_packsフォルダーの下
・リソースパックなら、resource_packsフォルダーの下
に自分が作るアドオンのフォルダーがないと
上手く機能しないので、注意しましょう!

このアドオンをインストールすると補完機能が使える
Blockception's Minecraft Bedrock Developmentをインストールした場合
このアドオンがインストールされていないと全て自分で入力する必要がある!
Blockception's Minecraft Bedrock Developmentをインストールしていない場合

拡張機能がない方は時間がかかりますし、入力ミスも起きてしまいます…

この拡張機能があるとないとでは作業のしやすさが格段に違うので、
ぜひインストールしましょう!


アドオンサンプルをダウンロードしよう!

さてあと一息!
Minecraftのデータを公式からダウンロードしてきましょう!

Githubというソースコード共有サイトで
Minecraft公式が公開している、アドオン開発のためのサンプルデータがあります。

Github自体はすべて英語のサイトですが、
IT業界(プログラマーなど)では
知らない人はいないほど有名なサイトなので、安心して使いましょう!

これをクリックすると、
GithubのMinecraft統合版のアドオンサンプルページに飛びます。

右上の緑色のボタンで [Code]をクリックして、
一番下のDownload ZIPをクリックするとダウンロードが開始!

GithubのMinecraft公式が公開しているアドオンサンプルのページ
GithubのMinecraft公式ページ

あとはダウンロードしてきたzipファイルを解凍して、
いつでも見ることができる場所に保存しておきましょう!

ここまでで準備はすべて完了です!!

では、早速。
Minecraftで「マイクラスターターキット」をゲットするアドオンを作ってみましょう!!


実践編:「マイクラスターターキット」をゲットするアドオンを作ってみよう!

事前準備が終わったら、実際にMinecraftで使えるアドオンを開発してみましょう!

実際に作った「マイクラスターターキットアドオン」をMinecraftで呼び出している様子
Minecraft内で「/function starter_kit」と入力するとアイテム一式がもらえる!

1. com.mojangフォルダーを開こう

Minecraftにアドオンを導入するためには、
以下の場所に正しくフォルダーを作る必要があります!

まずはMinecraftのアドオンのフォルダーの場所を探してみましょう!

まず初めに画像のようにWindowsキーRキーを同時に押します。

WindowsキーとRキー
WindowsキーとRキー

そうすると以下のようなウィンドウが表示されます。

「ファイル名を指定して実行」ウィンドウ
WindowsキーとRキーを同時押しすると表示されるウィンドウ

このウィンドウの名前(O):というところに以下の文言を
コピー&ペーストしてください!

%localappdata%\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang

OKボタンを押すとエクスプローラーが開きます!
com.mojangというフォルダーの中にはたくさんのフォルダーやファイルがありますが、アドオン開発で使うのは2つだけ!

development_behavior_packs 
development_resource_packsです!

この2つのフォルダーが重要になってくるので、
このフォルダーの場所をショートカットに保存したりして、
いつでも開けるようにしておきましょう!

アドオン開発で覚えておくべきcom.mojangフォルダーについての画像
com.mojangフォルダーの中身

上図のように、
ビヘイビアーパックのアドオンはdevelopment_behavior_packsに。
リソースパックのアドオンは
development_resource_packsに入れる
というルールは絶対に守ってください!
(これが間違っていると不具合の原因になります!)

今回はビヘイビアーパックのアドオンのみを開発するので、
development_behavior_packsフォルダーを
左クリックして開いておいてくださいね。


2. マイクラスターターキット アドオンのフォルダーを作ろう

それでは早速作っていきます。
まず、development_behavior_packsフォルダーの中で右クリックをして、
新規作成からフォルダーを作成しましょう!

この時、フォルダーの名前はできる限り英語、
またはローマ字で名前をつけてください。
不具合の原因になるので、日本語や全角文字で入力しないでくださいね。

今回は例として「starter_kit[BP]」という名前にしておきます。
※BPというのはビヘイビアーパックの略です。
 拡張機能の命名規則により、フォルダー名にBPと名付けています

starter_kit[BP]フォルダーを作成
※タイプミスがないように!

3. manifest.jsonとfunctionsフォルダーを作ろう

このフォルダーの中にmanifest.jsonというファイル、
functionsというフォルダーをそれぞれ作成します。

この時、タイプミス(打ち間違い)がないように、
上の文章の太字部分をコピー&ペーストしてくださいね!

スターターキットアドオンのファイルの中身画像
starter_kit[BP]の中身

functionsフォルダーmanifest.jsonについて、簡単に解説!


**functionsフォルダー

このフォルダーには、2種類のファイルを置くことが出来ます。

  • tick.json

  • .mcfunction (mcfunction形式のファイル)

2つのファイルのうち、
mcfunction形式のファイルの名前自体はなんでもOK!
ただし、後から見た時にもわかりやすいネーミングを心がけましょう!

tick.jsonファイルの方は機能が一つしかないのでとても簡単!
それは、1ティックごとに1回繰り返すという機能です。

例えば、このように書いてある時、functionsフォルダーの中にある
test.mcfunction
・test2.mcfunction
という2つのファイルがそれぞれ1ティックごとに1回繰り返し、
ワールドが閉じるまで何度も何度も実行されます!

tick.jsonの書き方の例
ダブルクォーテーション("")で囲まれた部分が.mcfunctionのファイル名

mcfunction形式のファイルは、
コマンドをたくさん並べて一つにしておけるものです!

例えばこんなmcfunctionファイルも作れます!

// summon_chicken.mcfunction というファイル名!
summon minecraft:chicken
summon minecraft:chicken
summon minecraft:chicken
summon minecraft:chicken
give @a minecraft:wheat_seeds 4

このmcfunctionファイルをfunctionsフォルダーにおいておいて、
Minecraftでアドオンを有効化しておくと、
/function summon_chicken」とチャットに入力することで、
ニワトリを4匹を呼び出して、
小麦の種を4個ゲットできます!

コマンドブロックでは、1ブロックに1コマンドしか書けません。
それにワールドに置いておく必要があるので、
壊してしまうと動かなくなってしまいます…。

mcfunctionファイルならワールドに置いておく必要がない!のと、
「◯◯のコマンドってどこに置いたっけ…?」となることが少ないです!

アドオン開発をする時には、この2つのファイルのことを覚えておくと、
スマートでかっこいいアドオンが作れますよ!!


**manifest.json

簡単に説明すると、
Minecraftに「これはアドオンだよ!」と認識してもらうためのファイル!

ビヘイビアーパックに1つ、リソースパックに1つずつ置く必要があります。

ビヘイビアーパックだけ作るなら、わざわざリソースパックを作らなくて◎
その場合は、ビヘイビアーパックに1つだけmanifest.jsonを置けばOK!

詳しい説明は後日、別のnoteにまとめようと思うので、
今は黒い背景の部分をコピー&ペーストして完成させてください!

{
  "format_version": 2,
  "header": {
    "description": "マイクラスターターキット アドオン",
    "name": "stater_kit",
    "uuid": "(UUID Generatorで生成! その1)",
    "min_engine_version": [
      1,
      20,
      10
    ],
    "version": [
      1,
      0,
      0
    ]
  },
  "modules": [
    {
      "type": "data",
      "uuid": "(UUID Generatorで生成! その2)",
      "version": [
        1,
        0,
        0
      ]
    }
  ]
}

コピーが出来たら、先程作った「starter_kit[BP]」の中に新規作成した「manifest.json」をVSCodeで開いて、ペーストしてください!

ペーストが終わったら、
"uuid": "(UUID Generatorで生成! その1)",
"uuid": "(UUID Generatorで生成! その2)",
の(UUID Generatorで…)という部分を消します。

"uuid": ""
の状態になったら、"(ダブルクォーテーション)と"の間に
UUID GaneratorでUUIDを生成しましょう!

注意として、編集した2行のUUIDは別のものにする必要があります。
なので合計2回生成してくださいね!

キーボードのCtrlキー + Sキーでファイルを保存できるので、
編集をしたら忘れずに必ず保存しましょう!!
(Ctrlキーはキーボードの左下の方にあるので、探してみてね!)

保存が出来たら、次はmcfunctionファイルの中身を書いていきましょう!


4. mcfunctionファイルを開いてみよう

ここからは、実際にmcfunctionファイルを編集して
Minecraftで使える「マイクラスターターキット」の中身を作っていきます!

まずはfunctionsフォルダーを作成して、
starter_kit[BP]」の中身が画像と全くおなじになるようにしましょう!

スターターキットアドオンのファイルの中身画像
starter_kit[BP]の中身

ここまでOKなら、今度はfunctionsフォルダーを左クリックして開きます。
中にはまだ何も入っていないと思いますので、
ここでもmanifest.jsonと同じように、ファイルを新規作成して
starter_kit.mcfunction」という名前に変更します!

名前を変更するには、名前を変えたいファイルを1回左クリックした後、
同じ場所を右クリックして表示されるメニューから
名前の変更(M)をクリックすると編集できるようになります!

画像のようにmcfunctionファイルができたら、これもVSCodeで開きます!

functionsフォルダーの中身の画像
functionsフォルダーの中身

一言一句間違えてはダメです!
このnoteに書いてあることをコピー&ペーストしましょう!!

ファイルをVSCodeで開くと、画像のようになっていると思います。

VSCodeエディター画面
VSCodeの編集(エディター)の画面

もし次の画像のようなポップアップが出た場合は、
[はい] をクリックしてワークスペースに追加してあげてください!

ワークスペースというのは
VSCodeの左側に表示しておける作業スペースのことです。
ファイルを信頼しておかないと、便利な拡張機能が使えなくなります!

VSCodeのワークスペースを信頼するポップアップウィンドウの画像
信頼しておかないと、拡張機能が使えない!

ここまで出来たら、次は実際にプログラミングをしていきましょう!


5. マイクラスターターキットの中身を作ってみよう!

mcfunctionファイルには、コマンドをたくさん並べることが出来ます。
この機能を利用して、
1つのコマンドだけでたくさんのコマンドを動かしてみましょう!

今回はコマンドを入力するとアイテムが手に入るようにしたいので、
giveコマンドを使います!

先ほど作成した「starter_kit.mcfunction」をVSCodeで開いて、
黒い背景の部分をコピー&ペーストでmcfunctionファイルに貼り付けます。

# Minecraftの中で「/function starter_kit」と入力すると、以下のコマンドを実行!
give @p[r=1] minecraft:iron_helmet
give @p[r=1] minecraft:iron_chestplate
give @p[r=1] minecraft:iron_leggings
# 武器や防具、ツールなどはdataという値を変えることで耐久値を減らした状態にできる!
# 鉄のブーツの耐久最大値は196なので、data値を96とかにすると残り耐久値が 196 - 96 = 100 の状態で入手!
give @p[r=1] minecraft:iron_boots 1 96
give @p[r=1] minecraft:bread 5
# ポーションや羊毛ブロックなど、同じID(minecraft:potion のような名前)の中で種類がある場合はdata値で指定する!
# 今回は治癒のポーションLv1を入手するので、治癒のポーションLv1(data値:21)を指定して、3個入手!
give @p[r=1] minecraft:potion 3 21

そうすると次の画像のような状態になるので、
ここで忘れずに保存を行います!

mcfunctionファイルにコマンドを並べている画像
このファイルを実行すると、6個のコマンドが実行される!

目印として、上の方の✕印が白い丸の状態は保存されていない状態です!
白い丸になっている時は必ずCtrlキー + Sキーで保存しましょう!!

保存が終わったら、今度はMinecraftでアドオンを有効化しましょう!

※9/8(金) 追記

※"give @p[r=1]"ですが、本来は"give @p"だけでも良いと思います!
ただ、このmcfunctionファイルを呼び出すためのfunctionコマンドを
コマンドブロックに書いたとしても、
ちゃんと近くの1人に動作するようにしています!


6. Minecraftでアドオンを有効化しよう!

Minecraftでアドオンを使うために、いくつかの設定が必要です。
まずは何でも良いのでワールドを作ります!

ワールド作成画面の左側にある「ビヘイビアーパック」を左クリックして、
右側に表示されているアドオンから、有効化するものを選んで
[有効化] をクリックしましょう!

Minecraftでアドオンを有効化する画面
使いたいアドオンを選んで有効化する!

次に、左側にある「実験」を左クリックして、
ズラッと色々な項目が表示されている右側の画面の下の方を見ていきます!

その中で「ホリデークリエイターの特徴」という項目を左クリック!

ホリデークリエイターの特徴をONにする画面
「I」のマークで緑色になればOK!

この「実験」の中の何かしらの項目をONにする時には、
「試験的機能を使うとうまく動かないかも?」
「一度ONにしたら、そのワールドではOFFに出来ないよ!」
「それでもオンにする?」
といった内容のポップアップが表示されますが、
アドオンを使う際には必要なので、怖がらずにONにします!

試験的機能をまずオンにするを確認する画面
テスト機能をONにするか?ということなので、ONにしましょう!

ここまで出来たら、ワールドを作りましょう!

アドオンは既に作っているワールドに入れることも出来ます。
その場合も同じように、
アドオンを有効化する
ホリデークリエイターの特徴をONにする
の設定が必要です!


7. 「マイクラスターターキット」を呼び出してみる!

ついに最後です!
Minecraftのワールドの中でfunctionコマンドを実行してみましょう!

ワールドが読み込まれたら、キーボードの「/キー」を押して
チャット欄を開きます。

/キー」はキーボード右下あたりにある、このようなキーです。

スラッシュキー
/(スラッシュ)キーはキーボードの右下あたり!

Enterキーを押してもチャット欄は開きますが、
/キーを押してチャット欄を開くと
最初から「/」が入力された状態になっています。
コマンドを入力する時には/キーを押したほうが早くなります!

チャット欄を開いたら、以下のように入力してください。

/function starter_kit

/function (半角スペース)」まで入力すると、
入力欄の左上あたりに「starter_kit」という候補が出るはずなので、
それをTabキーで補完入力してもOK!

そのままEnterキーでコマンドを送信すると、
以下のアイテムがゲットできます!

  • 鉄のヘルメット

  • 鉄のチェストプレート

  • 鉄のレギンス

  • 鉄のブーツ(※96ダメージが入っている状態)

  • パン x5個

  • 治癒のポーションLv1 x5個

これで「マイクラスターターキット」の完成です!
ゲットできる中身を変えてみたり、別のコマンドを入れてみたり。
自分で色々アレンジしてみてくださいね!


終わりに

今回はアドオン開発をする方法を、本当にイチから解説してみました!

ただ、このnoteだけでは解説しきれなかったので、
もっと突っ込んだ詳しい解説はまた別のnoteにまとめようと思います!

「こういうファイルの解説が知りたい!」
「◯◯について知りたいのでまとめて!」
といった希望があれば、ぜひコメントに書いてくださいね!
(順番に解説していきます!)

もしこのnoteが参考になったら、ぜひお友達に紹介してください!

オススメnote

この記事が気に入ったらサポートをしてみませんか?