人気ブログランキング | 話題のタグを見る

[マイクラ] 初心者による初めてのAdd-on作成手順(1) - Duck.ai [アドオン]

新しいAI Chat "Duck.ai" は、以下の記事に詳しい。

今マイクラに数十年ぶり(初期の無料Java版)にハマってて、いくつかの装置を拠点に組み込んでいるのだが、PCの統合版では、Java版のようなModは、Add-onと言うらしい。

建築時に向きが大事なのだが、TeraTechでも感じたが、接続ポイントが上下左右非対称だと既存の建築物に邪魔されて設置が難しい。
なんで、回転や反転がないのか~とマイクラでも悩まされる事になる。

Add-onで反転は無くとも、上下左右の2軸くらいは回転できるような機能が欲しい。

まずは、簡単なHello Worldから。

Duck.aiからGPT-4o miniへ問合せ。

minecraftでAdd-onを自作したいのですが、まず初めにかまどを設置するとその上に"こんにちは"と表示する物を作って、hello.mcaddonというファイル形式で出力してもらえますか?


●GPT-4o mini

MinecraftのAdd-onを自作するためには、JSON形式のファイルを作成する必要があります。以下は、かまどを設置したときにその上に「こんにちは」と表示する簡単なAdd-onの作成手順です。


1. フォルダ構成を作成


まず、以下のようなフォルダ構成を作成します。

Code

hello/
├── behavior_packs/
│ └── hello_behavior/
│ ├── manifest.json
│ └── hello.json
└── resource_packs/
└── hello_resource/
├── manifest.json
└── texts/
└── hello.json


2. manifest.jsonの作成


manifest.jsonはAdd-onのメタデータを含むファイルです。以下の内容をそれぞれのmanifest.jsonに記述します。


behavior_packs/hello_behavior/manifest.json


json

{
"format_version": "2",
"header": {
"description": "Hello Add-on Behavior Pack",
"name": "Hello Behavior Pack",
"uuid": "YOUR-BEHAVIOR-UUID",
"version": [1, 0, 0],
"min_engine_version": [1, 16, 0]
},
"modules": [
{
"description": "Hello Add-on Behavior",
"type": "data",
"uuid": "YOUR-BEHAVIOR-UUID-2",
"version": [1, 0, 0]
}
]
}

resource_packs/hello_resource/manifest.json


json

{
"format_version": "2",
"header": {
"description": "Hello Add-on Resource Pack",
"name": "Hello Resource Pack",
"uuid": "YOUR-RESOURCE-UUID",
"version": [1, 0, 0],
"min_engine_version": [1, 16, 0]
},
"modules": [
{
"description": "Hello Add-on Resource",
"type": "data",
"uuid": "YOUR-RESOURCE-UUID-2",
"version": [1, 0, 0]
}
]
}

UUIDはユニークな識別子で、UUID Generatorを使って生成してください。


3. hello.jsonの作成


behavior_packs/hello_behavior/hello.json


json

{
"format_version": "1.10",
"minecraft:entity": {
"description": {
"identifier": "hello:hello_entity",
"is_spawnable": false,
"is_summonable": false,
"scripts": {
"on_interact": "hello:display_message"
}
},
"components": {
"minecraft:display_name": {
"value": "こんにちは"
}
}
}
}

4. hello.jsonの作成(リソース)


resource_packs/hello_resource/texts/hello.json


json

{
"hello:display_message": "こんにちは"
}

5. .mcaddonファイルの作成


最後に、helloフォルダを圧縮してhello.mcaddonというファイル名で保存します。


注意点


  • 上記の手順は基本的な構成です。Minecraftのバージョンや仕様によっては、調整が必要な場合があります。
  • Add-onをMinecraftに適用するには、ゲーム内の設定からリソースパックとビヘイビアパックを有効にする必要があります。

この手順を参考にして、自分のAdd-onを作成してみてください!



ここまでがDuck.aiが回答してくれた内容をエキサイトブログにコピー&ペーストしたものだ。
codeタグとformタグがエラーになったのでHTML編集で削除。

関係ないが以下は、エキサイトブログでは見かけないtextareaタグだが、きちんと表示している。


さて、作成したはいいが、削除はどうするのか?
これも聞いてみた。
以下はコピーした後、一度メモ帳に出力し、クリップボードの内容をテキストのみにした状態。


上記のアドオンを削除する時はどうしますか?

●GPT-4o mini

MinecraftのAdd-onを削除する手順は、使用しているプラットフォーム(PC、モバイル、コンソール)によって若干異なる場合がありますが、一般的な手順は以下の通りです。
1. Minecraftを開く

