Based on the last error in server syserr , I came to the conclusion that the problem is precisely here
else if (IS_SET(pkSk->dwFlag, SKILL_FLAG_USE_ARROW_DAMAGE))
{
LPITEM pkBow, pkArrow;
if (1 == GetArrowAndBow(&pkBow, &pkArrow, 1))
{
pkSk->SetPointVar("atk", CalcArrowDamage(this, this, pkBow, pkArrow, true)); // this line is the problem
}
else
{
pkSk->SetPointVar("atk", 0);
}
}
but i don't know why it's make a core
pkSk->SetPointVar("atk", CalcArrowDamage(this, this, pkBow, pkArrow, true));
It seems logical
Chanel Syserr
SYSERR: Aug 6 13:13:07 :: CalcMeleeDamage: CalcMeleeDamage should not handle bows (name: xABOLOMA1)
SYSERR: Aug 6 13:15:19 :: operator(): CFuncShoot: I don't know this type [255] of range attack.
SYSERR: Aug 6 13:17:58 :: Select: wrong QUEST_SELECT request! : 5475
SYSERR: Aug 6 13:21:49 :: operator(): CFuncShoot: I don't know this type [255] of range attack.