MC Toolkit

ガイド / トラブルシューティング

pack.mcmeta:pack_format の数値と「互換性なし」警告

フィールドをひとつ間違えるだけで、Minecraft はあなたのパックをグレーアウトさせてしまいます。ここでは 26.x が要求する形式、ひとつのファイルで新旧バージョンに対応する方法、そしてファイルを置くべき場所を解説します。

「自分のパックが互換性なしと表示される」というケースのほとんどは、小さなファイルの中のひとつのフィールドが原因です。

ファイル

{
  "pack": {
    "min_format": 97,
    "max_format": 97,
    "description": "My pack"
  }
}

これは 26.3 のリソースパックです。26.3 のデータパックでは 121 を使います。1.21.9 以降、64(リソース)または 81(データ)を超えるフォーマットは min_format と max_format で宣言しなければなりません。依然として裸の "pack_format": 97 を書いているパック——ほとんどのチュートリアルやほとんどのジェネレーターが今もそう表示しています——は拒否され、互換性なしと表示されます。

ファイル名は正確に pack.mcmeta でなければならず、zip のルート——assets/ や data/ の隣——に置く必要があります。zip 内のフォルダの中ではありません。中身ではなく、それを含むフォルダごと zip にしてしまうのが二番目によくある失敗で、見た目は間違ったフォーマット番号とまったく同じです。

リソースパックとデータパックでは番号が異なる

ここが人を引っかける部分です。このふたつのカウンターは何年も前に分岐しており、互換性はありません。リソースパックの番号を使ったデータパックは、その番号が「最新」であってもグレーアウトされます。

リリースごとに古くなる表を暗記するよりも、対象バージョンのバニラパックから番号を読み取るか、ジェネレーターに埋めてもらいましょう。

新旧バージョンに対応するひとつのファイル

番号をひとつに固定すると、次のリリースでパックが壊れます。範囲指定なら壊れません——ただし 26.x にまで及ぶ範囲は、ゲームの二世代分を同時に書く必要があります:

{
  "pack": {
    "pack_format": 46,
    "supported_formats": { "min_inclusive": 46, "max_inclusive": 64 },
    "min_format": 46,
    "max_format": 97,
    "description": "My pack"
  }
}

min_format/max_format は 26.x が読み取る範囲です。pack_format と supported_formats は 1.21.9 より古いクライアント専用です:supported_formats は正確に 64(データパックなら 81)で終わらなければならず、min_format はその下限値と等しくなければならず、pack_format はその中に収まっていなければなりません。昔のアドバイス——supported_formats を 99 のような大きな数値まで——は、今や 26.x が真っ向から拒否する唯一の形式です。テクスチャやレシピを追加するだけのパック——ほとんどのパックがそうです——なら、広い範囲は正直です。なぜならバージョン間で実際に壊れるものは何もないからです。

description はテキストコンポーネントを受け取る

"description": [
  { "text": "My pack ", "color": "gold" },
  { "text": "v2", "color": "gray", "italic": true }
]

セクション記号コード(§6)も依然として機能しますが、JSON 形式なら制御文字を除去するツールを経由したコピー&ペーストでも生き残ります。

オーバーレイ:複数バージョンを同時にサポートする

"overlays": { "entries": [
  { "formats": { "min_inclusive": 42, "max_inclusive": 45 }, "directory": "older" }
] }

パックルートの older/ フォルダは、それらのフォーマットでのみ使用されます。これにより、異なるモデルフォーマットを持つ二つのバージョンを、zip を二つ配布するのではなく、ひとつのダウンロードでサポートできます。

簡単な診断

症状原因
グレーアウトし、「古い/新しいバージョン用です」と表示されるフォーマット番号が間違っている、または(1.21.9 以降)min_format/max_format がない
パックが一覧にまったく表示されないpack.mcmeta が zip ルートにない、または JSON が無効
読み込むがテクスチャが欠けているパックフォーマットは正常。テクスチャのパスが間違っている
シングルプレイヤーでは動くがサーバーでは動かないデータパックが間違ったワールドフォルダにある

末尾のカンマは無効な JSON であり、「一覧にまったく表示されない」ケースを引き起こします。エラーメッセージは出ません。

あなたのパックの種類と対象バージョンに合った有効なファイルを——min_format/max_format と、古いバージョンが必要とするレガシーフィールドを備えた形で——pack.mcmeta Generator で生成しましょう。

pack.mcmeta ジェネレーター →

その他のガイド

すべて見る →