Adds parry mechanics and allows blocking with items other than shield
- to add item to the pool:
data/frycparry/tags/item/items_can_parry.json - to exclude item from the pool (excluding has priority over including):
data/frycparry/tags/item/parrying_excluded_items.json
(remember that some directories changed with 1.21, for example items is now item)
data/frycparry/tags/entity_type/disarm_resistant_mobs.json
If existing parry attributes don't satisfy you, in data/frycparry/parry_attributes/ create json file containing:
{
"parryTicks": 0,
"meleeDamageTakenAfterBlock": 0.0,
"projectileDamageTakenAfterBlock": 0.0,
"explosionDamageTakenAfterBlock": 0.0,
"cooldownAfterParryAction": 0.0,
"cooldownAfterInterruptingBlockAction": 0.0,
"cooldownAfterAttack": 0.0,
"maxUseTime": 0,
"blockDelay": 0,
"explosionBlockDelay": 0,
"shouldStopUsingItemAfterBlockOrParry": true,
"knockbackAfterParryAction": 0.0,
"parryEffects": [
{
"statusEffect": "MOD_ID:STATUS_EFFECT",
"duration": 0,
"amplifier": 1,
"chance": 0.0,
"enchantmentMultiplier": 0.0
}
]
}Change the values to meet your needs. Name of your file will be used to access them.
In data/frycparry/parry_items/ create json file containing:
{
"parryAttributes": "NAME_OF_PARRY_ATTRIBUTES_FILE_WITHOUT_EXTENSION",
"items": [
"some_mod_id:some_item",
"some_mod_id:another_item"
]
}parryAttributes is name of file from data/frycparry/parry_attributes/ WITHOUT .json
Inside items add items for which selected parry attributes will be applied
Example:
{
"parryAttributes": "my_parry_attributes",
"items": [
"minecraft:diamond_sword",
"minecraft:diamond_pickaxe",
"minecraft:stick",
"minecraft:dirt"
]
}Note:
- modifying parry attributes for items that can't parry by default (dirt and stick in example above) doesn't enable parrying for these items (you need to enable them with tag)
explosionDamageTakenAfterBlockdoesn't do anything unlessexplosionBlockDelayis above -1- for all cooldown fields: if value is below 0, cooldown is based on attack speed and the value is multiplier (-2 means
valueBasedOnAttackSpeed x 2) - parry ticks are checked AFTER block delay
- negative block delay increases parry ticks
- if
explosionBlockDelayis below 0, item can't block explosions blockDelayis still taken into account when blocking explosionsexplosionBlockDelayis amount of ticks item must be held for to successfully block explosion (successfully means, the damage from explosion will be multiplied byexplosionDamageTakenAfterBlock)- holding block for more ticks than
blockDelay, but less thanexplosionBlockDelaywill reduce protection from explosions by 80% (explosion will be blocked, but you will take MUCH more damage than specified inexplosionDamageTakenAfterBlock) - setting amplifier of parry effect to a value lower than 1 will prevent parry enchantment from increasing amplifier of that effect (negative amplifiers are corrected AFTER increasing them with parry enchantment)