well it seems the hp caculation is not working.. its fine on low lvl chars and such but when i loaded up a monk lvl 75 with 760 aa's it is like 1k off anyone know y? do monks get a hp bonus at higher lvls or something? im checking for all the aas that give hp im pritty sure.. here is my hp code.
Code:
$hp = MaxHP($class, $level, $sta, $itemHP);
function LevelFactor($class, $level){
$multiplier = 0;
$mlevel=$level;
switch($class)
{
case '1':{
if ($mlevel < 20)
$multiplier = 220;
else if ($mlevel < 30)
$multiplier = 230;
else if ($mlevel < 40)
$multiplier = 250;
else if ($mlevel < 53)
$multiplier = 270;
else if ($mlevel < 57)
$multiplier = 280;
else if ($mlevel < 60)
$multiplier = 290;
else if ($mlevel < 70)
$multiplier = 300;
else
$multiplier = 311;
break;
}
case '6':
case '2':
case '10':{
if ($mlevel < 70)
$multiplier = 150;
else
$multiplier = 157;
break;
}
case '16':
case '3':
case '5':{
if ($mlevel < 35)
$multiplier = 210;
else if ($mlevel < 45)
$multiplier = 220;
else if ($mlevel < 51)
$multiplier = 230;
else if ($mlevel < 56)
$multiplier = 240;
else if ($mlevel < 60)
$multiplier = 250;
else if ($mlevel < 68)
$multiplier = 260;
else
$multiplier = 270;
break;
}
case '7':
case '8':
case '9':
case '15':{
if ($mlevel < 51)
$multiplier = 180;
else if ($mlevel < 58)
$multiplier = 190;
else if ($mlevel < 70)
$multiplier = 200;
else
$multiplier = 210;
break;
}
case '4':{
if ($mlevel < 58)
$multiplier = 200;
else if ($mlevel < 70)
$multiplier = 210;
else
$multiplier = 220;
break;
}
case '13':
case '12':
case '11':
case '14':{
if ($mlevel < 70)
$multiplier = 120;
else
$multiplier = 127;
break;
}
default:{
if ($mlevel < 35)
$multiplier = 210;
else if ($mlevel < 45)
$multiplier = 220;
else if ($mlevel < 51)
$multiplier = 230;
else if ($mlevel < 56)
$multiplier = 240;
else if ($mlevel < 60)
$multiplier = 250;
else
$multiplier = 260;
break;
}
}
return $multiplier;
}
function CalcBaseHP($class, $level, $sta)
{
$lm=LevelFactor($class, $level);
$Post255;
if(($sta-255)/2 > 0)
$Post255 = ($sta-255)/2;
else
$Post255 = 0;
$base_hp = (5)+($level*$lm/10) + ((($sta-$Post255)*$level*$lm/3000));
return $base_hp;
}
function MaxHP($class, $level, $sta, $itemHP) {
$nd = 10000;
$max_hp = (CalcBaseHP($class, $level, $sta) + $itemHP);
//The AA desc clearly says it only applies to base hp..
//but the actual effect sent on live causes the client
//to apply it to (basehp + itemhp).. I will oblige to the client's whims over
//the aa description
switch($Profile["aa_array"][107]) {
case 1:
$nd += 200;
break;
case 2:
$nd += 500;
break;
case 3:
$nd += 1000;
break;
}
if($Profile["aa_array"][279])
{
$nd += 200;
}
$nd += 150*$Profile["aa_array"][423];
if($level == 75)
{
$max_hp = $max_hp-1;
}
$max_hp = floor($max_hp * $nd / 10000);
return $max_hp;
}