インターメディエリーチって何?Minecraftのマッピング解説

Fabricの安定した命名レイヤーであるIntermediaryは、Minecraftの難読化されたコードに対して適用され、これにより、フィールド名が変更されてもMODが動作し続け、バージョン間の互換性を維持します.

Mappingsby trqUpdated June 4, 2026
Key takeaways
  • Intermediaryは、Minecraftの難読化されたコード上にFabricが提供する、安定した名前付けレイヤーです。
  • それは、各難読化されたシンボルに固定された名前を与え、バージョン間でその名前が変わらないようにします。
  • コンパイルされたFabricのModは、Intermediaryの名前に対して、読みやすい名前ではなく、出荷されます。
  • アップデート時の破損を軽減しますが、削除されたゲームコードからModを完全に保護することはできません.

インターメディアリは、Minecraftの難読化されたコード上にFabric(https://fabricmc.net/)が構築する、安定した名前付けレイヤーです。Mojangは、クラス、フィールド、メソッドの名前をスクランブルした状態でゲームをリリースします。これらの名前はリリースごとに変更されますが、インターメディアリはそれぞれに固定された名前を割り当て、それがバージョン間で一貫性を保ちます。これにより、コンパイルされたMODは、ゲームのアップデート後でも、パッチを適用するコードを常に探し当てることができます.

どこ Opal 合う

OpalはFabricModなので、他のFabricModと同様に、このマッピングレイヤーに依存しています。手動で設定する必要はありません。セットアップガイドに従えばすぐに使い始めることができます

中間マッピングとは何か

中間マッピングとは、一連のマッピング、つまり、隠蔽されたMinecraftのシンボルと、安定した機械生成された名前を紐づけるルックアップテーブルです。ゲームがaと呼ぶクラスは、中間マッピングではclass_1234となることがあります。その名前は醜いかもしれませんが、そのシンボルに対してリリース間で永続的です。

Mojangは、すべてのビルドでゲームを隠蔽します。field_5678のような名前は、そうでなければリリースごとに変化するため、生の隠蔽された名前に対してコンパイルされたModは、ゲームがアップデートされるとすぐに動作しなくなります。中間マッピングは、その名前を固定し、Modではなくマッピングが変化を吸収するようにします。

Fabric Modが必要とする理由

Modは、開発者が記述する読みやすい名前ではなく、中間マッピングの名前に対してコンパイルされて配布されます。この決定が、Fabric Modが、多くの場合は再コンパイルなしで新しいゲームビルド上で動作し続けることを可能にしています。

ゲームの起動時、Fabricは、そのバージョンのための中間マッピングをロードし、隠蔽されたゲームクラスをModが期待する安定した名前にリマップします。Modとゲームは、どちらも生で配布しない名前セットで互いに合流します。

中間マッピングと開発者マッピング

開発者はclass_1234を読んだり書いたりしません。YarnやMojmapのような、シンボルに説明的な名前を与える人間が読めるマッピングに対して作業します。ビルド時に、これらの読みやすい名前は配布のために中間マッピングにコンパイルされます.

レイヤーユーザーバージョン間で安定
難読化a, field_5678手動では誰もいいえ
中間層class_1234配信されたMODバイナリはい
Yarn / MojmapMinecraftClientビルド時の開発者読みやすく、バージョン管理されている

この仕組みにより、開発者はフレンドリーな名前でコードを書くことができ、実際に配信されるものはバージョン安定性を保つことができます。読みやすいマッピングは交換可能ですが、中間層は誰もが合意する共通の基盤です。

MODのライフサイクルにおける役割

  • 開発者はYarnやMojmapのような読みやすいマッピングに対してコードを書きます。
  • ビルドは、それらの名前を中間層の名前へと変換します。
  • MODは、中間層のシンボルを参照するJARとして配信されます。
  • 起動時に、Fabricは実行中のゲームの難読化された名前を中間層にリマップし、MODとゲームを一致させます。

これが、マッピングがFabricのMOD開発において静かで重要な役割を果たしている理由です。マッピングは、アップデート後もMODが正しいコードを指し示すための契約です。

よくある質問