Leather boots with mana leech chance 100 and mana leech amount 1000 working (but the client limit shows value 100);
Leather boots with mana health chance 100 and health leech amount 1000 working (but the client limit shows value 100);
Leather boots with critical hit chance 100 and critical hit amount 1000 not working? Look at this formula:
PHP:
chance = attackerPlayer->getSpecialSkill(SPECIALSKILL_CRITICALHITCHANCE);
if (chance != 0 && uniform_random(1, 100) <= chance) {
healthChange += std::round(healthChange * (attackerPlayer->getSpecialSkill(SPECIALSKILL_CRITICALHITAMOUNT) / 100.));
g_game.addMagicEffect(target->getPosition(), CONST_ME_CRITICAL_DAMAGE);
}
So, if the critical hit amount is 100 (like the client shows), the healthChange will be multipied by 1?
Im getting critical hit every attack (cause the chance is 100), but the damage values looks like normal values, I did a critical hit of 2, 4 and 6 damage in sequence with skill 21 and magic sword in an Orc Warrior.
Bug found: if I remove ability with an equiped item the special skills aren't removed.