目次
| バージョン | pack_format |
|---|---|
| 1.20.4(基準) | 26 |
| 1.20.5–1.20.6 | 41 |
| 1.21–1.21.1 | 48 |
| 1.21.2–1.21.3 | 57 |
| 1.21.4 | 61 |
| 1.21.5 | 71 |
| 1.21.6 | 80 |
| 1.21.7–1.21.8 | 81 |
| 1.21.9–1.21.10 | 88.0 |
| 1.21.11 | 94.1 |
| 26.1–26.1.2 | 101.1 |
| 26.2(最新) | 107.1 |
▶
1.21
フォルダ・コマンド構文の一斉変更
最重要
データ格納フォルダが複数形 → 単数形に変更
これに対応しないとパックが読み込まれません。tagsのみ複数形のまま。
| 旧 | 新 |
|---|---|
functions | function |
advancements | advancement |
recipes | recipe |
loot_tables | loot_table |
predicates | predicate |
item_modifiers | item_modifier |
structures | structure |
tags/functions | tags/function |
tags/items | tags/item |
tags/blocks | tags/block |
/attribute modifier 構文の変更
UUID+名前の組から、名前空間付きIDひとつに統一されました。
旧: attribute @s minecraft:generic.max_health modifier add <uuid> <name> 2 add_value新: attribute @s minecraft:generic.max_health modifier add mypack:bonus 2 add_value
エンティティ Attributes NBTの丸ごと再設計
camelCase→snake_case、operationが数値→文字列。generic. player. zombie. プレフィックスも廃止。
旧: {Attributes:[{Name:"generic.scale",Base:2,Modifiers:[{UUID:[I;1,0,0,0],Name:"example",Amount:1,Operation:0}]}]}新: {attributes:[{id:"scale",base:2,modifiers:[{id:"tutorial:example",amount:1,operation:"add_value"}]}]}
その他の主な変更
- 矢NBT:
power→acceleration_power、ShotFromCrossbow廃止(weaponフィールドで判定) - ボートが木材ごとのエンティティタイプに分割(
Type=oak→minecraft:oak_boat) - ロストテーブル述語:
killer→attacker、killer_player→attacking_player random_chance_with_looting→random_chance_with_enchanted_bonus(フィールド構成も変更)enchantment述語 →enchantments(単体/リスト/タグ対応)- コンテナロック:
lock="MyKey"→lock={components:{"minecraft:custom_name":"'MyKey'"}} - 実績
killed_by_crossbow→killed_by_arrow
▶
1.21.2
アイテムコンポーネント深化
最重要
foodコンポーネント単体では食べられなくなった
foodは栄養値データの保持のみになり、「食べる」機能自体は新設のconsumable={}を別途付けないと動作しません。既存パックで最も見落としやすい変更です。
旧: minecraft:food={nutrition:4,saturation:1.2} だけで食べられた新: minecraft:food={...} に加えて minecraft:consumable={} が必須
その他の変更
fire_resistant→damage_resistant(対象タイプをtypesフィールドで指定)/lootコマンドが、ロストテーブルを持たないブロックからのドロップでエラーを出すように- 羊(sheep)のロストテーブルが色別から単一テーブル+サブテーブルへ統合
▶
1.21.4〜1.21.5
アイテム・エンティティNBTの大規模再編
最重要
テキストコンポーネントがJSON文字列 → SNBT表記に変更
tellrawやカスタム名などで、ダブルクォートJSON文字列表記のままだとエラーになります。
旧: tellraw @s {"text":"Hello world"}新: tellraw @s {text:'Hello world'}
モブ・防具立ての装備データが equipment に統合
ArmorItems HandItems body_armor_item 等がすべて統合。ドロップ確率もdrop_chancesに統合。将来的にプレイヤーにも適用予定。
equipment:{chest:{id:'minecraft:diamond_chestplate'}}
drop_chances:{chest:0.1,feet:1.0}
コンポーネント記法の簡略化
- エンチャント:
enchantments={levels:{sharpness:2}}→enchantments={sharpness:2} can_place_on/can_breakがトップレベルへインライン化dyed_color={rgb:12345}→dyed_color=12345- サドル:
horse.saddle→saddle(equipment.saddleに統一) - リスポーン座標系フィールドがすべて
respawnにネスト equippableコンポーネント:model→asset_id- かまど系ブロックエンティティがsnake_caseへ(
CookTime→cooking_time_spent等)
▶
1.21.6〜1.21.8
JSON解析の厳格化
重要
すべてのJSONファイルが strict mode で解析されるように
末尾カンマや軽微な構文の乱れがあると、これまで許容されていても急にエラーになります。エディタの自動整形などで紛れ込んだミスに要注意。
その他
- サウンドイベント
block.sand.wind→block.dry_grass.ambient - アイテムがGUI規定サイズより大きく描画される場合エラーに(
oversized_in_guiで対応) area_effect_cloudのParticle→custom_particle
▶
1.21.9〜1.21.11
ゲームルールが総入れ替え
最重要
すべてのガムルールが minecraft: 名前空間のレジストリ方式に
/gameruleを使うfunctionは旧キー名が使えなくなります。一部は値が反転している点に要注意。
| 旧 | 新 | 備考 |
|---|---|---|
doDaylightCycle | minecraft:advance_time | |
doMobLoot | minecraft:mob_drops | |
doMobSpawning | minecraft:spawn_mobs | |
doWeatherCycle | minecraft:advance_weather | |
disableRaids | minecraft:raids | 真偽値が反転 |
disableElytraMovementCheck | minecraft:elytra_movement_check | 真偽値が反転 |
naturalRegeneration | minecraft:natural_health_regeneration | |
spawnRadius | minecraft:respawn_radius | |
doFireTick 等 | minecraft:fire_spread_radius_around_player | 数値化(-1=無制限, 0=無効) |
その他の重要変更
/worldborderの数値が既定でティック単位に(秒指定は末尾にsが必要)/spawnpoint/setworldspawnはyaw指定時にpitchも必須- pack_formatが
min_format/max_format(major.minor)方式に - アイテム/ブロック
minecraft:chain→minecraft:iron_chain
旧: /worldborder set 620 20 (20秒かけて)新: /worldborder set 620 20s (sを付けないとティック扱い)
▶
26.1
時間システムの根本変更
最重要
/timeコマンドがディメンション単位に
グローバル時間が廃止され、ディメンションごとに独立した時間になりました。昼夜制御functionは要修正。
旧: /time set 1500新: /time set 1500 of minecraft:overworld (オーバーワールド以外にいる場合は明示必須)
/time set day/night/noon/midnightは「次にその時刻が来るまで進める」動作に変更(固定値セットではなくなった)/time query daytime→/time query minecraft:day- ディメンションタイプに
default_clock新設。未指定だとそのディメンションに時間が存在しなくなる
その他
- 看板・バナーの
rotationデフォルトが0→8(従来通りにするには[rotation=0]を明示) - 村人在庫:
villager.*スロット →mob.inventory.* - ワールド生成フィーチャーの多数リネーム(
forest_rock→block_blob等)、必須フィールド追加 - ディメンションタイプに
has_ender_dragon_fightが必須化
▶
26.2
pack_format更新(現行最新・小規模)
軽微
pack_format 107.1
26.1系からの継続的な微調整が中心で、1.21.9以降の min_format/max_format 方式を踏襲。1.20.4パックを最終的に持っていく着地点です。
⚠ 特に見落としやすい"沼"ポイント
- フォルダの複数形→単数形(1.21):これを直さないとパック自体が読み込まれない
- food単体では食べられない(1.21.2):
consumable={}忘れで食べる機能が突然消える - テキストコンポーネントがJSON→SNBT(1.21.5):
tellraw等のダブルクォートJSON文字列がそのままだとエラー - ガムルール名の総入れ替え+一部真偽反転(1.21.11):functionが黙って意味を変える
- /timeがディメンション単位に(26.1):昼夜制御用functionが動かなくなる
- JSON厳格パース化(1.21.6-8):軽微な構文ミスが急にエラーになる