it will only spawn
if ($@ran == 8) set .MVPID,"1511";
if ($@ran == 7) set .MVPID,"1647";
if ($@ran == 6) set .MVPID,"1785";
if ($@ran == 5) set .MVPID,"1630";
if ($@ran == 4) set .MVPID,"1039";
if ($@ran == 3) set .MVPID,"1874";
if ($@ran == 2) set .MVPID,"1272";
if ($@ran == 1) set .MVPID,"1719";
these, even when you fix ".MVPID" to ".MVPID$".
reason - you're checking $@ran (rand(1,8))after assigning $@ran2(rand (1,30))
P.S. why not .@rand anyway?