まず、Minecraftを起動します。
2. 設定メニューに移動

メインメニューから「設定」を選択します。

3. リソースパックとビヘイビアパックの管理

「ストレージ」または「リソースパック」や「ビヘイビアパック」のセクションに移動します。

4. Add-onを無効にする

追加したAdd-on(リソースパックやビヘイビアパック)を見つけて、無効にします。これにより、ゲーム内でそのAdd-onが使用されなくなります。

5. Add-onを削除する

Add-onを完全に削除するには、以下の手順を行います。

PCの場合(Windows 10)

ファイルエクスプローラーを開く。
**%localappdata%**をアドレスバーに入力してEnterを押す。
**Packages**フォルダを開く。
**Microsoft.MinecraftUWP_8wekyb3d8bbwe**フォルダを探して開く。
**LocalState**フォルダを開く。

残念ながらここはパスが不足していた。
games\com.mojangが間に入る。
(Androidのcom.xxx形式-xxx:提供会社名-が採用されたようだ)

**behavior_packsおよびresource_packs**フォルダを開き、削除したいAdd-onのフォルダを見つけて削除します。

モバイルの場合(iOS/Android)

モバイルデバイスでは、ファイルマネージャーアプリを使用して、Minecraftのデータフォルダにアクセスし、Add-onのフォルダを削除する必要があります。具体的な手順はデバイスによって異なるため、適切なアプリを使用してください。

コンソールの場合(Xbox、PlayStationなど)

コンソールでは、Add-onを削除するための直接的な方法は提供されていないことが多いです。通常、ゲーム内で無効にするだけで十分です。完全に削除するには、ゲームのデータをリセットする必要があるかもしれません。

注意点

Add-onを削除する前に、必要なデータのバックアップを取ることをお勧めします。
Add-onを無効にするだけでは、ファイルは残りますが、ゲーム内での影響はなくなります。完全に削除したい場合は、上記の手順に従ってください。

これで、MinecraftのAdd-onを削除する手順が完了です。


準備は出来た。
helloフォルダを「zip」圧縮してリネーム、hello.mcaddonをダブルクリックしてマイクラを起動。
最初のプレイ/設定画面で、プレイを選択。
安全のため、「✎」鉛筆アイコンをクリックし、「世界を編集」画面に入って、既存の「世界を複写」。
(1)と付くので、これをバックアップ(オリジナル)として残し、付かない方の世界をテスト用とする。

そのまま、付かない方の世界を「起動しない」で、もう一度「✎」鉛筆アイコンをクリックし、「世界を編集」画面でリソースパックとビヘイビアパックを開いてみたが、「hello」というアドオンは使用中にも利用可能にも見当たらない。

どうやらどこかにエラーがあるみたいだ。

念のため圧縮とうまく行かない件を聞いてみる。


一つ前のAdd-on作成したものですが、圧縮はzipでいいですか?
●GPT-4o mini

はい、Add-onを圧縮する際にはZIP形式で圧縮するのが一般的です。以下の手順でZIPファイルを作成できます。
ZIPファイルの作成手順

フォルダを選択: helloフォルダを右クリックします。

圧縮オプションを選択:
Windowsの場合: 「送る」→「圧縮 (zip 形式) フォルダー」を選択します。
macOSの場合: 「圧縮」を選択します。

ファイル名を変更: 作成されたZIPファイルの名前をhello.mcaddonに変更します。

注意点

.mcaddonファイルは、MinecraftがAdd-onとして認識するための特別な拡張子です。ZIPファイルをそのまま.zipのままにしておくと、Minecraftで正しく読み込まれませんので、必ず.mcaddonに変更してください。
.mcaddonファイルは、リソースパックとビヘイビアパックが一つのファイルにまとめられた形式です。もしそれぞれを別々に管理したい場合は、リソースパックとビヘイビアパックを個別にZIP圧縮して、それぞれの拡張子(.zip)のまま使用することもできます。

この手順でAdd-onを圧縮し、Minecraftにインポートしてみてください!


合ってる。じゃあどこが悪いのかな?バージョンが違うのかな?


残念ながらこれでインポートしたhelloアドオンはリソースパックやビヘイビアパックに一覧表示されませんでした。どこか形式が違うのでしょうか?マイクラのバージョンはv1.21.62です。

●GPT-4o mini

MinecraftのAdd-onが正しくインポートされない場合、いくつかの原因が考えられます。以下の点を確認してみてください。
1. manifest.jsonの内容

