Dump that pointless version check stuff and just add these alas's (i not you said your _noqt is ment to be different, so you obviously need to keep that, but this gets you $qt and $noqt)
alias qt { if ($isid) { return $+($iif($left($1,1) != ","),$1,$iif($right($1,1) != ",")) } }
alias noqt { if ($isid) { return $+($iif($left($1,1) != ",$v1),$left($right($1,-1),-1),$iif($right($1,1) != ",$v1)) } }
Now if you happen to be running a version or mirc with out these well here hey are!
And if your running a version of mirc with these identifiers well who cares, internal identifiers override custom ones so these never get called.
* These do have one small drawback, in that multiple consecutive and leading/trailing spaces passed in a string well be lost, but this is a generic drawback with all custom identifiers.
As to why there not working in your code, i notic the scroll bar on the code is a long way dwn the page, it might be a bracket miss match, which under some conditions can seem to slip through the [{}] button, but I would hazzard a guess it might also be a #group command and the group is switched off.
There is an interesting odity in that if you have a group off in the script editor and the script is running and switches the group on (in a remote event say), and then you save the mrc file its off again, becuase in the script editor it doesnt update when the script turned it on, now if you are using some variable to tell your scrpt if script parts that are in groups are enabled or not and thus can or cant be called, rather than checking if the groups enabled then that var can be set to group enabled, while the group isnt, causing just such errors, i myself have fallen to this problem several times, i now use a custom identifier to return group states as true or false by testing them (im sure it puts heaps more tasking on but well to bad!)