The formula emu uses is from the safehouse i think... That formula was derived from log parses on relatively low DMG weapons (highest rogue usable normal rogue piercer is 16 (bloodbath)) which is why it's not accurate for the higher up damage weapons..
fool around with these lines in attack.cpp and recompile the zone server if you want to change it
Code:
skillmodifier = (float)bs_skill/25.0; //formula's from [url]www.thesafehouse.org[/url]
// formula is (weapon damage * 2) + 1 + (level - 25)/3 + (strength+skill)/100
max_hit = (sint32)(((float)primaryweapon->common.damage * 2.0) + 1.0 + ((level - 25)/3.0) + ((GetSTR()+GetSkill(0x08))/100));
max_hit = max_hit * skillmodifier;