.@r = getrefine();
.@hpsp = 3;
.@a = getskilllv("GC_WEAPONCRUSH");
.@b = getskilllv("GC_WEAPONBLOCKING");
.@c = getskilllv("GC_COUNTERSLASH");
if (.@r >= 5) {
   .@hpsp += 7;
   .@dmg = BaseLevel;
   if (.@r >= 7) {
      .@hpsp += 10;
      .@dmg += BaseLevel + 30*getskilllv("AS_POISONREACT");
   }
   bonus2 bSkillAtk,"ASC_METEORASSAULT",.@dmg;
}
bonus bMaxHPrate,.@hpsp;
bonus bMaxSPrate,.@hpsp;
bonus bMdef,10;
skill "BS_MAXIMIZE",1;
bonus2 bSkillUseSP,"ASC_METEORASSAULT",8;
bonus2 bAddClass,Class_All,4*.@a;
bonus2 bSkillCooldown,"GC_HALLUCINATIONWALK",-5000*.@b;
bonus2 bIgnoreDefRaceRate,RC_All,20*.@c;
bonus2 bVariableCastrate,"ASC_METEORASSAULT",-7*(.@a+.@b+.@c);