🔄 バージョン互換性とサポートライフサイクル
このページでは、Agrarian Reformのバージョン互換性マトリクス、将来互換方針、および前提MODの管理規則を記載しています。
📌 ソースコードに関する免責事項:本Wikiの内容はリポジトリの最新ソースコード状態を反映しており、CurseForgeやModrinthで未リリースの開発中機能を含む場合があります。
📊 Minecraft バージョン互換性マトリクス
| Minecraftバージョン | MODビルド | ステータス | Java環境 | Fabric Loader | 前提バージョン制約 |
|---|---|---|---|---|---|
| Minecraft 26.3 | 2.2.18+26.3 | 最新主流(スナップショット6+) | Java 25 | >=0.16.9 | "minecraft": ">=26.3-" |
| Minecraft 26.2 | 2.2.18+26.2 | 最新主流(安定版) | Java 25 | >=0.16.9 | "minecraft": ">=26.2-" |
| Minecraft 26.1.2 | 1.2.7+R-26.1.2 | アーカイブ版 | Java 25 | >=0.15.0 | "minecraft": ">=26.1.2" |
🛡️ 1 Jar 1 Version ポリシーとオープンエンド境界
Agrarian Reform は、厳格な 1 Jar 1 Version ポリシー と 前方互換性規約 に従います:
- 対象バージョン専用ビルド: コンパイルされた各 JAR は特定の Minecraft リリース向けに個別にビルド・テスト・アーカイブされます (
agrarian-reform-2.2.18+26.2.jarおよびagrarian-reform-2.2.18+26.3.jar)。 - オープンエンドな下限定義:
fabric.mod.jsonにおいて、Minecraft のバージョン指定はオープンエンド形式を採用しています:json26.3 向け:"minecraft": ">=26.2-"jsonこれによりマイナーパッチ更新時の Fabric Loader の誤ロックを防ぎます。"minecraft": ">=26.3-" - ライブラリ依存ワイルドカード:
dasik-libraryなどの前提 Mod にはワイルドカード ("*") を指定し、パッチ更新時の誤クラッシュを防止します。
🔄 現代的アーキテクチャと SavedData Codec
- アニュアルドロップ命名規則: Minecraft は
Year.Drop.Patch形式に移行しました。バージョン 26.2 および 26.3 は現在のアクティブなドロップです。 - 非難読化ランタイム: 26.x は Mojang 公式マッピング上で動作し、旧式の Yarn マッピング用語は完全に廃止されています。
- SavedData の近代化: ワールド保存データには直接的な NBT 処理に代わり、明示的な Codec を備えた Mojang
SavedDataTypeレコードが使用されます:
java
public static final SavedDataType<ContinuumData> TYPE = new SavedDataType<>(
Identifier.fromNamespaceAndPath("agrarian_reform", "continuum"),
ContinuumData::create,
Codec.unboundedMap(Codec.STRING, Codec.LONG).xmap(
map -> {
ContinuumData data = new ContinuumData();
map.forEach((k, v) -> data.timestamps.put(Long.parseLong(k), v));
return data;
},
data -> {
Map<String, Long> map = new HashMap<>();
data.timestamps.forEach((k, v) -> map.put(k.toString(), v));
return map;
}
),
DataFixTypes.SAVED_DATA_MAP_DATA
);関連ページ:Minecraft 26.2 & 26.3 ガイド および API とアドオン統合。
