プロジェクト
Mod は壊れない
Crafting の Mod は、Minecraft が更新されても、Crafting が更新されても動き続けなければなりません。このページでは、何が保証されているか、その恩恵を受けるために何をすればよいかを説明します。
保証されるもの
Kotlin と Java の API で公開されているすべてのもの、そして CraftScript のすべてのキーワード、組み込み関数、イベント名です。Crafting の内部(Mod の読み込み方、ゲームへのフックの仕方)はどのバージョンでも変わる可能性がありますが、Mod からは見えず、必要もありません。
ゲームの更新で壊れない理由
Mod は Minecraft のコードに一切触れません。新しいゲームバージョンで何かが移動したり名前が変わったりすると、Crafting は内部で、各 API 関数がゲームのどの部分を呼ぶかを変更します。Mod が使う関数は同じ名前のまま、同じことをします。
現在 Crafting は Minecraft Java 26.3 で動作します。新しいゲームバージョンは完全な形で追加されます。API 関数がそのバージョンで動くか、そのバージョンがサポート対象外とみなされるかのどちらかです。
4 つのルール
- 変更ではなく追加。新しい引数にはデフォルト値があるので、既存の呼び出しはそのまま有効です。新しい振る舞いには新しい名前が付きます。
- 置き換えには警告が付く。より良い方法ができたとき、古い方法は非推奨としてマークされ、代わりに何を使うべきかを示し、少なくとも次のメジャーバージョンまではまったく同じように動き続けます。エディターでは取り消し線で表示されます。
- 削除はメジャーバージョンでのみ、つまり Crafting のバージョンの最初の数字が変わるときだけです。リリースノートで、各項目の代替とともに告知されます。
- ごまかさない。実行中のゲームで関数が動かない場合は、明確なエラーを返します。すべてうまくいったと Mod に思わせるような、でっち上げの値を返すことはありません。
あなたにとっての意味
- Crafting を更新しても、Mod の変更を強いられることはありません。例外はメジャーバージョンで、そのときは何を変えればよいかが正確にわかります。
- 使っているものが非推奨になっても、時間があります。次のメジャーバージョンまでの都合のよいときに変更してください。ドキュメントは常に現在の方法を示します。
- お使いの Crafting のバージョンにまだないものを Mod が必要とする場合、Crafting は中途半端に読み込むのではなく、読み込み時にそう伝えます。
- Kotlin や Java の Mod で
net.minecraftのクラスをインポートしないでください。その部分には何の保証もありません。 - ゲームのデータを使った
run_commandやsummonは避けてください。これらは Minecraft の形式を受け付けますが、その形式は変わります。何かのために必要なら、API に関数が足りないということです。リクエストしてください。
何かが失敗したら
- イベントやコマンドのエラーは Mod の名前とともにログに記録され、サーバーの他の部分は動き続けます。
- 型エラーのあるスクリプトは読み込まれず、メッセージにファイル、行、期待していたものが示されます。
- 依存関係が足りない、またはより新しい Crafting のバージョンが必要な
.jarの Mod は読み込まれず、Crafting はすべての問題をまとめて、それぞれの対処法とともに報告します。