If you change SpellMysticSurge.CAS to the following, it will no longer be exploitable/game disrupting with permanent changes such as adamantium weapon, etc. It also adds a few more changes so tweak it how you want. This is the one I'm currently using and I'm finding it better than the stock one.
: Input - TU is the target unit's ID :
LOOP {
R=RND(33)+1;
: Bad
:
if (R=1) THEN { SETCOMBATENCHANTMENTFLAG TU,EncStasisCombat,ABase,1; }
if (R=2) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWarpAttack,ABase,1; }
if (R=3) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWarpDefense,ABase,1; }
if (R=4) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWarpResist,ABase,1; }
if (R=5) THEN { SETCOMBATENCHANTMENTFLAG TU,EncShatter,ABase,1; }
if (R=6) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWeakness,ABase,1; }
if (R=7) THEN { SETCOMBATENCHANTMENTFLAG TU,EncMindStorm,ABase,1; }
: Good
:
if (R=8) THEN { SETCOMBATENCHANTMENTFLAG TU,EncDiscipline,ABase,1; }
if (R=9) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHaste,ABase,1; }
if (R=10) THEN { SETCOMBATENCHANTMENTFLAG TU,EncResistElements,ABase,1; }
if (R=11) THEN { SETCOMBATENCHANTMENTFLAG TU,EncLandLink,ABase,1; }
if (R=12) THEN { SETCOMBATENCHANTMENTFLAG TU,EncElementalArmor,ABase,1; }
if (R=13) THEN { SETCOMBATENCHANTMENTFLAG TU,EncIronSkin,ABase,1; }
if (R=14) THEN { SETCOMBATENCHANTMENTFLAG TU,EncRegeneration,ABase,1; }
if (R=15) THEN { SETCOMBATENCHANTMENTFLAG TU,EncResistMagic,ABase,1; }
if (R=16) THEN { SETCOMBATENCHANTMENTFLAG TU,EncGuardianWind,ABase,1; }
if (R=17) THEN { SETCOMBATENCHANTMENTFLAG TU,EncSpellLock,ABase,1; }
if (R=18) THEN { SETCOMBATENCHANTMENTFLAG TU,EncFlight,ABase,1; }
if (R=19) THEN { SETCOMBATENCHANTMENTFLAG TU,EncMagicImmunity,ABase,1; }
if (R=20) THEN { SETCOMBATENCHANTMENTFLAG TU,EncFlameBlade,ABase,1; }
if (R=21) THEN { SETCOMBATENCHANTMENTFLAG TU,EncImmolation,ABase,1; }
if (R=22) THEN { SETCOMBATENCHANTMENTFLAG TU,EncEndurance,ABase,1; }
if (R=23) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHolyArmor,ABase,1; }
if (R=24) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHolyWeapon,ABase,1; }
if (R=25) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHeroism,ABase,1; }
if (R=26) THEN { SETCOMBATENCHANTMENTFLAG TU,EncTrueSight,ABase,1; }
if (R=27) THEN { SETCOMBATENCHANTMENTFLAG TU,EncLionHeart,ABase,1; }
if (R=28) THEN { SETCOMBATENCHANTMENTFLAG TU,EncInvulnerability,ABase,1; }
if (R=29) THEN { SETCOMBATENCHANTMENTFLAG TU,EncCloakofFear,ABase,1; }
if (R=30) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWraithForm,ABase,1; }
if (R=31) THEN { SETCOMBATENCHANTMENTFLAG TU,EncInvisibility,ABase,1; }
if (R=32) THEN { SETCOMBATENCHANTMENTFLAG TU,EncFocusMagic,ABase,1; }
if (R=33) THEN { SETCOMBATENCHANTMENTFLAG TU,EncBless,ABase,1; }
} ENDLP (RND(100)>=70);
SETCOMBATENCHANTMENTFLAG TU,EncNoHeal,ABase,1;
: Input - TU is the target unit's ID :
LOOP {
R=RND(33)+1;
: Bad
:
if (R=1) THEN { SETCOMBATENCHANTMENTFLAG TU,EncStasisCombat,ABase,1; }
if (R=2) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWarpAttack,ABase,1; }
if (R=3) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWarpDefense,ABase,1; }
if (R=4) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWarpResist,ABase,1; }
if (R=5) THEN { SETCOMBATENCHANTMENTFLAG TU,EncShatter,ABase,1; }
if (R=6) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWeakness,ABase,1; }
if (R=7) THEN { SETCOMBATENCHANTMENTFLAG TU,EncMindStorm,ABase,1; }
: Good
:
if (R=8) THEN { SETCOMBATENCHANTMENTFLAG TU,EncDiscipline,ABase,1; }
if (R=9) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHaste,ABase,1; }
if (R=10) THEN { SETCOMBATENCHANTMENTFLAG TU,EncResistElements,ABase,1; }
if (R=11) THEN { SETCOMBATENCHANTMENTFLAG TU,EncLandLink,ABase,1; }
if (R=12) THEN { SETCOMBATENCHANTMENTFLAG TU,EncElementalArmor,ABase,1; }
if (R=13) THEN { SETCOMBATENCHANTMENTFLAG TU,EncIronSkin,ABase,1; }
if (R=14) THEN { SETCOMBATENCHANTMENTFLAG TU,EncRegeneration,ABase,1; }
if (R=15) THEN { SETCOMBATENCHANTMENTFLAG TU,EncResistMagic,ABase,1; }
if (R=16) THEN { SETCOMBATENCHANTMENTFLAG TU,EncGuardianWind,ABase,1; }
if (R=17) THEN { SETCOMBATENCHANTMENTFLAG TU,EncSpellLock,ABase,1; }
if (R=18) THEN { SETCOMBATENCHANTMENTFLAG TU,EncFlight,ABase,1; }
if (R=19) THEN { SETCOMBATENCHANTMENTFLAG TU,EncMagicImmunity,ABase,1; }
if (R=20) THEN { SETCOMBATENCHANTMENTFLAG TU,EncFlameBlade,ABase,1; }
if (R=21) THEN { SETCOMBATENCHANTMENTFLAG TU,EncImmolation,ABase,1; }
if (R=22) THEN { SETCOMBATENCHANTMENTFLAG TU,EncEndurance,ABase,1; }
if (R=23) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHolyArmor,ABase,1; }
if (R=24) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHolyWeapon,ABase,1; }
if (R=25) THEN { SETCOMBATENCHANTMENTFLAG TU,EncHeroism,ABase,1; }
if (R=26) THEN { SETCOMBATENCHANTMENTFLAG TU,EncTrueSight,ABase,1; }
if (R=27) THEN { SETCOMBATENCHANTMENTFLAG TU,EncLionHeart,ABase,1; }
if (R=28) THEN { SETCOMBATENCHANTMENTFLAG TU,EncInvulnerability,ABase,1; }
if (R=29) THEN { SETCOMBATENCHANTMENTFLAG TU,EncCloakofFear,ABase,1; }
if (R=30) THEN { SETCOMBATENCHANTMENTFLAG TU,EncWraithForm,ABase,1; }
if (R=31) THEN { SETCOMBATENCHANTMENTFLAG TU,EncInvisibility,ABase,1; }
if (R=32) THEN { SETCOMBATENCHANTMENTFLAG TU,EncFocusMagic,ABase,1; }
if (R=33) THEN { SETCOMBATENCHANTMENTFLAG TU,EncBless,ABase,1; }
} ENDLP (RND(100)>=70);
SETCOMBATENCHANTMENTFLAG TU,EncNoHeal,ABase,1;
