Hi Ramza, thanks for the response.
To get around the xparam limit issue, would it make sense to create a new param naming for the block and parry chance? It might be outside the scope of the plugin, but based on my experience after trying out various param plugins, that seems to be the approach most custom param plugins take.
Nonetheless, I think I figured out a workaround. Since Block Chance requires a state anyway, I can just have the same state check if the user of the shield has a certain Skill ID and if yes, adds the Block Chance automatically, while for Parry Chance, I believe I can try the same using the plugin's Extra Parry Chance formula.