LibJF — MinecraftにおけるサードパーティMODをサポートするための技術的なライブラリMODとコア
LibJFはMinecraftで様々なMODを実行するために必要な技術的ライブラリMODです。その機能と設定について解説します。
LibJFはMinecraftで様々なMODを実行するために必要な技術的ライブラリMODです。その機能と設定について解説します。
LibJF — MinecraftにおけるサードパーティMODをサポートするための技術的なライブラリMODとコア
テストされ、記事が書かれたMinecraftのバージョン: 26.1.2
サポートされているバージョンの範囲: 1.16.5 – 26.1.2
依存関係: Fabric API (Fabricビルド用)
LibJFは、作者JFronnyによるモジュール式ライブラリであり、彼自身のMODのための共有コンポーネントのセットを含んでいます。プレイヤーのPC上では、このMODは通常単独でインストールされることはなく、必須の前提MODとして機能します。これがなければ、対応するMODは起動しません。LibJFは、レシピ、モブ、新しいブロックをMinecraftに追加しません。その役割は異なります。設定のフォーマット、翻訳システム、ローカルHTTPサーバー、2つのユーティリティタグといった反復的な機能を別プロジェクトに抽出し、同じ開発者の異なるMOD間で再利用することです。
MODパックにおける目的
ライブラリは別々のモジュールに分かれており、それぞれが独自のタスクを担当しています。設定ファイルのフォーマットとそのゲーム内メニュー、アイテムタグ、翻訳、ネットワークコンポーネントなどです。LibJFに依存するMODは、実際に使用するモジュールのみを読み込みます。そのため、ゲームの初回起動後、config/フォルダには1つのファイルではなく、アクティブなモジュールごとに1つずつ、複数のファイルが生成されます。
プレイヤーがすぐに気付く基本的な効果の1つは、設定の自動再読み込みです。watchForChangesパラメータはデフォルトで有効になっています。LibJFを通じて動作する設定ファイルを変更した場合、ゲームを再起動することなく変更が適用されます。
アイテムと防具の共通タグ
LibJFは、他のMODとバニラのデータパックの両方で利用可能な2つのタグを追加します。
タグ | 動作 |
| エンティティがこのタグを持つ防具アイテムを4つ以上同時に装備している場合、ダメージに対して無敵になります。 |
| このタグを持つアイテムは、シュルカーボックスに入れることができません。このタグは、バックパック系のMODアイテムが互いの中に入れられるのを防ぐことを目的としています。 |
タグ自体は空であり、データパックやサードパーティのMODによって内容が追加されます。例えば、サバイバルで完全な革の防具セットを「無敵」にするには、minecraft:leather_helmet、minecraft:leather_chestplate、minecraft:leather_leggingsおよびminecraft:leather_bootsをlibjf:overpoweredタグファイルに追加する小さなデータパックを作成するだけで十分です。
翻訳サブシステム
libjf-translate-v1モジュールは、開発者の他のMODに文字列翻訳サービスへのアクセスを提供します。ライブラリ自体はチャットやインターフェース内の何も翻訳しません。消費するMODが呼び出した場合に、リクエストがどの外部サービスを経由するかを決定するだけです。4つのプロバイダーオプションがサポートされています。
Google — 公開されているGoogle翻訳インターフェース (デフォルト値)。
DeepLX — DeepL APIのオープン実装。
LibreTranslate — セルフホスト型のオープンソースソリューション。インスタンスのアドレスを個別に指定する必要があります。
Noop — 入力テキストを変更せずに返すスタブ。テスト用や、翻訳を完全に無効にするために便利です。
別のthrottleMillisパラメータは、サービス呼び出し間の最小一時停止時間を設定します。この制限は、消費するMODからの頻繁なリクエストによって無料APIから一時的なBANを受けるのを防ぐために必要です。
ローカルWebサーバー
libjf-web-v1モジュールは、ゲーム内で小規模なHTTPサーバーを起動します。これは、クライアントに通常のネットワークパケット以上のもの(静的ページやプレビューファイルなど)を提供する必要がある場合に、作者の他のMODによって使用されます。標準的なプレイヤーの環境では、このモジュールは通常沈黙しています。ポートはローカル(127.0.0.1)でのみ開かれ、ファイル共有は無効になっています。
プライベートサーバーの管理者は、個別の設定パラメータを通じて、config/wwwrootフォルダからの任意のファイルのファイル共有を静的リソースとして有効にすることができます。これはオプションの機能であり、デフォルトでは有効になっていません。
serverIpを変更したり、enableFileHostを有効にしたりする前に、対応するポートがファイアウォールで実際に開かれており、(必要に応じて)NATを通じてポートフォワーディングされていることを確認してください。そうしないと、クライアントはサーバーへのアクセス試行時に接続エラーに遭遇します。
結論
LibJFは、MODパックに同じ開発者によるMOD、またはlibjf:overpoweredやlibjf:shulker_boxes_illegalタグを使用するデータパックが含まれている場合に必要となる前提ライブラリです。このクラスの他のライブラリと比較して、モジュール式のアーキテクチャを持ち、ほとんどの補助ライブラリが提供していないローカルHTTPサーバーと翻訳レイヤーを備えている点で際立っています。通常のバニラ環境のMinecraft Java EditionのMODパックでは、LibJFをインストールする意味はありませんが、JFronnyのMODが含まれるMODパックにとっては必須のコンポーネントです。
インストール
通常のインストールは約 5 分で完了します。手順は同じで、ローダーと対応するビルドだけが異なります。
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











