sub R1(VAL){return int(rand(VAL));}
sub R2(VAL){return int((R1(VAL^2))^0.5);}
sub R3(VAL){return (VAL-R2(VAL));}
## int(X)→Xを小数点以下切り捨て
## rand(X)→0〜Xの範囲の乱数
## X^Y→XのY乗


## 加害者攻撃力:ATK_DMG
## 被害者防御力:DEF_DMG
## 加害者素早さ:ATK_SPD
## 被害者残HP:DEF_HP
## 経過ターン数:FIG_TRN

(中略)
TMP_DMG = R2(ATK_DMG)-R3(DEF_DMG);
if ((R2(ATK_SPD+FIG_TRN) >= R3(DEF_SPD)) && (TMP_DMG > 0))
 {DEF_HP = DEF_HP - TMP_DMG;}

理解できるよな