int char_damroll( CHAR_DATA *ch )
{
int dr = GET_DAMROLL(ch);
int min;
if (!IS_NPC(ch))
{
if (IS_CLASS(ch,CLASS_VAMPIRE) && ch->pcdata->stats[UNI_RAGE] > 0)
dr += ch->pcdata->stats[UNI_RAGE];
else if (IS_CLASS(ch, CLASS_NINJA) && ch->pcdata->stats[UNI_RAGE] > 0)
dr += ch->pcdata->stats[UNI_RAGE];
else if (IS_CLASS(ch, CLASS_PALADIN))
{
dr += 25;
}
else if (IS_SET(ch->special,SPC_WOLFMAN) && ch->pcdata->stats[UNI_RAGE] > 0)
dr += ch->pcdata->stats[UNI_RAGE] * 1.5;
else if (IS_CLASS( ch,CLASS_DEMON ) && ch->pcdata->stats[DEMON_POWER] > 0)
dr += ((ch->pcdata->stats[DEMON_POWER]) * ch->pcdata->stats[DEMON_POWER]);
if (IS_SET(ch->special,SPC_CHAMPION) && ch->pcdata->stats[DEMON_POWER] > 0)
dr += ((ch->pcdata->stats[DEMON_POWER]) * ch->pcdata->stats[DEMON_POWER]);
if (ch->hit < ch->max_hit && !IS_SET(ch->newbits, NEW_NOPAIN))
{
return dr;
min = dr * 0.75;
if (ch->hit < 1 || ch->max_hit < 1)
dr *= 0.75;
else
{
dr = dr * ch->hit / ch->max_hit;
if (dr < min) dr = min;
}
}
if (IS_CLASS(ch, CLASS_NINJA) && ch->pcdata->powers[NPOWER_CHIKYU] >= 6
&& ch->pcdata->powers[HARA_KIRI] > 0)
dr += 50;
if (IS_CLASS(ch, CLASS_HIGHLANDER) && (get_eq_char(ch, WEAR_WIELD) != NULL))
{
int wpn = ch->wpn[1];
if (wpn >= 500)
dr += 500;
else
dr += wpn;
}
if (IS_SET(ch->hforms,HFORM_KENSAI))
dr += 500;
if (IS_SET(ch->hforms,HFORM_BATTLEFORM))
dr += 250;
if (IS_CLASS(ch, CLASS_DROW) && IS_POLYAFF(ch,POLY_SPIDERFORM))
dr += 250;
if (IS_DEMPOWER(ch,DEM_FORM) && IS_CLASS(ch,CLASS_DEMON))
{
if (IS_POLYAFF(ch,POLY_ZULO))
{
dr += 300;
}
}
else if (IS_POLYAFF(ch, POLY_ZULO))
dr += 300;
}
return dr;
}
if (IS_DEMPOWER(ch,DEM_FORM) && IS_CLASS(ch,CLASS_DEMON))
{
if (IS_POLYAFF(ch,POLY_ZULO))
{
hr += 300;
}
}
#define IS_DEMPOWER(ch, sn) (IS_SET((ch)->pcdata->powers[DPOWER_FLAGS], (sn)))
#define IS_POLYAFF(ch, sn) (IS_SET((ch)->polyaff, (sn)))
if (ch->hit < ch->max_hit && !IS_SET(ch->newbits, NEW_NOPAIN))
{
return dr;
min = dr * 0.75;
if (ch->hit < 1 || ch->max_hit < 1)
dr *= 0.75;
else
{
dr = dr * ch->hit / ch->max_hit;
if (dr < min) dr = min;
}
}
that's the end of int char_damroll in act_info.c I changed it from the way it was in stock in an attempt to fix the problem but wound up with the same results. If anybody has any insight into this I'd appreciate all the help I can get. I'm running godwars/low4.