Skip to content
This repository was archived by the owner on Sep 5, 2024. It is now read-only.

Config Conditions

Corgi Taco edited this page May 5, 2022 · 31 revisions

This page will cover the available conditions that come shipped with Mobifier by default

Attribute Condition

  • The attribute condition lets you check a mob's current attributes such as HP or attack damage with a double comparator.
  • This requires all listed checks to pass.
  "conditions_to_apply": [
    {
      "attribute_is": {
        "minecraft:generic.max_health": ">=5"
      },
      "type": "mobifier:attribute"
    }
  ]

Baby Condition

  • Lets you check whether or not the entity is a baby.
  "conditions_to_apply": [
    {
      "type": "mobifier:is_baby"
    }
  ]

Biome Category Condition (1.16 only, replaced by Biome Tag Condition in 1.18+)

  • This condition checks whether or not the biome a mob is in is within the given biome category. The following biome categories are acceptable arguments: none, taiga, extreme_hills, jungle, mesa, plains, savanna, icy, the_end, beach, forest, ocean, desert, river, swamp, mushroom, nether, underground (1.17+).
  • Requires the mob to be in one of these biome categories to pass.
  "conditions_to_apply": [
    {
      "biome_category_is": [
        "icy"
      ],
      "type": "mobifier:biome_category"
    }
  ]

Biome Tag Condition(1.18+ only)

  • This condition checks whether or not the biome a mob is in is within the given biome tag.
  • Requires the mob to be in one of these biome tags to pass.
        "conditions_to_apply": [
          {
            "biome_tag_is": [
              "minecraft:has_structure/desert_pyramid"
            ],
            "type": "mobifier:biome_tag"
          }
        ],

Blocks Are Condition

  • This condition checks whether or not block(s) are at an offset position from the entity.
  "conditions_to_apply": [
    {
      "has": [
        {
          "is": [
            "minecraft:snow_block"
          ],
          "offset": [
            0,
            -1,
            0
          ]
        }
      ],
      "type": "mobifier:blocks_are"
    }
  ]

Blockstates Are Condition

  • This condition checks whether or not blockstate(s) are at an offset position from the entity.
  "conditions_to_apply": [
    {
      "has": [
        {
          "is": [
            {
              "Name": "minecraft:oak_sapling",
              "Properties": {
                "stage": "0"
              }
            }
          ],
          "offset": [
            0,
            -1,
            0
          ]
        }
      ],
      "type": "mobifier:blockstates_are"
    }
  ]

Chance Condition

  • Lets you argue a percentage chance of this condition passing based off the world's random.
  • Only works if the mob is dying.
  "conditions_to_apply": [
    {
      "chance": 0.5,
      "type": "mobifier:chance"
    }
  ]

Difficulty Condition

  • Let's you argue whether or not the world difficulty will let this condition pass.
  "conditions_to_apply": [
    {
      "difficulty_is": {
        "PEACEFUL": false,
        "EASY": true,
        "NORMAL": true,
        "HARD": true
      },
      "type": "mobifier:difficulty"
    }
  ]

Every Amount of Days Condition

  • Specify every amount of days that this condition will work. I.e: This condition only works on every 5th day(Day 5, 10, 15, 20, 25...)
  • offset & day_length fields are optional.
  • offset is a shift in days. I.e: offset=2 would mean that if you specified the condition passes every 5 days, the condition would pass on the world's day 7, 13, 18, 23...
  • amount_of_days allows you to specify multiple values. I.e: If you specify "amount_of_days": [5, 7] the condition will pass every 5th & 7th day.
  "conditions_to_apply": [
    {
      "amount_of_days": [
        5, 
        7
      ],
      "offset": 3,
      "day_length": 24000
      "type": "mobifier:every_amount_of_days"
    }
  ]

Has Equipped Condition

  • Let's you check what's in a mob's MAINHAND, OFFHAND, FEET, LEGS, CHEST, or HEAD slots.
  • Each slots uses a list of item stack checks.
  • Requires at least 1 condition in the specified equipment slot(s) to pass.
  "conditions_to_apply": [
    {
      "has_equipped": {
        "MAINHAND": {
          "item": "minecraft:diamond_sword",
          "durability_is": ">500",
          "enchantment_check": {
            "minecraft:sharpness": ">1"
          }
        },
        "OFFHAND": {
          "item": "minecraft:torch",
          "stack_size_is": ">32"
        }
      },
      "type": "mobifier:has_equipped"
    }
  ]

In Dimension Condition

  • Requires the mob to be in any of the specified dimensions to pass.
  "conditions_to_apply": [
    {
      "dimension_is": [
        "minecraft:overworld",
        "minecraft:end"
      ],
      "type": "mobifier:dimension"
    }
  ]

