Hercules icon indicating copy to clipboard operation
Hercules copied to clipboard

Asura damage should not be affected by Provoke, Curse and INCATKRATE

Open kyeme opened this issue 8 years ago • 6 comments

Provoke, Curse and INCATKRATE (e.g. from Gospel or Tarot Card) do change the Asura damage at all. BATKFOOD and ATKPOTION however do increase Asura damage.

This would indicate that Provoke, Curse and INCATKRATE should not actually be part of the base attack calculation but instead add / substract damage in the damage calculation.

This applies to both pre-re and re.

Credits to @Playtester

kyeme avatar Dec 22 '16 04:12 kyeme

Bump? How is this even supposed to work officially?

AnisotropicDefixation avatar Jan 20 '17 16:01 AnisotropicDefixation

It seems Provoke, Curse and INKATKRATE all increase a separate hidden stat (not batk). That stat is used in some skill formulas but not all.

It's really complex, that's why I couldn't fix it myself.

My test results:

"These status changes also don't change Spiral Pierce damage (when used by mobs it uses base attack). For example Strength Tarot Card would half Seyren's normal damage but Spiral Pierce damage is still the same."

"It gets really complicated. Shield Boomerang is not affected by the bonus, but Smite (Shield Chain) is..."

The damage increase / decrease is also generally quite different from officials, at least on rAthena. For example:

Base damage = 65 (no weapon) Curse = 43 Provoke Level 10 = 88 Curse + Provoke Level 10 = 65

So even though Provoke Level 10 is supposed to increase ATK by 32%, the increase in damage is significantly less.

Curse supposedly should only reduce it by 25%, but it is almost the same as Provoke. Also both seem to neutralize each other exactly back to the original damage.

Playtester avatar Jan 20 '17 18:01 Playtester

I assumed it would just use SP_ADDRACE's implementation or something similar, which would explain it not affecting spiral pierce and shield boomerang, but asura also? Someone with access to aegis files should check it up.

AnisotropicDefixation avatar Jan 20 '17 19:01 AnisotropicDefixation

I figured this out and fixed it on rAthena in the meantime (at least for pre-re).

Basically there is a hidden stat called "ATKpercent". Several status changes don't change batk/watk, but instead have a diretc impact on ATKPercent.

mrj actually posted a full list of skill that affect ATKpercent on rAthena forums a long time ago: https://rathena.org/board/topic/112343-various-status-effects-off-from-officials-and-info-from-aegis/#comment-341663

So basically ATKpercent starts at 100 and is then modified by these status changes linearly (+32 and -25 = +7). ATKpercent cannot go below 0 (the last status change will then have a weaker effect to only reduce it to 0).

In Pre-Renewal, ATKpercent is multiplied with the base damage after the skillratio was applied, but before DEF reductions. In Renewal, "ATKpercent-100" is added to the skillratio (e.g. if ATKpercent is 200 a normal attack will deal 200% damage, but a skill that does 500% will then deal 600% damage).

ATKpercent applies to normal attacks and all skills that don't deal "Direct Damage". It's pretty much exactly the same list of skills that apply refine, passive mastery, Star Crumbs and Spirit Spheres to the damage. If a non-player has ATKpercent, it always applies, regardless of skill used.

There are only two exceptions: Grand Cross and Spiral Pierce do consider the refine bonus. And Spiral Pierce also consideres Star Crumbs additionally.

Pre-renewal skills that completely ignore ATKpercent are all non-weapon skills and the following weapon skills: PA_SHIELDCHAIN, CR_SHIELDBOOMERANG, AM_ACIDTERROR, MO_INVESTIGATE, MO_EXTREMITYFIST and PA_SACRIFICE. (Note: I only tested skills defined as "weapon" in rAthena. Herc sometimes has different damage types defined so if something is "Misc" on rA but "Weapon" in Herc, you'd need to check that additionally.)

Since I'm currently doing a major pre-renewal damage rework to make damage identical to Aegis, there isn't really just one commit I can link that fixes it all, but the initial ATKpercent implementation is here: https://github.com/rathena/rathena/commit/4247bc50c52a605397508a6b6a3e9bb3a659f591

Playtester avatar Apr 15 '24 06:04 Playtester

@Playtester thank you for the info.

kyeme avatar Apr 15 '24 07:04 kyeme

I have ATK, Def, Mdef and MATK DEF percent implemented according to the official server software since 2021. And it already went through fixes due to testing by my playerbase.

Will share ~~this year. Remind me if I forget~~.

skyleo avatar Apr 15 '24 15:04 skyleo