Witch Mo Arsenal

This mod add settings to witch. What potions she throws at the player, what potions she drinks, what potions she throws at the entity, can she drink milk if she has a debuff, etc. Everything has a config

WitchMoArsenal

WitchMoArsenal makes witches more flexible, dangerous, and configurable. Instead of being locked to the vanilla potion set, witches can use the potions and effects you define in a JSON config.

The mod is server-side in spirit: it changes witch behavior and does not add new blocks, items, or screens.

Features

  • Replace or extend the vanilla witch potion list.
  • Configure splash potions thrown at enemies.
  • Configure potions witches drink on themselves.
  • Let witches drink milk to clear effects.
  • Optional support behavior: witches can throw potions at nearby mobs.
  • Supports both potion ids and effect ids.
  • Custom effect potions are tinted with the effect color instead of using the default purple color.
  • Config reloads when a world/server starts.

Examples

Make witches throw levitation:

{
  "potion": "minecraft:levitation",
  "weight": 1,
  "condition": "always",
  "duration": 200,
  "amplifier": 0
}

Make witches buff creepers with speed for 20 seconds:

{
  "potion": "minecraft:swiftness",
  "weight": 2,
  "condition": "ally_type:minecraft:creeper",
  "duration": 400
}

Make witches heal undead allies with harming when they are low:

{
  "potion": "minecraft:harming",
  "weight": 4,
  "condition": "ally_undead_health_below_half"
}

Config

The config file is created after the first launch:

config/witchmoarsenal.json

Main sections:

  • replaceVanilla: use only configured potions or mix them with vanilla behavior.
  • splashPotions: potions thrown at enemy targets.
  • drinkPotions: potions witches drink on themselves.
  • milk: milk-drinking behavior.
  • supportThrows: optional potions thrown at other mobs.

Potion Entries

Potion entries are used in splashPotions, drinkPotions, and supportThrows.potions.

Fields:

  • potion: potion id or effect id, for example minecraft:harming or minecraft:levitation.
  • weight: random selection weight. Higher means more common.
  • condition: when the entry can be used.
  • duration: optional duration override in ticks. 20 ticks = 1 second.
  • amplifier: optional amplifier override. 0 = level I, 1 = level II.
  • ambient: optional effect flag.
  • showParticles: optional effect flag.
  • showIcon: optional effect flag.

If potion is a normal potion id, the vanilla potion data is used. If duration or amplifier is set, WitchMoArsenal converts it into a custom potion effect with the configured values.

If potion is an effect id, WitchMoArsenal creates a custom potion effect and colors the potion from the effect color.

Conditions

General target conditions:

  • always
  • target_far
  • target_close
  • target_health_above_half
  • target_health_below_half
  • target_missing_effect

Self-use conditions:

  • self_health_below_half
  • self_on_fire
  • self_underwater
  • self_missing_effect

Support conditions:

  • ally_health_below_half
  • ally_health_above_half
  • ally_missing_effect
  • ally_undead_health_below_half
  • ally_type:<entity_id>

Examples:

  • ally_type:minecraft:creeper
  • ally_type:minecraft:skeleton
  • ally_type:minecraft:zombie

Witches will not throw an effect at a target that already has that effect.

Support Throws

Support throws are disabled by default. Enable them in the config:

"supportThrows": {
  "enabled": true,
  "cooldownTicks": 80,
  "range": 12.0,
  "throwRange": 8.0,
  "approachSpeed": 1.0,
  "requireLineOfSight": true,
  "onlyHostileMobs": true,
  "potions": []
}

Behavior notes:

  • Witches only support other mobs when they are not currently attacking a target.
  • If the support target is too far away, the witch walks toward it first.
  • If requireLineOfSight is enabled, witches will not throw through blocks.
  • Before throwing, the witch stops and turns toward the target.
  • Other witches are ignored as support targets.

Milk

Milk behavior is enabled by default:

"milk": {
  "enabled": true,
  "cooldownTicks": 200,
  "drinkingTicks": 32,
  "condition": "self_has_effects"
}

Milk conditions:

  • always
  • self_has_effects
  • self_has_harmful_effects

Requirements

  • Fabric API

License

MIT

The Witch Mo Arsenal Team

profile avatar
Owner
  • 1
    Projects
  • 4
    Downloads