So I know that the amount of HP you receive from a HP draining attack (drain punch, mega drain) is based on the amount of damage inflicted on the opponent's Pokemon, but you never receive the same amount of HP as the opposition had lost. Is there some sort of formula that calculates how much you receive, or percentage? I'm just curious.
You always recover half of the HP the opponent lost.