【マイクラ】データパック自作入門|フォルダ構成とpack.mcmetaを初心者向けに解説
マイクラのデータパック自作をJava版初心者向けにやさしく解説。MODとの違い、フォルダ構成とpack.mcmeta、functionでコマンドをまとめる方法、参加時の装備配布例、/reloadでの反映まで手順で紹介します。

📋 目次を開く
⚠ 本記事は2026年6月時点の情報を元に編集部が独自に構成した解説です。 バージョン番号体系(26.X系)やツールの仕様には未確認要素を含みますので、最終的にはMojang公式情報や各ツールの公式をご確認ください。
マインクラフト(以下マイクラ)のデータパックは、コマンドをまとめて「自動で動く仕組み」を作れるJava版の追加機能です。結論から言うと、プログラミング知識ゼロでも作れます。この記事を読めば、フォルダを作って参加時に装備を配る仕組みまで自分で組めるようになります。
「自作」と聞くと身構えるかもしれませんが、やることはフォルダ作りとメモ帳でのテキスト書きだけ。ぶっちゃけ最初の1個さえ動かせば、あとは応用でどんどん広がります。
データパックって何?MODと何が違うの?
結論、**データパックは「マイクラの標準機能だけで作れる追加データ」**です。MODみたいに外部ソフトを入れる必要がありません。
データパックの中身は、コマンド・進捗(アドバンスメント)・戦利品(ルートテーブル)・レシピといったゲームのデータを書き換える設定ファイルの集まりです。バニラ(通常のマイクラ)に最初から用意されている仕組みを利用するので、導入も手軽です。
一番大事な違いを表にまとめました。
| 項目 | データパック(Java版) | MOD(Java版) |
|---|---|---|
| 導入するもの | ワールドにフォルダを入れるだけ | Forge/Fabric等の前提ソフトが必要 |
| 作れる範囲 | コマンドやレシピの範囲内 | 新ブロック・新モブなど自由度が高い |
| 作るのに必要な知識 | メモ帳とコマンドの知識 | Javaプログラミング |
| 壊れにくさ | バニラ機能なので比較的安定 | バージョン差で動かないことが多い |
「新しいブロックやモブを一から作りたい」ならMOD、「今ある機能を組み合わせて自動化したい」ならデータパック、と覚えておけばOKです。初心者はまずデータパックから始めるのがおすすめです。
統合版(Bedrock)は「ビヘイビアーパック」
ここは要注意ポイントです。**統合版にデータパックはなく、似た役割を担うのが「ビヘイビアーパック(behavior pack)」**です。
考え方が根本的に違います。統合版のビヘイビアーパックはmanifest.jsonという設定ファイルと**UUID(パックを識別する固有のID番号)**が必須で、Java版とはフォルダ構成もファイルの書き方も別物です。
つまり、Java版のデータパックをそのまま統合版に入れても動きません(※逆も同様)。この記事はJava版の解説なので、統合版の人は「ビヘイビアーパック」で検索し直しましょう。
データパックのフォルダ構成とpack.mcmeta
結論、データパックは「決まった形のフォルダ」と「pack.mcmetaという設定ファイル1個」があれば動き出します。まずは全体像を掴みましょう。
基本のフォルダ構成はこんな感じです。
my_datapack/
├─ pack.mcmeta ← 設定ファイル(必須)
└─ data/
└─ example/ ← 名前空間(自分で決める好きな名前)
└─ function/ ← ここに .mcfunction を置く
└─ hello.mcfunction
順番に用語をかみ砕きます。**pack.mcmetaは「このパックの自己紹介カード」**みたいなファイル。中身はJSON(項目を”名前”:“値”の形で書くテキスト形式)で書きます。
**dataフォルダの中に作るexampleのようなフォルダが「名前空間(namespace)」**です。これは他のパックと中身がぶつからないようにする”苗字”のようなもの。自分だけのわかりやすい名前を英小文字でつけましょう。
pack.mcmetaの中身
pack.mcmetaをメモ帳で作り、最低限このように書きます。
{
"pack": {
"description": "はじめてのデータパック",
"pack_format": 88
}
}
pack_formatはマイクラのバージョンに対応した番号で、ここがズレると読み込まれません。バージョンごとに番号が違うので、使っているマイクラに合わせるのが必須です(※要確認/後述)。
なお新しめのバージョンではpack_formatの代わりにmin_formatとmax_formatで対応範囲を指定する方式に変わりました(※2026年時点の情報、25w31a以降)。どちらを使うかは自分のバージョンの公式情報を確認しましょう。番号選びに迷ったら、misodeなどのpack.mcmeta生成ツールを使うと楽です(※要確認)。
functionでコマンドをまとめよう
ここがデータパックの心臓部です。結論、**.mcfunctionファイルは「コマンドを上から順に実行するメモ帳」**だと思ってください。
例えばfunction/hello.mcfunctionに、コマンドを/抜きで1行ずつ書きます。
say データパックが動いたよ!
give @a minecraft:diamond 3
これでこのfunctionを呼ぶだけで、2つのコマンドがまとめて実行されます。コマンドブロックを何個も並べる必要がなくなるのが最大のメリットです。
呼び出すときはゲーム内チャットでこう打ちます。名前空間とファイルパスを:でつなぐのがルールです。
/function example:hello
コマンド1個ずつを手打ちするより、functionにまとめて一発呼び出しが圧倒的にラク。これだけ覚えとけばOKなくらい重要な仕組みです。
自動で動かす「load」と「tick」
「毎回チャットで呼ぶの面倒…」という人向けの仕組みもあります。特別なタグを設定すると、functionを自動実行できます。
minecraft:load… ワールド読み込み時や/reloadのたびに1回実行minecraft:tick… 毎ティック(1秒に20回)ずっと実行
設定にはdata/minecraft/tags/function/の中にJSONを置きます。例えばload.jsonにこう書くと、起動時に自動でそのfunctionが走ります。
{
"values": ["example:setup"]
}
初期設定(スコアボード作成など)はload、常時監視したい処理はtickに入れる、と使い分けましょう。
簡単な例:参加時に装備配布・リスポーン地点設定
結論、「サーバーに入ったら装備を配る」「リスポーン地点をそろえる」も数行で作れます。実際に手を動かしてみましょう。
まずfunction/join.mcfunctionを作り、中身を書きます。これは全プレイヤー(@a)に鉄装備を配る例です。
give @a minecraft:iron_sword 1
give @a minecraft:iron_chestplate 1
say ようこそ!装備を配布しました
リスポーン地点をワールド全体でそろえたいなら、function/setup.mcfunctionにこう書きます。座標は自分のワールドに合わせて変えてください。
setworldspawn 100 64 100
gamerule spawnRadius 0
このsetupを先ほどのminecraft:loadタグに登録しておけば、ワールドを開くたびに自動でリスポーン地点が設定されるというわけです。装備配布のjoinはチャットで手動呼び出し、または看板やコマンドブロックから呼ぶ形が扱いやすいです。
最初は難しいことを考えず、sayとgiveだけの1行functionから始めるのが成功のコツ。動いた感動を先に味わっておきましょう。
つまずきポイント:動かないときの原因はだいたいコレ
結論、データパックが動かない原因の9割は「フォルダ名」「pack_format」「JSONの書式」の3つです。ここは正直つまずきやすいので、チェックリストとして残しておきます。
- フォルダ名が単数形になっているか … 1.21以降、
functionsではなくfunction(単数)に変わりました。古い解説をコピーするとfunctionsのままで動かない事故が多発します(※2026年時点の情報)。 - pack_formatがバージョンと合っているか … 番号が違うと
/datapack listに出てきません。「有効なパックが0個」なら真っ先にここを疑いましょう。 - JSONのカンマ・カッコ抜け …
{ }や,が1つ欠けるだけで丸ごと無効になります。オンラインのJSONチェッカーに貼って確認しときましょう。 - ファイル名が
hello.mcfunction.txtになっている … メモ帳の「拡張子を隠す」設定のせいで、余計な.txtが付いていることがあります。拡張子表示をONにして確認してください。 /reloadを忘れている … 後述しますが、ファイルを編集したら/reloadしないと反映されません。
「絶対合ってるのに動かない」ときほど、フォルダ名の単数形と拡張子の.txtを疑うのが鉄則です。編集部でも一番よくやらかす2大ミスです。
/reloadで反映・配布フォルダへの入れ方
結論、編集したら/reload、配布はdatapacksフォルダにコピーするだけです。仕上げの手順を押さえましょう。
/reloadで即反映
ファイルを書き換えたら、ゲーム内チャットで打つだけです。
/reload
これでマイクラを再起動しなくても最新の内容が読み込まれます。ただし前述の通り、.mcfunctionを編集しただけでは自動実行されません。反映されたfunctionを/functionで呼び直すか、loadタグ経由で動かしましょう。
ワールドに入れる場所
作ったデータパックのフォルダは、対象ワールドのセーブデータ内datapacksフォルダに丸ごと入れます。
saves/(ワールド名)/datapacks/my_datapack/
ここにpack.mcmetaとdataフォルダが入った状態でコピーすればOK。ワールドを開いて/datapack listで名前が出れば成功です。
配布するときは
人に渡すときは、my_datapackフォルダごとZIPに圧縮して配布します。受け取った人は解凍して同じdatapacksフォルダに入れるだけです。
ZIP化のコツは、pack.mcmetaが一番上の階層に来るように圧縮すること。フォルダを1個余分に挟むと読み込まれないので、そこだけ注意しときましょう。
合わせて読みたい
次にやること
- まず
pack.mcmetaとdata/example/function/hello.mcfunctionを作り、sayだけの1行functionを動かしてみる。 /reloadしてから/function example:helloで呼び出し、チャットに文字が出るか確認する。- うまくいったら
giveを足して、参加時の装備配布functionに発展させる。 minecraft:loadタグを設定して、起動時の自動実行にチャレンジする。- 完成したらZIP化して、フレンドのワールドに配ってみる。
最初の1個が動けば、あとはgiveやsetworldspawnを差し替えるだけで無限に応用できます。まずはsayから、気楽に始めてみましょう。
【マイクラ】大規模拠点がラグらない設計術|自動装置の常時稼働を減らすコツ
マインクラフトの大規模拠点やマルチサーバーが重くなる原因を、fps(描画)とTPS(サーバー処理)に分けて解説。ホッパー・オブザーバー時計・mob農場のオンオフ機構・チャンク境界を意識した負荷分散まで、中〜上級者向けにラグらせない設計思想をまとめました。
⚙️ レッドストーンをもっと学ぶ
関連記事
🔴 レッドストーン&自動装置【マイクラ】コマンドで作る簡単ミニゲーム入門|スコアボード得点管理のやり方
マイクラのコマンドで作る簡単ミニゲームの入門ガイド。スコアボードで得点管理、/executeで条件分岐、tellraw/titleで演出する方法を初心者向けに解説。コインを集める・PvP勝敗判定・鬼ごっこの最小構成つき。Java版と統合版のコマンド差も紹介します。
🔴 レッドストーン&自動装置【マイクラ】コマンド一覧と初心者向け基本コマンド完全ガイド【Java版/統合版】
マインクラフトのコマンド入力方法から、/give・/tp・/gamemode・/time・/weatherなど初心者が最初に覚えるべき基本コマンドまで、Java版と統合版の違いを含めて分かりやすく解説します。セレクタや座標指定の基礎、権限レベル、よくあるエラー対処法もカバー。
🔴 レッドストーン&自動装置【マイクラ】fillコマンドの使い方まとめ|大量設置・整地・置き換えのやり方【Java版/統合版】
マインクラフトのfillコマンドの基本構文、5つの動作モード、大量設置・整地・ブロック置換の実例をカジュアルに解説。座標指定・32,768ブロック上限・executeとの併用など実践テクまで初心者〜中級者向けにまとめました。
🔴 レッドストーン&自動装置【マイクラ】summonコマンドの使い方とエンティティID一覧【Java版/統合版】
summonコマンドの構文からエンティティID一覧、NBTタグ活用法まで、Java版・統合版の違いを踏まえて完全網羅した実践ガイド。コピペで使える実例と主要エンティティIDの対応表を掲載。
🔴 レッドストーン&自動装置【マイクラ】ターゲットセレクター完全ガイド|@a/@e引数一覧と実例
Minecraftのターゲットセレクター(@a/@p/@r/@e/@s/@n/@initiator/@c/@v)を完全網羅。Java版と統合版の引数差、distance/type/tag/scores/nbt/predicate/family/hasitemなどの構文と実用コマンド例を、1.21世代の最新仕様まで含めて日本語で徹底解説します。
🔴 レッドストーン&自動装置【マイクラ】tpコマンド完全ガイド|基本構文から次元間ワープまで【Java版/統合版】
Minecraft 26.2(Java版)/統合版 26.30時点のtp(テレポート)コマンド完全ガイド。基本構文、座標指定(絶対・相対~・ローカル^)、ターゲットセレクタ、facing・回転指定、Java版と統合版の差分、次元間tp、コマンドブロック応用まで、初心者から中級者まで実例付きで網羅解説します。