View Single Post
  #2  
Old 11-05-2012, 11:28 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

I haven't followed it back to the database yet, but a shot in the dark says this is a problem...

[bots.cpp:oClassAttacks()]
Code:
if(skill_to_use == FRENZY)
	{
		int AtkRounds = 3;
		int skillmod = 100*GetSkill(FRENZY)/MaxSkill(FRENZY);
		sint32 max_dmg = (26 +  ((((GetLevel()-6) * 2)*skillmod)/100))  * ((100+RuleI(Combat, FrenzyBonus))/100);
		sint32 min_dmg = 0;
		DoAnim(anim2HSlashing);
int skillmod = 100*GetSkill(FRENZY)/MaxSkill(FRENZY) could be giving a 'divbyzero' error.

If anyone can look this up, the 'FRENZY' skill id is 74..I'm not near a database atm...


here is the reference code for 'MaxSkill':
Code:
uint16 SharedDatabase::GetSkillCap(int8 Class_, SkillType Skill, int8 Level) {
	if(Class_ == 0)
		return(0);
	int SkillMaxLevel = RuleI(Character, SkillCapMaxLevel);
	if (SkillMaxLevel < 1) {
		SkillMaxLevel = RuleI(Character, MaxLevel);
	}
	if(Level > SkillMaxLevel){
		return EMuShareMemDLL.SkillCaps.GetSkillCap(Class_-1, Skill, SkillMaxLevel);
	}
	else{
		return EMuShareMemDLL.SkillCaps.GetSkillCap(Class_-1, Skill, Level);
	}
}

Trackye: try leveling to 2(..3..4...) and see if this bot still crashes zone.
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote