Is that last event on line 23 where variables are cleaned up meant to be on *:sockclose:
instead of sockread?
I would use $+([, $nick, ]:)
to surround $nick with brackets because you will be less likely to accidentally introduce a ] bracket somewhere. Since [ ] are eval brackets in mSL, it could potentially lead to risky code in some cases. Perhaps not for twitch, but it's one of those things that's good to get in the habit of watching out for.
Is there a reason you didn't just reply to the original thread on the mIRC forums instead of posting here? This is only half of a script; it's missing the part where user data is stored. That makes it kind of useless for anyone who views it here.
!watchnicks will easily reach Twitch spam limits if more than 20 (or 100 if the bot is a mod) nicks are in the list, causing the bot to be locked out of chat for 8 hours. There is also no flood protection limit that I can see, so even if there are only 10 users in the list somebody could use the command 2-10 times in a row to get the bot banned for 8 hours.
Since the part where points/time are increased is missing I can't tell if this tracks every viewer or just specific ones, but I would assume it tracks all viewers. The system should really use something besides an ini file to store the data, because many twitch channels are VERY large and storing everything in points.ini will eventually start causing mIRC to freeze. I guarantee this will happen much more frequently than you think. You should at least use a hash table, and perhaps set up a system that periodically either removes users after a period of inactivity or archives their data to speed up operations on the table of active users.