If it is a stock v2 script in the global_func.php file there is a function called "check_level()" replace that with: (this will stop the increase in Energy for every Level gained.)
function check_level()
{
global $db;
global $ir,$c,$userid;
$ir['exp_needed']=(int) (($ir['level']+1)*($ir['level']+1)*($ir['level']+1)*2.2);
if($ir['exp'] >= $ir['exp_needed'])
{
$expu=$ir['exp']-$ir['exp_needed'];
$ir['level']+=1;
$ir['exp']=$expu;
$ir['brave']+=2;
$ir['maxbrave']+=2;
$ir['hp']+=50;
$ir['maxhp']+=50;
$ir['exp_needed']=(int) (($ir['level']+1)*($ir['level']+1)*($ir['level']+1)*2.2);
$db->query("UPDATE users SET level=level+1,exp=$expu,brave=brave+2,maxbrave=maxbrave+2,hp=hp+50,maxhp=maxhp+50 where userid=$userid");
}
}
*for some reason when displaying the code there is a space in the maxbrave; that shouldn't be there...
As for the gym; post up the script and one of us will be able to help :)