What you pasted as a script could not possibly do what you said it did. The coding you have for reacting to !view does nothing except create the local variable named %nick but then doesn't do anything with it. Instead you have the !desc showing the profile.

One problem I see is that you must not have the color code touching $nick or any other identifier. You can be warned of this by going to the options menu of the remote script editor and enabling "identifier warning" which will change the behavior from $no-such-identifier being $null, into instead halting the script with an error telling you which line.

It's harmless to have info $+ .ini instead of info.ini, but it makes the script do a little extra work, and makes it a little harder to read.

When you have a script that doesn't do what you want, one thing that's of big help is to include the -s switch when setting /var so you can see if that line is reached, and if so what value is being set. Or, something echoed to the status window, with enough info so you can find it later to take it out:

echo 4 -s debug: line $scriptline script $script (1-) $1- nick: %nick etc