Inside Structure Condition(1.16 only, replaced by Inside Configured Structure Tag Condition)

  • Checks whether or not a mob is inside a structure(or a structure piece if in_piece is true) by checking the mob's position against the structure's bounding box.
  • in_piece field is optional.
  • Multiple structures may be specified, 1 is only required to pass.
  "conditions_to_apply": [
    {
      "structure_is": [
        "minecraft:desert_pyramid"
      ],
      "in_piece": true,
      "type": "mobifier:inside_structure"
    }
  ]

Inside Configured Structure Tag Condition(1.18+ only)

  • Checks whether or not a mob is inside a configured structure(or a configured structure's piece if in_piece is true) specified in this tag by checking the mob's position against the configured structure's bounding box.
  • in_piece field is optional.
  • Multiple configured structure tags may be specified, 1 is only required to pass.
  "conditions_to_apply": [
    {
      "structure_tag_is": [
        "minecraft:on_treasure_maps"
      ],
      "in_piece": true,
      "type": "mobifier:inside_structure"
    }
  ]

Is Dead Or Dying Condition

  • Checks if the mob is dead or dying.
  • This condition has no fields.
  "conditions_to_apply": [
    {
      "type": "mobifier:is_dead_or_dying"
    }
  ]

Last Injurer By Type Has Condition

  • Checks the last mob to injure this mob's argued conditions by mob type.
  "conditions_to_apply": [
    {
      "conditions_to_apply": {
        "minecraft:zombie": [
          {
            "attribute_is": {
              "minecraft:generic.max_health": ">=5"
            },
            "type": "mobifier:attribute"
          }
        ]
      },
      "type": "mobifier:last_injurer_by_type_has"
    }
  ]

Last Injurer Has

  • Checks the last mob to injure this mob's argued conditions regardless of mob type.
  "conditions_to_apply": [
    {
      "conditions_to_apply": [
        {
          "attribute_is": {
            "minecraft:generic.max_health": ">=5"
          },
          "type": "mobifier:attribute"
        }
      ],
      "type": "mobifier:last_injurer_has"
    }
  ]

Lunar Phase Condition

  • Checks whether the current lunar phase is valid.
  "conditions_to_apply": [
    {
      "is_valid_moon_phase": [
        1,
        3,
        5
      ],
      "type": "mobifier:lunar_phase"
    }
  ]

Mobifiers Passed Condition

  • Uses a double comparator against the number of previous mobifier(s) that have passed to determine whether or not this mobifier will pass.
  • Is entirely useless if used in the first mobifier.
  "conditions_to_apply": [
    {
      "mobifiers_passed_comparator": ">=1",
      "type": "mobifier:mobifiers_passed"
    }
  ]

Player Inventory Condition

  • Only works if the mob being checked against is a player entity
  • Uses item stack checks.
  • Requires all listed item stack checks to pass.
  "conditions_to_apply": [
    {
      "has": [
        {
          "item": "minecraft:diamond_sword",
          "durability_is": ">500",
          "enchantment_check": {
            "minecraft:sharpness": ">1"
          }
        },
        {
          "item": "minecraft:diamond_pickaxe",
          "durability_is": ">1000",
          "enchantment_check": {
            "minecraft:unbreaking": ">2"
          }
        }
      ],
      "type": "mobifier:player_inventory_has"
    }
  ]

Precipitation At Condition

  • Checks the precipitation at the player's position.
  • The offset field is an offset from the mob's position. This is an optional field.
  • snow determines whether it should be snowing at the precipitating position. This field is optional and set to false by default.
  "conditions_to_apply": [
    {
      "offset": [
        0,
        1,
        0
      ],
      "snow": true,
      "type": "mobifier:precipitation_at"
    }
  ]

See Sky At Condition

  • Checks whether or not the sky can be seen at the mob's position(can be offset with an optional offset field).
  • offset is an optional field.
  "conditions_to_apply": [
    {
      "offset": [
        0,
        1,
        0
      ],
      "type": "mobifier:see_sky_at"
    }
  ]

Time of Day Condition

  • Checks the local day time between the specified time pairs. Several time ranges may be argued, only one is required to pass.
  • day_length is an optional field.
  "conditions_to_apply": [
    {
      "times_of_day": [
        {
          "min_time": 10000,
          "max_time": 12000
        },
        {
          "min_time": 23000,
          "max_time": 24000
        },
        {
          "min_time": 0,
          "max_time": 2500
        }
      ],
      "type": "mobifier:time_of_day"
    }
  ]

Y Range Condition

  • Checks whether or not the mob is in the specified Y Range(s) at the mob's position(can be offset with an optional offset field).
  "conditions_to_apply": [
    {
      "y_range_is": [
        {
          "min_y": "0",
          "max_y": "10"
        },
        {
          "min_y": "246",
          "max_y": "256"
        }
      ],
      "type": "mobifier:y_range"
    }
  ]