EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Bug Reports (https://www.eqemulator.org/forums/forumdisplay.php?f=591)
-   -   Proc rates (https://www.eqemulator.org/forums/showthread.php?t=20414)

Muuss 04-24-2006 01:10 AM

Proc rates
 
I m posting this that follows a serious and passionated debate on PEQ's forums. I didnt posted there since Ylosh suggested and identified the problem (for some other reasons too, linked to my own person safety lol).

zone/attack.cpp

Code:

float Mob::GetProcChances(float &ProcBonus, float &ProcChance) {
        int mydex = GetDEX();
        ProcBonus = 0;
        if(IsClient()) {
                //increases based off 1 guys observed results.
                switch(CastToClient()->GetAA(aaWeaponAffinity)) {
                        case 1:
                                ProcBonus += 0.05f;
                                break;
                        case 2:
                                ProcBonus += 0.10f;
                                break;
                        case 3:
                                ProcBonus += 0.15f;
                                break;
                        case 4:
                                ProcBonus += 0.20f;
                                break;
                        case 5:
                                ProcBonus += 0.25f;
                                break;
                }
        }
        ProcBonus += float(itembonuses.ProcChance + spellbonuses.ProcChance) / 1000.0f;

        ProcChance = float(mydex) / 3020.0f + ProcBonus;
        mlog(COMBAT__PROCS, "Proc chance %.2f (%.2f from bonuses)", ProcChance, ProcBonus);
        return ProcChance;
}

What's coded is : we calculate the chance to proc like it should be, and ADD 5 to 25% to the total, which can gives values up to 30/35%
Imho, this is a misinterpretation of the AA, which is that we have to increase the chance of 5 to 25%. IE, if you got 5% chances, with WA, it should be between 5.25 to 6.25 (5*5%/25%), not 5+(5%/25%).

Code:

        ProcChance = (float(mydex) / 3020.0f ) *  (1.0f+ProcBonus));
with a dex of 255 and WA 5 (nothing from spells nor items),

the first formula gives : 255/3020+25=33,44% (Ylosh got such values with mlog)
the second one gives : (255/3020)*1.25=10.55%

Even the second formula is high compared to live, due probably to the dex/3020 which is perhaps not the right formula (it could be scaled and not linear).

Muuss 05-15-2006 06:36 PM

Proc rates are working better now.
Althought, i wonder if they are really working like they should with weapon that have proc rate modifiers, like the summoned cleric hammers (lvl 58 one for example). A lvl 65 cleric, with around 130 dex procs on each swing, hit or miss.


All times are GMT -4. The time now is 12:05 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.