Well I do see a way that I may be able to make this work for me, it will just take a little more effort. First of all, my map includes one hero for each player. Players also have other units, but only one hero. What I am trying to use this for is if a unit uses a certain item (its a space map with marines; they can get assault rifles, shotguns, etc) it changes their attack rate, attack range, damage, etc. I have alot of different hero's, and it would take up too much time and space to make a whole bunch of separate units for each weapon.
I could make separate units for each weapon for the non-hero units, and that would solve half the problem. For hero's, I could use the upgrade (since each player has only one hero), but that upgrade would have to be reversible. Is it possible to reverse an upgrade like this?