プラットフォーム
Fabric MOD
Codexeで作るFabric MOD。リクエストに書くこと、Minecraftとローダーのバージョン、Gradle/Loomのビルドの仕組み(1.20.1向けはJava 21)、Mixin、よくある問題。
更新日
Fabricは軽量なMODローダーで、たいていMinecraftの新しいバージョンにすぐ対応します。Codexeは、FabricのLoomプラグインを使った完全なGradleプロジェクトを生成します。
#リクエストに書くこと
- Minecraftのバージョン: 「1.20.1向けのFabric」「1.21.1」など。書かなかった場合は1.20.1が使われます。
- MODが追加するもの: ブロック、アイテム、エンティティ、コマンド、キー割り当て、HUDの要素。動作は正確に書いてください。
- クライアントかサーバーか: クライアント専用(HUD、キー割り当て)か、サーバー専用か、両方かを書きます。
- 依存関係: Fabric APIは含まれています。それ以外(Cloth Config、Mod Menuなど)は名前を書いてください。
A Fabric mod for 1.21.1: a "Magnet" item that pulls nearby dropped items to the player within 8 blocks while held in the offhand. Toggle with a keybind (default M). Crafting: iron ingots around a redstone block. English lang file and item model.#Codexeが生成するもの
build.gradle、gradle.properties(Minecraft、Yarn、ローダー、Fabric APIのバージョン)、settings.gradle。- 環境ごとにエントリーポイント(
main、client)を分けたfabric.mod.json。 - 機能に必要な場合は、Mixinの設定とクラス。
- アセット: 言語ファイル、モデル、仮のテクスチャ。
#ビルドの仕組み
- CodexeはLoomの安定版に固定します(古い
-SNAPSHOTバージョンはFabricのリポジトリから消えて、ビルドが壊れるためです)。 - 指定されたローダー、Yarn、Fabric APIのバージョンが存在しない場合、Codexeはそれをそのバージョンに実在するものに置き換えます。
- Gradleを実行するために、LoomにはJava 21のランタイムが必要です。1.20.1向けのMOD(Java 17が対象)の場合、CodexeはGradleをJava 21で実行しますが、MOD自体はJava 17向けにコンパイルされます。JARはJava 17のサーバーで動きます。
MODの最初のビルドは時間がかかります(数分かかることもよくあります)。LoomがMinecraftとマッピングをダウンロードするためです。MODのビルドは10分で停止します。
#検証
MODは準備完了になる前にコンパイルされ、JARにはfabric.mod.json(またはquilt.mod.json)が含まれていなければなりません。コンパイルで証明できるのはビルドできることで、クラッシュせずに動くことではないので、クライアントでテストしてください。
#よくある問題
| 症状 | 考えられる原因 |
|---|---|
| 専用サーバーで、クライアントのクラスに言及してクラッシュする | mainエントリーポイントにクライアント専用のコードがあります。clientエントリーポイントに移すようチャットで頼んでください。 |
| 「Incompatible mods found」、Minecraftのバージョンが違う | MODの対象がゲームとは別のMinecraftのバージョンです。正確なバージョンを書いてください。 |
| 実行時にFabric APIがない | MODと一緒にmods/にFabric APIを入れてください。 |