Well, outside party or raid a "/assist Name" makro is all you can do.
If that is all you want, stay with makros. I think one to store ( /script MyAssist = UnitName("target") ) and one to assist ( /script AssistByName(MyAssist) ) would do (didn't check, i hope this are the correct commands ).
CC_MainAssist however tries to be slightly more than that. Permanently comparing the target to show you if it's still the same, so can imagine if you are actually attacking the right target.
And for all that stuff it's necessary to have a unit id and not only a name. and that you only have in party. However, i never felt the need for doing so outside a party since i started to play WoW :D
About having a assigned MA for the whole raid, like the MTs are:
I tried to do so in the past. Having the Leader broadcast the MA in the Raidchat, assigning it to the rest, etc...
In the end i never got it through, having only about 1/4 using it.
ctra became a standard that time, and everybody knew that the last MT is the one to assist (at least we did handle it that way). And those who use some extra addon did manually set it accordingly.
I basically support the idea, but i don't know if it will work :D
I'd love a lightweight version that didn't have the auto-assist feature, but the rest of the features are about perfect.
Well, i still consider it being lightweight :D
speaking of lightweight and performance:
@All: If i have something like:
if ( CheckThis() and CheckThat() ) then
And CheckThis() returns false, will CheckThat() be actually executed?
If i have something i check very often ( in some OnUpdate() function ) it'd like to arrange the commands and checks in a way so they are as quick as possible.
*) Set a MainAssist ( per console command or per hotkey )
*) Assist that person (hotkey)
*) Show a indicator on the TargetFrame (small crossed Swords) to indicate if the MA is also targeting that unit
*) AutoAssist function that tries to automatically assist the MA when you should.
First - why do you need that - or - who needs that:
Let me explain: A damagedealer that doesn't have anything else to do propably knows best himself when to assist or what to attack, so not really important for him. conveniently at most, but not important.
However, when playing my healdruid, i loose the sense for what Target should be attacked. I like to have the correct target to a) see what it's doing, b) every now and then put a spell on it or so and c) eventually heal the one who has aggro ( with CC_Target set to Target's Target and forward spells active )
It (should) work (s) like this: when your target is dead or you have no target, and the MA has a target that allready is tapped, then you assist.
If you somewhen cange to another target, then autoassist is suspended until you actively change to the MA's target again. ( so there should be no problem in doing somethng else meanwhile)
I tested the feature with my own pet as MA, sending it to the next mob before the old one dies, and it seems to work quite well. I don't eaven stop shooting when the first mob dies and the autoasssit switches to the next.