Waterspout and Magic Mirror/Mirror Shield Damage Calcs
Waterspout: Must be cast *after* you get hit, ie you must be slower than the monster hitting you. The damage itself is reflected back 100% as the damage you received in the same way Thorn 1/2 works (Thorn-II reflects back 30% don't know Thorn-I). So if you take 100 damage, you reflect 100 damage back as Water element regardless of the source and it is affected by weather and element modifiers.
Example: I cast Waterspout at Roco in Rain weather, I get hit for 21 damage, when Waterspout attacks I do 21*1.5 (for weather)*2 (for element advantage) for a 63 damage attack.
At +1, 105% of the damage is reflected back. EG I take 14 damage and do 44 damage back in the same scenario as above. 14*1.05 (extra 5%)*1.5 (weather)*2 (element advantage) for a 44.1 rounded down to 44 damage attack.
Magic Mirror/Mirror Shield: I don't yet have it but assuming it works the same, it will reflect back 200% the damage you receive, but must be cast *before* you get hit, ie your monster must be faster than the monster whose attack you are reflecting. If you get hit and lose 50 health, your will reflect back 100 damage*element modifier for up to 200 damage against Ghost.
In all cases you must choose which monster you want to reflect damage back at, and the attack type must be correct for Magic/Mirror Shield.
All are upgradeable and I will eventually upgrade the skill to find out what the new effect will be and update this topic.