Learn · frameworks
Fabric APIとは?Modding解説
FabricAPIは、ほとんどすべてのFabricMODが依存する共有ライブラリです。それが何をするのか、なぜローダーとは別に存在するのか、そしてそれがあなたに必要かどうかを説明します.
Fabric APIとは?
Fabric APIは、Fabricエコシステムが構築する共通のツールボックスです。ローダー自体はゲームの起動とパッチの適用しか知りません。便利な機能はほとんど同梱されていません。APIは、安定したイベント、ヘルパー、インターフェースのセットでこのギャップを埋め、個々のMODが同じ配線をそれぞれ作り直したり、互いに衝突したりすることを防ぎます。
ローダーが提供しない標準ライブラリと考えると良いでしょう。MOD開発者がプレイヤーの参加に反応したり、カスタムパケットを送信したり、新しいブロックを登録したりしたい場合、エンジンを直接ハックする代わりにAPIを呼び出します。
なぜFabric APIはローダーの一部ではないのですか?
Fabricは、システムを意図的に2つのパーツに分割しています。ローダーは、Minecraftを起動し、パッチレイヤーを実行する、小さく、変化の少ないコアです。APIは、その上に積み重ねられた、より大きく、より速く変化する共有インターフェースのセットです。これらを分離することで、それぞれが独自のペースで進化できます。
| パーツ | 役割 | アップデート頻度 |
|---|---|---|
| Fabricローダー | ゲームの起動、Mixinパッチの適用、MODの解決 | 新しいMCバージョンへの迅速な移植 |
| Fabric API | 共有イベント、ネットワーク、レジストリ、レンダリングヘルパー | 独自のスケジュールで進化 |
ペイオフはスピードです。新しいMinecraftのバージョンがリリースされると、小さなローダーは数時間以内に対応可能になり、広範なAPIは最初のポートをブロックすることなく追いつきます。それらを組み合わせると、スタック全体は最も遅い部分の速度にしか動かなくなるでしょう。
Fabric APIは実際に何を提供しているのでしょうか?
APIは、ほとんどすべてのMODが必要とすることを行うための、バージョン安定した方法をMODに提供します。各作者がゲームの内部構造に直接脆弱なフックを書く代わりに、コミュニティが共同で維持する共有のインターフェースをターゲットにします.
ライフサイクルとゲームプレイイベント
ティックのトリガー、ワールドロード、プレイヤー参加、ブロックとのインタラクションに関するクリーンなコールバックを提供し、モッドが手動でパッチを適用することなくゲームに反応できるようにする.
ネットワーキング支援
クライアントとサーバー間でカスタムパケットを定義・送信するための合理的な方法。多くのマルチプレイヤー対応MODの基盤となるものです.
コンテンツとレジストリヘルパー
新しいアイテム、ブロック、エンティティを登録するための共有配管により、2つのMODがコンテンツを追加しても衝突することなく動作する.
レンダリングとリソースヘルパー
HUD、モデル、テクスチャ関連の作業では、多くのレンダリングフックやリソースユーティリティMODが依存している.
APIを削ぎ落とせば、すべてのMODはそれぞれ独自の機械機構を同梱することになりかねません。開発の重複や乖離が生じ、ひとつのフォルダにまとめて導入した瞬間に互いに干渉し合うことになります。共有ライブラリこそが、無関係なMODたちが互いに調和を保つための鍵なのです。
Fabric APIは必要ですか?
ほとんどの場合、必要です。Fabric MODの大部分がこれを必須依存関係として宣言しており、これがないとロードされません。modsフォルダに通常のMOD jarファイルとして一度インストールするだけで、それを必要とするMODはすべて同じコピーから利用できます.
- Fabricに2つ以上のMODを導入している場合、APIをインストールしてください。
- MODのページで「Fabric API」が要件としてリストされている場合、インストールしてください。
- 単独で小さな独立したmodを動作させ、それが何も必要と明記されている場合、APIをスキップしても構いません。ただし、置いておいてもほとんど問題はありません。
短縮版です:Fabric API をベースラインとして扱ってください。厳密に必要としない場合のコストは、追加のJARファイル1つです。見落とした場合のコストは、クラッシュです。
Fabric API の入手先とバージョン合わせ方
公式の Fabric チャンネルまたは主要な MOD ホストから API を取得し、正確な Minecraft のバージョンに対応したビルドを選択してください。バージョン合わせの間違いは最も一般的な問題であり、最も騒がしく、混乱を招くクラッシュを引き起こします.
Minecraftのバージョンを確認してください
プロファイルが起動するバージョン番号を、パッチ番号まで正確に記録してください.
対応するAPIビルドをダウンロードしてください
そのバージョン用にタグ付けされたFabric APIリリースを掴んでください。最新版ではなく、そのバージョンに対応したものを.
モッズフォルダにドロップして
他のMODの横にJARファイルを置いてください。1つのコピーで依存するすべてのMODに対応できます.
起動し、失敗した場合はログを確認してください
何かがクラッシュした場合、ログには通常、欠落しているクラス名や期待していたバージョンが記載されています。その行が修正箇所を直接示します.
ローダー、API、およびMODのバージョンを手動で管理するのは面倒に聞こえるかもしれませんが、それは実際に面倒だからです。管理型ランチャーやユーティリティクライアントは、この依存関係の連鎖を解決するために部分的に存在し、ゲームがただ起動するだけです。
よくある質問
全てがそうではないが、ほとんどの場合。依存関係として宣言されたMODは、これがないとロードされない。ごく一部の小規模で独立したMODはこれをスキップするものの、インストールするのが安全なデフォルトであり、2つ目のMODを追加すると、おそらく必要になるだろう.
公式のFabric配布チャネルと主要なMODホストから。唯一重要なルールは、使用しているMinecraftのバージョンが正確に記載されたビルドをダウンロードすることです。1.21のJARファイルは、1.20のゲームを救うことはできません.
意図的に。ローダーは意図的に小さく保たれており、Minecraftの新しいバージョンに素早く移植できるように設計されています。より大きなAPIは独自のスケジュールで進みます。これらを分割することで、頻繁に更新される部分が、最初に更新が必要な部分を遅らせるのを防ぎます.
通常、起動時にクラッシュが発生し、ログにはクラスが見つからない、またはメソッドが見つからないというエラーがよく記録されています。 解決策は、通常、不整合なjarファイルを削除し、Minecraftのバージョンに合ったAPIビルドを配置することです.
ローダー、API、およびMODがすべて整理済み。バージョン不整合の心配もありません。