Thread: Miscellaneous: Nerf Bowquest 99
View Single Post
  #38  
Old 01-14-2026, 11:38 PM
Botten Botten is offline
Planar Protector

Botten's Avatar

Join Date: Jul 2011
Posts: 2,984
Default

Just adding something I found. P.S. I don't know if it even fits P99 code

Code:
// Logic that causes Bowquest
if (Hand == 13) { // 13 is the internal constant for the Primary Hand
    int damage_bonus = GetWeaponDamageBonus(primary_weapon); 
    min_hit += damage_bonus;
    max_hit += damage_bonus;
}

Code:
// The Fix: Specifically checking for Archery
if (skill == ARCHERY) {
    // Instead of looking at Hand 13 (Primary), we look at Slot 22 (Range)
    ItemInst* archery_weapon = GetInv().GetItem(slotRange);
    
    if (archery_weapon) {
        // Apply the specific Archery Damage Bonus formula 
        // derived from the bow's delay, NOT the primary weapon's delay.
        int bow_bonus = CalculateArcheryBonus(archery_weapon->GetItem()->Delay);
        min_hit += bow_bonus;
        max_hit += bow_bonus;
    }
} else if (Hand == 13) {
    // Standard Melee logic for Primary hand...
    int damage_bonus = GetWeaponDamageBonus(primary_weapon);
    // ...
}
please ignore this all if way off.
Edit this would be for the attack.cpp file
Last edited by Botten; 01-14-2026 at 11:40 PM..
Reply With Quote