1 Morph JSON Instinct Hunting and Feeding
AttODao edited this page 2026-08-13 18:37:39 +09:00

Morph JSON: instinctの狩猟・採食設定

instinct.huntingは獲物の追跡・攻撃・捕食を、instinct.feedingはブロックを使う採食を定義します。これらはdiet.foodsによる手持ちアイテムの摂食とは別系統です。

hunting

キー 範囲 内容
eat_duration_ticks integer 0..1200 撃破後、栄養取得までの食事時間
attack_cooldown_ticks integer 1..1200 本能攻撃の間隔
post_kill_cooldown_ticks integer 0..12000 捕食完了後の狩猟休止時間
pursuit_timeout_ticks integer 20..12000 1体を追跡し続ける上限時間
abandoned_hunt_cooldown_ticks integer 0..12000 追跡断念後の狩猟休止時間
feline_sprint_start_distance number 0..128 ネコ型が追跡ダッシュへ移る距離
prey object[] - 獲物セレクターと捕食栄養値

prey要素の形式:

{
  "selector": "minecraft:rabbit",
  "nutrition": 4
}

selectorはEntity Type ID、または#example:small_preyのようなEntity Typeタグです。nutrition0..100へ制限されます。空文字やオブジェクトでない配列要素は無視されます。

同じ対象へ複数のタグが一致した場合は最大の栄養値を使います。直接IDが一致した場合は配列内で最初の直接一致を優先します。同種は獲物にならず、カメだけは子供個体に限って有効です。

prey: []は狩猟を無効にします。配列はデータパック間で追加マージされず、上位パックの配列へ丸ごと置換されます。

feeding

eat_blockraid_gardenは同じ構造です。

キー 範囲 内容
enabled boolean - 行動を有効化
nutrition integer 0..100 完了時の満腹度回復量
cooldown_ticks integer 0..12000 完了後の再実行待ち時間
  • eat_blockはヒツジ型の草採食処理です。
  • raid_gardenはウサギ型が成熟ニンジンを探し、成長段階を1下げる処理です。
  • JSONで他形態に有効化しても、必要な形態AIや特性がなければ同じ動作を保証しません。

{
  "instinct": {
    "senses": {
      "prey_range": 40
    },
    "hunting": {
      "pursuit_timeout_ticks": 300,
      "prey": [
        { "selector": "minecraft:chicken", "nutrition": 4 },
        { "selector": "#example:small_prey", "nutrition": 3 }
      ]
    },
    "feeding": {
      "raid_garden": {
        "enabled": true,
        "nutrition": 3,
        "cooldown_ticks": 100
      }
    }
  }
}

優先順位、クールダウン保存、ドロップ抑止は本能AIの行動を参照してください。