I've noticed that some of VX script is missing little things here and there myself. For example, in lines 840-841 of the Game_interpreter, it looks like this:
when 3 # Mul
$game_variables[i] = value
when it should look like thisL
when 3 # Mul
$game_variables[i] *= value
I think the problem is coming from somewhere in line 750 to 775
def command_122
value = 0
case @params[3] # Operand
when 0 # Constant
value = @params[4]
when 1 # Variable
value = $game_variables[@params[4]]
when 2 # Random
value = @params[4] + rand(@params[5] - @params[4] + 1)
when 3 # Item
value = $game_party.item_number($data_items[@params[4]])
actor = $game_actors[@parameters[1]]
actor = $game_actors[@params[4]]
if actor != nil
case @params[5]
when 0 # Level
value = actor.level
when 1 # Experience
value = actor.exp
when 2 # HP
value = actor.hp
when 3 # MP
value = actor.mp
when 4 # Maximum HP
value = actor.maxhp
when 5 # Maximum MP
value = actor.maxmp
when 6 # Attack
value = actor.atk
when 7 # Defense
value = actor.def
when 8 # Spirit
value = actor.spi
when 9 # Agility
value = actor.agi
end
end
You had a similar problem with variables not taking # of items in possession, and I believe it stems from the same problem with the code in that area. Using the script change that Modern algebra posted in this thread,
http://rmrk.net/index.php/topic,25049.0.html, the problem isn't happening between a brand new project and an old project that I have been running with his updated script.