Groom
Lvl: 5 Heal CD: 3 sec Skill Delay: 1 sec SP: 20

Heal yourself by licking your hair, recovering (Base Lv/50 + 1) x Int x26 HP and removing Poison/Bleed/Burn/Immobilize/Curse/Darkness effects.

Lvl: 4 Heal CD: 3 sec Skill Delay: 1 sec SP: 20
• Heal yourself by licking your hair, recovering (Base Lv/50 + 1) x Int x23 HP and removing Poison/Bleed/Burn/Immobilize/Curse/Darkness effects.
Lvl: 3 Heal CD: 3 sec Skill Delay: 1 sec SP: 20
• Heal yourself by licking your hair, recovering (Base Lv/50 + 1) x Int x20 HP and removing Poison/Bleed/Burn/Immobilize/Curse/Darkness effects.
Lvl: 2 Heal CD: 3 sec Skill Delay: 1 sec SP: 20
• Heal yourself by licking your hair, recovering (Base Lv/50 + 1) x Int x17 HP and removing Poison/Bleed/Burn/Immobilize/Curse/Darkness effects.
Lvl: 1 Heal CD: 3 sec Skill Delay: 1 sec SP: 20
• Heal yourself by licking your hair, recovering (Base Lv/50 + 1) x Int x14 HP and removing Poison/Bleed/Burn/Immobilize/Curse/Darkness effects.

Aesir

• Groom - Recover [Groom]'s healing effect + 5%

Formula

function CommonFun.calcDamage_15301(srcUser, targetUser, params, damageParam, logger)
  local BaseLv = srcUser.BaseLv
  local Int = srcUser:GetProperty("Int")
  local HealEncPer = srcUser:GetProperty("HealEncPer")
  local BeHealEncPer2 = targetUser:GetProperty("BeHealEncPer")
  local damChangePer = damageParam.damChangePer
  local Num = srcUser:GetRunePoint(153033_AESIR_GROOM_S_HEALING_EFFECT_5)
  local A = -1 * math.floor((BaseLv / 50 + 1) * Int * damChangePer * (1 + HealEncPer) * (1 + BeHealEncPer2)) * (1 + Num * 0.05)
  local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
  if skillID == 1630_BLADE_SOUL:RUMBLE then
    local skilllv_1 = srcUser:GetLernedSkillLevel(1621_BLADE_SOUL:GROOM)
    local skilllv_2 = srcUser:GetLernedSkillLevel(1630_BLADE_SOUL:RUMBLE)
    skilllv_2 = math.min(skilllv_2, 5)
    A = -1 * math.floor((BaseLv / 50 + 1) * Int * (skilllv_1 * 3 + 11) * (1 + HealEncPer) * (1 + BeHealEncPer2)) * (1 + skilllv_2 * 0.1) * (1 + Num * 0.05)
  end
  local HealtoDam = targetUser:GetBuffLevel(129100_CURE_BARRIER_:MAX_STACK_0)
  local DamRatio = 1
  if targetUser:HasBuffID(129100_CURE_BARRIER_:MAX_STACK_0) then
    DamRatio = -0.1 * HealtoDam
  end
  local HealReduce = targetUser:GetBuffLevel(136500_10783_:MAX_STACK_0)
  if targetUser:HasBuffID(136500_10783_:MAX_STACK_0) then
    DamRatio = 1 - (0.2 + 0.03 * HealReduce)
  end
  local RateNum = 0
  if srcUser:HasBuffID(90004614_GIANT_FOX_GRASS_1_T5_:MAX_STACK_0) then
    RateNum = 15
  end
  if CommonFun.IsInRate(RateNum, srcUser:GetRandom()) then
    return A * 2 * DamRatio, CommonFun.DamageType.Crit
  else
    return A * DamRatio
  end
end

Self

{
  "id": 123170,
  "BuffName": "Groom (Remove Abnormal Status)",
  "BuffRate": {
    "Odds": 100
  },
  "BuffEffect": {
    "type": "DelStatus",
    "status": [
      1,
      2,
      3,
      9,
      11,
      12
    ],
    "random_num": 6
  }
}

Formula

{
  "CD": 3,
  "id": 1621005,
  "Buff": {
    "self": [
      123170
    ]
  },
  "Cost": 1,
  "Desc": [
    {
      "id": 1621000,
      "params": [
        26
      ]
    }
  ],
  "Icon": "skill_1621001",
  "Camps": "Friend",
  "Level": 5,
  "Logic": "SkillNone",
  "Damage": [
    {
      "type": 15301,
      "damChangePer": 26
    }
  ],
  "DescId": "##170561",
  "NameZh": "##169468",
  "SE_hit": "Skill/Skill_monster_Doram_catDelighted",
  "DamTime": {
    "type": 1,
    "value": 1
  },
  "DelayCD": 1,
  "Fire_EP": 3,
  "Pvp_buff": {
    "self": [
      123170
    ]
  },
  "AttackAct": [
    "use_skill2"
  ],
  "Attack_EP": 1,
  "SkillCost": {
    "sp": 20
  },
  "SkillType": "Heal",
  "Target_EP": 2,
  "E_Attack_On": 1,
  "Logic_Param": {
    "include_self": 1
  },
  "Launch_Range": 0,
  "AutoCondition": [
    {
      "type": 3,
      "value": 70,
      "priority": 1,
      "no_target": 1
    }
  ],
  "NoTargetAutoCast": 1
}