Online,
Thank you, that indeed did the trick.
I am curious now though. I previously had the same problem, but rather than a dialog it would just send a notice to the currently active window. I used the exact same principal to display it, in fact the code is still in, that is the dispcur alias from my snipet.
I was able to remedy it merely by adding the timer, then call the alias.
I never thought to try creating an alias for the dialog and calling it like the other, will try that now.
Dont understand why one would work, and the other wouldn't.
Here is the code, maybe you can enlighten me

on *:MP3END: {
.timermp3ended 1 3 dispcur
if ($dialog(lilmp3).active == $true) .timerupddia 1 3 did -i lilmp3 200 1 $!left($nopath($insong.fname),-4)
}
alias dispcur {
if ($insong == $true) {
echo -am 14MP³ 4» 14Now 14Listening To: 12•—{15 $left($nopath($insong.fname),-4) 12}—•
}
}
My original error was I was using MP3END to post the next song, not realising that $insong.fname would be $null at that particular time, hence the need for the timer/alias.
As you can see I use the same identifiers to display, and the /notice one would work, while the dialog wouldnt (without $!left).
EDIT: reformatted to better fit the forum.