Maybe it should result useful if I post what I found...
It's RGSS core scripts' fault.
Game_Battler 3, line 120.
hit *= user.hit/100
This means that if user.hit < 100, user.hit/100 will result in 0 (Amazing but true and tested! Divisions between integers result in zero if the dividend is lesser than the divisor, and user.hit is
an integer! So, e.g.
95/100 = 0 in every programming language!)
Two ways to fix this horror:
1. replace line 120 with this:
hit = hit * user.hit/100
or with this
And the problem is fixed.
Basic variables operation
100.0 is treated as a float and 95/100.0 is equal to 0.95
This post has been edited by Jens of Zanicuud: Jan 22 2012, 06:21 AM