You're wrong, which is ok, it's not a crime to make a mistake, though I don't like it when people say I'm wrong without investigating the matter thoroughly. I wouldn't put it like that if it weren't for a reason.
Try this code in your script files:
on me:join:#: echo -a i've joined
Now do a /hop or join a channel --> nothing happens.
Put it as:
on me:*:join:#: echo -a i've joined
Now do a /hop and it will say you've joined.
The me as I've used it, and as Sat has explained is an event prefix just like +, @, ! etc., it's not a user level.