People would have to make 'load' and 'unload' scripts for all of their Add-Ons - things like Team Deathmatch cannot be deactivated easily during the game as they overwrite many game functions.
You'd end up with lots of problems for advanced mods that actually change gameplay being activated and deactivated. Packaged functions (That overwrite parts of other functions but keeping the 'original' code for it) are very unpredictable in Torque and will not work right when activating and deactivating lots of things at once: (Put each of these lines into the console, in order)
function showMsg(){echo("Hi.");}
package one{function showMsg(){echo("ONE");Parent::showMsg();}};
package two{function showMsg(){echo("TWO");Parent::showMsg();}};
activatePackage(one);showMsg();
It should say 'ONE' and then 'Hi.' on the next line.
activatePackage(two);showMsg();
It should say 'TWO', 'ONE' and then 'Hi.'.
deactivatePackage(one);showMsg();
It only says 'Hi.'. Even though you haven't deactivated two, deactivating packages 'before' others will stop the ones activated after it from working.
This could cause a problem: If a minigame 'Hide Names' script overwrites the player spawn functions and then Team Deathmatch overwrites the same ones (for uniforms, say), deactivating Hide Names will stop Team Deathmatch from working even though you haven't disabled that.