1. The $1- identifier in ON TEXT contains all the parameters from $1 through the end of the line. You can verify what is in these variables by inserting debug messages within the script like:

echo $chan nick $nick debug: 1- is: $1-

2. Yes, (subscribed isin $1-) is the same thing as searching for wildcard *subscribed* within the $1- string. This is not searching for a whole word, so this would also match a line containing unsubscribed.

If it's possible for nick twitchnotify to say the word unsubscribed, and if the word subscribed is never touching anything besides a space, you can match only the whole word subscribed with:

on *:text:*:#CHANNELNAME: { 
if ($istok($1-,subscribed,32)) && ($nick == twitchnotify) msg # Wooo! SUB HYPE!!! Nice one !!! INSERT EMOTES HERE 

32 is ASCII number of the space character, so $istok is looking for an exact match of the entire space-delimited word.

3. Inside the TEXT event, $chan and # both mean the same thing, and refers to the channel where the TEXT event happened. In the top line of the event where :#CHANNELNAME: is located, that decides which channels will cause this code to be triggered. If you changed that to :#: it would respond to all channels.