自分でアドオンを作ってみる "基礎の基礎"編

 この記事では、アドオン作りのための基礎──のさらに基礎を説明していきます。言ってしまえば準備編その2なんですが、読者にじらされていると思われたくないのであえて変えました。長いというほど内容は多くないですよ。

○アドオンはプログラミング??

 準備編でわたしが述べたように、厳密にはそうではないですが、アドオンはほぼプログラミングであると思った方がいいでしょう。
 プログラミングといわれて何を想像するでしょうか? これもまた準備編で手に入れた.zipファイルを解凍して適当な.jsonファイルを開いてみるといいでしょう。──こんなことをします。見たらなんとなく、理解できずともどういうものか通じると思います。
 JSONの書き方なんてわからない、、、たいていのひとはそうでしょう。しかしちゃんと調べて勉強するのはアレだというならばこちらの記事を参照してください。アドオンに必要なJSONの最低限がこの記事ひとつで学べます。

○アドオンパックの作りかた

 アドオンを導入するときには、フォルダやファイルを圧縮して導入します。一生懸命中身を作ったのに、導入するときに迷宮入りするととても萎えると思うので、空のパックを導入できるようにまずしてからアドオン作りに臨みましょう。
 まずはこのようなフォルダ構成を作ってください。

(ビヘイビア用フォルダ) ┳ pack_icon.png       
                        ┗ manifest.json       
(リソース用フォルダ) ┳ pack_icon.png        
                      ┗ manifest.json        

 ビヘイビア用のフォルダ、リソース用のフォルダの名前は自由です。見分けがつくようにするといいでしょう。そして、「pack_icon.png」と「manifest.json」はテンプレートから持ってきてください。
 アドオンを正しくインポートするのに不可欠なのは、manifest.jsonです。これを書き換える必要があり、さっそくJSONの知識が必要になってくるので上で貼った記事を読んでいない場合は読んでおいたほうがいいでしょう。manifest.json──通称マニフェストは、簡単に言えばインポートしたファイルがアドオンであることを認識させるためのものです。
 今回書き換えるのは、4, 12行目の「"description"」、5行目の「"name"」、6, 14行目の「"uuid"」の値です。
 descriptionの値にはアドオンの説明を入れましょう。アドオンを入れるときの画面に表示されます。nameはアドオンの名前です。これも同じく表示されます。
 では、UUIDとはなんでしょうか。これはアドオンとアドオンを識別するためのIDだと思ってください。そしてUUIDはここで取得します↓
 ここのサイトに行くとすぐ目の前にIDが表示されて、下にCopyと書いてあるボタンがあると思うのでそれでコピーします。これをそのままマニフェストの"uuid"の値に貼り付けます。ビヘイビア・リソース合わせて4つは別のものを貼り付けてください。ページを更新すれば別のIDがランダムで出てきますよ。
 ビヘイビアパックのマニフェストのみにある"dependencies"アレイですが、これはそのビヘイビアパックを適用したときに同時に適用させるリソースパックを指定するものとなっています。指定する場合は指定したいリソースパックの上からひとつ目のuuidをコピペしてください。ビヘイビアパックのみを扱うならこの"dependancies"アレイはまるごと消してください。ここで指定をミスすると設定画面で「依存関係が失われています」と警告されます。それでもアドオン自体は機能しますが、鬱陶しいのでそこらへんはしっかりとしておきたいところです。

パックをインポート

 これで準備は完了です。ちなみにpack_icon.pngはその名の通り、パックのアイコンです。わたしは16x16しか選んだことないので分かりませんがもしかしたら大きさの制限があるかもしれません。ただ、基本名前を「pack_icon.png」にすればおそらく何でも適用されます。変える場合もとのパックアイコンは消しても構いません。
 次は圧縮です。マインクラフトが読み込めるように専用の拡張子を使って用意したフォルダやファイルを圧縮していきます。ディレクトリの構成は以下の通りで「.mcpack」や「.mcaddon」は.zipファイルに圧縮して名前を変えるだけでOKです。

○○.mcaddon ┳ □□.mcpack ┳ pack_icon.png
                       ┃                      ┗ manifest.json
                      ┗△△.mcpack ┳ pack_icon.png
                                              ┗ manifest.json

 そして、リソースだけ・ビヘイビアだけを追加したい場合は「.mcpack」までで結構です。
 いちおう言っておくと、圧縮する場合は、例えば.mcpackのほうならpack_icon.jsonやmanifest.jsonなどを選択して圧縮します。それらが入ったフォルダを圧縮するんじゃないので気をつけてください。
 あとは、できた「○○.mcaddon」ファイルをタップ/クリックすればそこからマイクラが開けるようになると思います。

○アドオン学習の指針

 ただひたすらに自分のやりたいことを叶えるようなやり方では、もしかしたらそれがかなり難しいことで何もわからない→萎える  となってしまってはいけないので、ある程度のレベルの指針を示しておきます。
 もちろんこの順番で必ずやらないといけないなんてことはありません。できるのであれば初めから自分のやりたい分野をやるのは全然構わないんですが、無理して、または面倒くさがって飛ばすと場合によっては痛い目をみるので、難しければ正直に少し簡単な分野から慣れていって再挑戦してみましょう。ただ学問のようにアドオンをレベル順で学んでいくひとはあんまりいませんよね。
 今回はアドオンを学問としてカリキュラムを作るとしたら、という感じでレベルの対応を考えてみました。
 そして今後、ペースは遅いですがそれぞれに対応する記事を書いていき、ここに並べていこうと思います。

■ビヘイビア

○レベル1

 ブロック
 アイテム
 エンティティI
 ファンクション
 レシピ

○レベル2

 エンティティII
 フィーチャーI
(この記事の"鉱石型"の部分)
 バイオーム
 ルートテーブル

○レベル3

 フィーチャーII
 エンティティIII
 アニメーションコントローラ

○レベル4

 ScriptingAPI

■リソース

○レベル1

 ブロック
 アイテム
 サウンド
 テキスト

○レベル2

 エンティティアニメーション
 ジオメトリ
 molang

○レベル3

 パーティクルI
 レンダーコントローラ

○レベル4

 シェーダI
(暫定)
 ScriptingAPI
 パーティクルII
 UI

○レベル5

 シェーダII

注:

エンティティI:既存のエンティティに対して変更を行う
エンティティII:バニラのコピーなどを利用して自分なりのエンティティを追加する
エンティティIII:エンティティ作りにおける応用
フィーチャーI:鉱石型、ストラクチャー型など
フィーチャーII:植物型、樹木型など
シェーダI:シェーダの基礎
シェーダII:シェーダの発展
パーティクルI:パーティクルの基礎
パーティクルII:パーティクルの発展

MinecraftBEアドオン-ヒント倉庫

MimecraftBEのアドオン作りで困ったときにここで解決できるようにと個人によって作られたものです

0コメント

  • 1000 / 1000