Jump to content

Fix for RESIST_CRITICAL & RESIST_PENETRATE on skills


Recommended Posts

  • Premium
Posted (edited)

In char_battle.cpp file

In the function:

bool CHARACTER::Damage(...)

In the skills statement:

if (type == DAMAGE_TYPE_MELEE || type == DAMAGE_TYPE_RANGE || type == DAMAGE_TYPE_MAGIC)

 

These boys

iCriticalPct -= GetPoint(POINT_RESIST_CRITICAL);

iPenetratePct -= GetPoint(POINT_RESIST_PENETRATE);

are getting calculated after the Korean nerf used for skills (If you have 100% critical, your skills won't be always critical like normal hits).

Using a determinated amount of resistance in the gameplay you can lead the real bonus to reach 0%, so no critical skills in PvP (Mob doesn't have the bonus by default).

To fix the problem you should just move the resist calculation after the critical check >0.

 

Eg:

if (iCriticalPct)
{
  iCriticalPct -= GetPoint(POINT_RESIST_CRITICAL);

  // OLD YMIR CALCULATION
  if (iCriticalPct >= 10)
    iCriticalPct = 5 + (iCriticalPct - 10) / 4;
  else
    iCriticalPct /= 2;

  if (number(1, 100) <= iCriticalPct)
    ....
}
Edited by WeedHex
  • Good 1
  • Love 2
Link to comment
Share on other sites

×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.