and I found that the ini thing works best if I do one ini per channel
This must be because as a single INI file you had a lot of lines, but it's not a bug, it's just that INI handling is slow with mIRC script.

/noop is a commmand for doing nothing with the result, usually used with identifier which are not returning a value, but aren't given as command to preserve spaces in parameters, like $hfind, check /help /noop

on *:TEXT:!quote:#:get_quote $chan
alias $deletedmark return asdf1234,,
alias get_quote {
;as long as the quote we got is the deleted mark, we keep that loop running evaluating $findquote again to find a new quote, the body of the loop itself doesn't need to do anything
while ($findquote($1) == $deletedmark) noop
  msg $1 $v1
alias findquote {
var %file $+(F:\mIRC\quotes\quotes,$1,.ini)
return $readini(%file, n, #, $rand(1, $calc($lines(%file) - 2)))

Looking for a good help channel about mIRC? Check #mircscripting @ irc.swiftirc.net