manifest.jsonの内容が正しいか確認してください。特に、UUIDがユニークであること、バージョンが正しく設定されていることを確認します。UUIDは、他のAdd-onと重複しないように生成する必要があります。
2. フォルダ構成

Add-onのフォルダ構成が正しいか確認してください。以下のような構成になっていることを確認します。

Code

hello/
├── behavior_packs/
│ └── hello_behavior/
│ ├── manifest.json
│ └── hello.json
└── resource_packs/
└── hello_resource/
├── manifest.json
└── texts/
└── hello.json

3. JSONファイルの形式

JSONファイルが正しい形式で書かれているか確認します。特に、カンマや括弧の閉じ忘れがないか、正しいキーと値が設定されているかを確認してください。JSONのバリデーターを使って、構文エラーがないかチェックするのも良いでしょう。
4. ZIPファイルの作成

ZIPファイルを作成する際に、正しいフォルダを圧縮しているか確認します。helloフォルダを直接圧縮するのではなく、behavior_packsとresource_packsのフォルダをそれぞれ圧縮して、hello.mcaddonファイルを作成する必要があります。
5. Minecraftのバージョン

Minecraftのバージョンが1.21.62であることを確認しましたが、Add-onの形式がそのバージョンに対応しているかも確認してください。特に、min_engine_versionが適切に設定されているか確認します。
6. インポート手順

Minecraftを開きます。
メインメニューから「設定」を選択します。
「ストレージ」または「リソースパック」や「ビヘイビアパック」のセクションに移動します。
hello.mcaddonファイルをドラッグ&ドロップするか、インポートオプションを使用してインポートします。

7. エラーメッセージ

もしエラーメッセージが表示される場合、その内容を確認して、問題の手がかりを探してください。

これらの点を確認しても問題が解決しない場合、具体的なエラーメッセージや挙動を教えていただければ、さらに詳しくサポートできるかもしれません。


あー、リソースパックはhello.jsonファイルがさらにtextsフォルダの下に配置しないといけないのか。
フォルダ構成から聞いてくるとはさすが。
初心者あるあるだな。
念のため、ファイル削除してから再インポートしよう。
ファイルを削除するため、示されたパスを降りていくが、helloフォルダは見当たらない。
エラーならファイル自体がそもそも格納されないって事か。

再度helloフォルダを圧縮・リネームしてマイクラを一度落として、再度hello.mcaddonをダブルクリック。

おー、今度はマイクラの画面上部にログが流れた。
helloアドオンのインポートに失敗しました。
ログファイルに出力されました。
とのシステムメッセージが。

うーん、一歩前進か。
ログファイルは、マイクラのプレイ/設定画面の設定ボタンを押し、「設定」画面で左サイドの一番下にスクロールすると出てくる「クリエイター」の、右の画面の一番下にある。
コンテンツ ログの場所:
c:/Users/k1segawa/AppData/Local/Packages/Microsoft.MinecraftUWP_8wekyb3d8bbwe/LocalState/logs/ContentLog2025-03-11_22-45-15

.datファイルしか見当たらないし、日付も違う。

色々遡ってキャッシュやAppData以下も見たが、ヒットしない。
再インポートすると時刻が変わる。23_31_27とか。

上の「コンテンツログの有効化」にチェックを入れたり、「警告」を「詳細」にしてもだめ。

公式を探してアドオンの作り方を読んでみる事にした。
Minecraft: Bedrock Edition でのアドオンのインストール | Microsoft Learn

すると、mcaddonではなくmcworldかmcpackだとの事。

本当か?と思いながらリネームしてダブルクリック。
先ほどのフォルダを除くと、なんとContentLogファイルが生成された!
そして「コンテンツ ログの履歴」を見るとなんと下記のように。
[Addon][error]-Cannot determine which pack manifest to use: Multiple manifests found at the same directory level in the pack's folder hierarchy.

これは「警告」で「詳細」や「情報」にしてみても変わらない。
上記を翻訳して見ると、
「使用するパック・マニフェストを決定できません: パックのフォルダ階層内の同じディレクトリレベルで複数のマニフェストが見つかりました。」
どうやらおかしい部分があるようだ。
Redditでもヒットした。
パックでマニフェストが見つからない問題を修正するにはどうすればいいですか? : r/Minecraft
https://www.reddit.com/r/Minecraft/comments/95p16h/how_do_i_fix_unable_to_find_manifest_in_pack/

どうやらAIに指摘しないと正しいファイルは得られないようだ。
公式をもっと調べないと。




by k1segawa | 2025-03-11 21:27 | マイクラ | Comments(0)