$$len($$?="Enter length")
This will cause your script not to work properly. If someone enters "10" it will be: $len(10) = 2. And the double $ have no use either if I'm not mistaken.
if ($len(%nick) == $2) { $iif(%nick ison $1,kick $1 %nick $iif($3,$3-,Banned),noop) }
This will kick everyone with the exact length you entered, not the ones who have a nickname longer than it. If you want that, you should use ">=". And you could do the if %nick ison $1 check in the first if statement.
Try this:
if ($len(%nick) == $2) && (%nick ison $1) {
kick $1 %nick $iif($3,$3-,Banned)
}
Note: I did not change "==" to ">=" in this code.