比較

データパックとプラグインの比較

2026年10月18日に更新

データパックは、バニラのMinecraftが読み込むJSONと.mcfunctionのファイルが入ったフォルダです。レシピ、ルート、進捗、コマンドを扱います。プラグインは、PaperやSpigotのサーバーが実行するJavaのコードです。多くのアイデアはどちらの方法でも実現でき、正しい選択は、どこで動かす必要があるかと、ロジックがどれだけ複雑かで決まります。

データパックに向いている例です。

Codexeでこれを生成

並べて比較

データパックプラグイン
必要なものなし: バニラで十分Paper、Spigot、またはそのフォーク
シングルプレイはいいいえ
記述言語JSONとMinecraftのコマンドJavaまたはKotlin
得意なことレシピ、ルートテーブル、進捗、タグ、ワールド生成、コマンドによる仕組み引数付きのコマンド、GUI、エコノミー、データベース、イベント、権限
イベントへの反応限定的: 進捗、プレディケート、毎ティック実行されるファンクション数百種類のイベント: ブロックの破壊、チャット、ダメージ、インベントリのクリックなど
データの保存ワールド内のスコアボードとストレージNBTファイル、SQLite、MySQL、Javaで使えるものなら何でも
バージョン間形式がよく変わり、パックの更新が必要APIが安定していて、多くのプラグインがそのまま動く
インストール先world/datapacks/plugins/

データパックのほうが向いている場合

  • シングルプレイやバニラのサーバーで動く必要がある、またはプレイヤーがワールドのアドオンとして共有する。
  • アイデアがほぼデータだけ: 新しいレシピ、変更したルート、進捗のツリー、独自のワールド生成。
  • サーバーソフトウェアもJavaのビルドも一切使いたくない。

プラグインのほうが向いている場合

  • 引数付きのコマンド、権限、GUI、ショップが必要。
  • データをプレイヤーごとにファイルやデータベースに保存する必要がある、またはWebサイトやDiscordと共有したい。
  • ロジックが多くのイベントに反応する、または毎ティック多くのファンクションを動かす必要があり、データパックではパフォーマンスに響く。
  • ほかのプラグインを使う: Vault、LuckPerms、PlaceholderAPI、WorldGuard。
  • Javaもビルドも使わずにサーバーのロジックを作りたいなら、中間の方法があります。Skriptです。

1つのサーバーで両方を使う

PaperとSpigotは、バニラと同じようにワールドフォルダからデータパックを読み込むので、サーバー全体でどちらか一方に決める必要はありません。よくある分け方は、レシピ、ルートテーブル、進捗、ワールド生成はデータパックに置き(ただのデータなので編集しやすい)、コマンド、GUI、エコノミー、プレイヤーごとに保存するものはプラグインに置く方法です。データパックは1つのワールドに属し、プラグインはサーバーのすべてのワールドに適用されることを覚えておいてください。

Codexeなら両方作れる

Codexeは両方を作れます。データパックは、準備完了になる前に本物のMinecraftサーバーで読み込まれ、ログでエラーが確認されます。プラグインはコンパイルされます。どちらも、自分のゲームから専用のテストサーバーで遊べます。ワールド生成を変えるデータパックには、新しく生成したワールドのサーバーが用意されるので、その地形を確認できます。データパックは1.20.1から26.3までのバージョンで読み込みテストが行われ、プラグインは1.8.8から26.3までを対象にできます。

よくある質問

データパックで新しいアイテムを追加できますか?

本当に新しいアイテムは追加できません。既存のアイテムに独自の名前、コンポーネント、モデル(リソースパックを使用)を付けることはできますが、コマンドでできる範囲を超える新しい動作は付けられません。

データパックはPaperサーバーで動きますか?

はい。Paperはバニラと同じようにワールドフォルダからデータパックを読み込むので、同じサーバーでデータパックとプラグインを使えます。

どちらが速いですか?

小さなものなら、どちらでも問題ありません。毎ティック全プレイヤーを確認するような重いティックファンクションは、1つのイベントを監視するプラグインよりも負荷がかかります。

後からデータパックをプラグインにできますか?

はい。ロジックをJavaで書き直せば可能です。Paperは両方を読み込むので、レシピ、ルートテーブル、進捗はプラグインと並べてデータパックのまま残すこともできます。

データパックかプラグインで作る

このプロンプトは、そのまま送信できる状態で開きます:

“Minecraft 1.21.4用のデータパック、名前空間は「hunt」: ゾンビ、スケルトン、クリーパー、エンダーマン、ウィッチ、エンダードラゴンを倒すと得られる6つの進捗からなる「Monster Hunter」進捗ツリー、それぞれ経験値を付与、キル数のスコアボードを追加するloadファンクション。”

Codexeでこれを生成
データパックとプラグイン: あなたのアイデアに必要なのはどちら? | Codexe