.@r = getrefine();
.@b = readparam(bDex)/10;
if (BaseClass == Job_Novice) {
   bonus bMaxHP,300+(200*.@r);
   bonus bMaxSP,300+(20*.@r);
   bonus bBaseAtk,100;
   bonus bMatk,150+(15*.@r);
   bonus bUseSPrate,-5;
   bonus bUnbreakableWeapon;
   bonus bInt,2*.@r;
   bonus bDex,(2*.@r)-(.@r*.@b);
   bonus bCritical,7*.@r;
   bonus bAspdRate,10*.@r;
   bonus bCritAtkRate,1*.@r;
}
if (BaseClass == Job_Thief) {
   bonus bMaxSP,100;
   bonus bMatk,150;
   bonus bCritAtkRate,.@r;
}
if (BaseClass == Job_Mage) {
   bonus bMaxHP,200*.@r;
   bonus bMaxSP,20*.@r;
}
if (BaseJob == Job_Hunter) {
   bonus bMaxHP,200;
   bonus bUseSPrate,-5;
   bonus bInt,2*.@r;
   bonus bDex,2*.@r;
}
if (BaseJob == Job_Bard || BaseJob == Job_Dancer) {
   bonus bBaseAtk,100;
   bonus bAspdRate,10*.@r;
   bonus bUnbreakableWeapon;
   bonus bDex,-1*(.@r*.@b);
}
if (.@r>=7 && (BaseClass == Job_Novice || BaseJob == Job_Mage)) {
   bonus2 bSubRace,RC_DemiHuman,10;
}